[DRE-commits] [ruby-rgen] 01/05: Imported Upstream version 0.7.0

Stig Sandbeck Mathisen ssm at debian.org
Tue Sep 2 14:56:57 UTC 2014


This is an automated email from the git hooks/post-receive script.

ssm pushed a commit to branch master
in repository ruby-rgen.

commit be3b4cddc5939919ca919c8ac85a6b2664efb191
Author: Stig Sandbeck Mathisen <ssm at debian.org>
Date:   Sun Aug 24 09:28:14 2014 +0200

    Imported Upstream version 0.7.0
---
 CHANGELOG                                          |    9 +
 Rakefile                                           |    2 +-
 checksums.yaml.gz                                  |  Bin 0 -> 270 bytes
 lib/rgen/ecore/ecore.rb                            |    8 +-
 lib/rgen/fragment/model_fragment.rb                |   17 +-
 lib/rgen/instantiator/ecore_xml_instantiator.rb    |    3 +-
 lib/rgen/instantiator/xmi11_instantiator.rb        |    2 +-
 lib/rgen/metamodel_builder/builder_extensions.rb   |    8 +-
 lib/rgen/metamodel_builder/builder_runtime.rb      |   75 ++
 lib/rgen/metamodel_builder/data_types.rb           |    5 +
 lib/rgen/metamodel_builder/intermediate/feature.rb |    1 +
 lib/rgen/serializer/xmi20_serializer.rb            |    1 +
 metadata.yml                                       |   16 +-
 test/metamodel_builder_test.rb                     |  283 ++++-
 test/metamodel_from_ecore_test.rb                  |   12 +
 test/metamodel_roundtrip_test.rb                   |   11 +-
 test/metamodel_roundtrip_test/TestModel.rb         |    1 +
 .../TestModel_Regenerated.rb                       |    1 +
 test/metamodel_roundtrip_test/houseMetamodel.ecore |    1 +
 .../houseMetamodel_Regenerated.ecore               |    1 +
 .../houseMetamodel_from_ecore.rb                   |    1 +
 .../using_builtin_types.ecore                      |    5 +-
 .../using_builtin_types_serialized.ecore           |    5 +-
 test/model_builder/ecore_internal.rb               |   14 +-
 test/testmodel/ea_testmodel_regenerated.xml        | 1166 ++++++++++----------
 test/xml_instantiator_test/simple_xmi_to_ecore.rb  |    2 +-
 26 files changed, 1018 insertions(+), 632 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index 7d79d2d..bac8f6d 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -186,3 +186,12 @@
 * Major performance improvement of FragmentedModel#resolve
 * Fixed a Ruby 2.0 related warning
 
+=0.7.0
+
+* Enforce unique container rule by automatically disconnecting elements from other containers
+* Added support for long typed values (ELong), thanks to Thomas Hallgren;
+  Note that this is merely an EMF compatibility thing, RGen could already handle big integers before
+* Added eContents and eAllContents methods
+* Added setNilOrRemoveGeneric and setNilOrRemoveAllGeneric methods
+* Added disconnectContainer method
+
diff --git a/Rakefile b/Rakefile
index c357ff7..5d3e9e7 100644
--- a/Rakefile
+++ b/Rakefile
@@ -3,7 +3,7 @@ require 'rdoc/task'
 
 RGenGemSpec = Gem::Specification.new do |s|
   s.name = %q{rgen}
-  s.version = "0.6.6"
+  s.version = "0.7.0"
   s.date = Time.now.strftime("%Y-%m-%d")
   s.summary = %q{Ruby Modelling and Generator Framework}
   s.email = %q{martin dot thiede at gmx de}
diff --git a/checksums.yaml.gz b/checksums.yaml.gz
new file mode 100644
index 0000000..06e0668
Binary files /dev/null and b/checksums.yaml.gz differ
diff --git a/lib/rgen/ecore/ecore.rb b/lib/rgen/ecore/ecore.rb
index 602334f..251f607 100644
--- a/lib/rgen/ecore/ecore.rb
+++ b/lib/rgen/ecore/ecore.rb
@@ -54,7 +54,7 @@ module RGen
         def defaultValue_derived
           return nil if defaultValueLiteral.nil?
           case eType
-            when EInt
+            when EInt, ELong
               defaultValueLiteral.to_i
             when EFloat
               defaultValueLiteral.to_f
@@ -81,7 +81,10 @@ module RGen
       has_attr 'instanceClassName', String
       module ClassModule
         def instanceClass_derived
-          map = {"java.lang.string" => "String", "boolean" => "RGen::MetamodelBuilder::DataTypes::Boolean", "int" => "Integer"}
+          map = {"java.lang.string" => "String", 
+                 "boolean" => "RGen::MetamodelBuilder::DataTypes::Boolean", 
+                 "int" => "Integer",
+                 "long" => "RGen::MetamodelBuilder::DataTypes::Long"}
           icn = instanceClassName
           icn = "NilClass" if icn.nil?
           icn = map[icn.downcase] if map[icn.downcase]
@@ -181,6 +184,7 @@ module RGen
     
     EString = EDataType.new(:name => "EString", :instanceClassName => "String")
     EInt = EDataType.new(:name => "EInt", :instanceClassName => "Integer")
+    ELong = EDataType.new(:name => "ELong", :instanceClassName => "Long")
     EBoolean = EDataType.new(:name => "EBoolean", :instanceClassName => "Boolean")
     EFloat = EDataType.new(:name => "EFloat", :instanceClassName => "Float")
     ERubyObject = EDataType.new(:name => "ERubyObject", :instanceClassName => "Object")
diff --git a/lib/rgen/fragment/model_fragment.rb b/lib/rgen/fragment/model_fragment.rb
index 5972f51..4e79f61 100644
--- a/lib/rgen/fragment/model_fragment.rb
+++ b/lib/rgen/fragment/model_fragment.rb
@@ -111,7 +111,7 @@ class ModelFragment
     @elements = []
     @root_elements.each do |e|
       @elements << e
-      all_child_elements(e, @elements)
+      @elements.concat(e.eAllContents)
     end
     @elements
   end
@@ -274,21 +274,6 @@ class ModelFragment
     end
   end
 
-  def all_child_elements(element, childs)
-    containment_references(element.class).each do |r|
-      element.getGenericAsArray(r.name).each do |c|
-        childs << c
-        all_child_elements(c, childs)
-      end
-    end
-  end
-
-  def containment_references(clazz)
-    @@containment_references_cache ||= {}
-    @@containment_references_cache[clazz] ||=
-      clazz.ecore.eAllReferences.select{|r| r.containment}
-  end
-
   def non_containment_references(clazz)
     @@non_containment_references_cache ||= {}
     @@non_containment_references_cache[clazz] ||= 
diff --git a/lib/rgen/instantiator/ecore_xml_instantiator.rb b/lib/rgen/instantiator/ecore_xml_instantiator.rb
index 11a7624..bc911af 100644
--- a/lib/rgen/instantiator/ecore_xml_instantiator.rb
+++ b/lib/rgen/instantiator/ecore_xml_instantiator.rb
@@ -84,7 +84,7 @@ class ECoreXMLInstantiator < AbstractXMLInstantiator
     elsif eFeat
       value = true if value == "true" && eFeat.eType == EBoolean
       value = false if value == "false" && eFeat.eType == EBoolean
-      value = value.to_i if eFeat.eType == EInt
+      value = value.to_i if eFeat.eType == EInt || eFeat.eType == ELong
       @elementstack.last.setGeneric(attr, value)
     else
       log WARN, "Feature not found: #{attr} on #{@elementstack.last}"
@@ -134,6 +134,7 @@ class ECoreXMLInstantiator < AbstractXMLInstantiator
         case $1
           when "EString";     RGen::ECore::EString
           when "EInt";        RGen::ECore::EInt
+          when "ELong";       RGen::ECore::ELong
           when "EBoolean";    RGen::ECore::EBoolean
           when "EFloat";      RGen::ECore::EFloat
           when "EJavaObject"; RGen::ECore::EJavaObject
diff --git a/lib/rgen/instantiator/xmi11_instantiator.rb b/lib/rgen/instantiator/xmi11_instantiator.rb
index 49905c3..af9657b 100644
--- a/lib/rgen/instantiator/xmi11_instantiator.rb
+++ b/lib/rgen/instantiator/xmi11_instantiator.rb
@@ -116,7 +116,7 @@ class XMI11Instantiator < AbstractXMLInstantiator
         value = map_feature_value(attr_name, value) || value
         value = true if value == "true" && eFeat.eType == EBoolean
         value = false if value == "false" && eFeat.eType == EBoolean
-        value = value.to_i if eFeat.eType == EInt
+        value = value.to_i if eFeat.eType == EInt || eFeat.eType == ELong
         value = value.to_f if eFeat.eType == EFloat
         value = value.to_sym if eFeat.eType.is_a?(EEnum)
         @elementstack.last.setGeneric(attr_name, value)
diff --git a/lib/rgen/metamodel_builder/builder_extensions.rb b/lib/rgen/metamodel_builder/builder_extensions.rb
index 3b4904f..dfa4a51 100644
--- a/lib/rgen/metamodel_builder/builder_extensions.rb
+++ b/lib/rgen/metamodel_builder/builder_extensions.rb
@@ -487,7 +487,7 @@ module BuilderExtensions
 
   def check_default_value_literal(literal, props)
     return if literal.nil? || props.impl_type == String
-    if props.impl_type == Integer
+    if props.impl_type == Integer || props.impl_type == RGen::MetamodelBuilder::DataTypes::Long
       unless literal =~ /^\d+$/
         raise StandardError.new("Property #{props.value(:name)} can not take value #{literal}, expected an Integer")
       end
@@ -510,7 +510,11 @@ module BuilderExtensions
   
   def type_check_code(varname, props)
     code = ""
-    if props.impl_type.is_a?(Class)
+    if props.impl_type == RGen::MetamodelBuilder::DataTypes::Long
+      code << "unless #{varname}.nil? || #{varname}.is_a?(Integer) || #{varname}.is_a?(MMGeneric)"
+      code << "\n"
+      expected = "Integer"
+    elsif props.impl_type.is_a?(Class)
       code << "unless #{varname}.nil? || #{varname}.is_a?(#{props.impl_type}) || #{varname}.is_a?(MMGeneric)"
       code << " || #{varname}.is_a?(BigDecimal)" if props.impl_type == Float && defined?(BigDecimal)
       code << "\n"
diff --git a/lib/rgen/metamodel_builder/builder_runtime.rb b/lib/rgen/metamodel_builder/builder_runtime.rb
index e853142..3ddbe3b 100644
--- a/lib/rgen/metamodel_builder/builder_runtime.rb
+++ b/lib/rgen/metamodel_builder/builder_runtime.rb
@@ -42,6 +42,22 @@ module BuilderRuntime
     end
   end
 
+  def setNilOrRemoveGeneric(role, value)
+    if hasManyMethods(role)
+      removeGeneric(role, value)
+    else
+      setGeneric(role, nil)
+    end
+  end
+
+  def setNilOrRemoveAllGeneric(role)
+    if hasManyMethods(role)
+      setGeneric(role, [])
+    else
+      setGeneric(role, nil)
+    end
+  end
+
 	def getGeneric(role)
 		send("get#{firstToUpper(role.to_s)}")
 	end
@@ -73,11 +89,70 @@ module BuilderRuntime
     @_containing_feature_name
   end
 
+  # returns the contained elements in no particular order
+  def eContents
+    if @_contained_elements
+      @_contained_elements.dup
+    else
+      []
+    end
+  end
+
+  # if a block is given, calls the block on every contained element in depth first order. 
+  # if the block returns :prune, recursion will stop at this point.
+  #
+  # if no block is given builds and returns a list of all contained elements.
+  #
+  def eAllContents(&block)
+    if block
+      if @_contained_elements
+        @_contained_elements.each do |e|
+          res = block.call(e)
+          e.eAllContents(&block) if res != :prune
+        end
+      end
+      nil
+    else
+      result = []
+      if @_contained_elements
+        @_contained_elements.each do |e|
+          result << e
+          result.concat(e.eAllContents)
+        end
+      end
+      result
+    end
+  end
+
+  def disconnectContainer
+    eContainer.setNilOrRemoveGeneric(eContainingFeature, self) if eContainer
+  end
+
   def _set_container(container, containing_feature_name)
+    # if a new container is set, make sure to disconnect from the old one.
+    # note that _set_container will never be called for the container and the role
+    # which are currently set because the accessor methods in BuilderExtensions
+    # block setting/adding a value which is already present.
+    # (it may be called for the same container with a different role, a different container
+    # with the same role and a different container with a different role, though)
+    # this ensures, that disconnecting for the current container doesn't break
+    # a new connection which has just been set up in the accessor methods.
+    disconnectContainer if container
+    @_container._remove_contained_element(self) if @_container
+    container._add_contained_element(self) if container
     @_container = container
     @_containing_feature_name = containing_feature_name
   end
 
+  def _add_contained_element(element)
+    @_contained_elements ||= []
+    @_contained_elements << element
+  end
+
+  def _remove_contained_element(element)
+    @_contained_elements.delete(element) if @_contained_elements
+  end
+
 	def _assignmentTypeError(target, value, expected)
 		text = ""
 		if target
diff --git a/lib/rgen/metamodel_builder/data_types.rb b/lib/rgen/metamodel_builder/data_types.rb
index 15f1db7..17268f4 100644
--- a/lib/rgen/metamodel_builder/data_types.rb
+++ b/lib/rgen/metamodel_builder/data_types.rb
@@ -65,6 +65,11 @@ module DataTypes
 	# as possible values.
 	Boolean = Enum.new(:name => "Boolean", :literals => [true, false])
 
+	# Long represents a 64-bit Integer
+  # This constant is merely a marker for keeping this information in the Ruby version of the metamodel,
+  # values of this type will always be instances of Integer or Bignum;
+  # Setting it to a string value ensures that it responds to "to_s" which is used in the metamodel generator
+	Long = "Long"
 end
 
 end
diff --git a/lib/rgen/metamodel_builder/intermediate/feature.rb b/lib/rgen/metamodel_builder/intermediate/feature.rb
index 5b72856..ed319ea 100644
--- a/lib/rgen/metamodel_builder/intermediate/feature.rb
+++ b/lib/rgen/metamodel_builder/intermediate/feature.rb
@@ -67,6 +67,7 @@ class Attribute < Feature
   Types = { 
     String => :EString,
     Integer => :EInt,
+    RGen::MetamodelBuilder::DataTypes::Long => :ELong,
     Float => :EFloat,
     RGen::MetamodelBuilder::DataTypes::Boolean => :EBoolean,
     Object => :ERubyObject,
diff --git a/lib/rgen/serializer/xmi20_serializer.rb b/lib/rgen/serializer/xmi20_serializer.rb
index 1292e3f..bfe7d8a 100644
--- a/lib/rgen/serializer/xmi20_serializer.rb
+++ b/lib/rgen/serializer/xmi20_serializer.rb
@@ -57,6 +57,7 @@ class XMI20Serializer < XMLSerializer
     pre = "ecore:EDataType http://www.eclipse.org/emf/2002/Ecore"
     @referenceStrings[RGen::ECore::EString] = pre+"#//EString"
     @referenceStrings[RGen::ECore::EInt] = pre+"#//EInt"
+    @referenceStrings[RGen::ECore::ELong] = pre+"#//ELong"
     @referenceStrings[RGen::ECore::EFloat] = pre+"#//EFloat"
     @referenceStrings[RGen::ECore::EBoolean] = pre+"#//EBoolean"
     @referenceStrings[RGen::ECore::EJavaObject] = pre+"#//EJavaObject"
diff --git a/metadata.yml b/metadata.yml
index 2c7fc5d..67fcf4c 100644
--- a/metadata.yml
+++ b/metadata.yml
@@ -1,15 +1,14 @@
 --- !ruby/object:Gem::Specification
 name: rgen
 version: !ruby/object:Gem::Version
-  version: 0.6.6
-  prerelease: 
+  version: 0.7.0
 platform: ruby
 authors:
 - Martin Thiede
 autorequire: 
 bindir: bin
 cert_chain: []
-date: 2013-08-30 00:00:00.000000000 Z
+date: 2014-04-01 00:00:00.000000000 Z
 dependencies: []
 description: RGen is a framework for Model Driven Software Development (MDSD) in Ruby.
   This means that it helps you build Metamodels, instantiate Models, modify and transform
@@ -183,6 +182,7 @@ files:
 - Rakefile
 homepage: http://ruby-gen.org
 licenses: []
+metadata: {}
 post_install_message: 
 rdoc_options:
 - --main
@@ -196,21 +196,19 @@ rdoc_options:
 require_paths:
 - lib
 required_ruby_version: !ruby/object:Gem::Requirement
-  none: false
   requirements:
-  - - ! '>='
+  - - '>='
     - !ruby/object:Gem::Version
       version: '0'
 required_rubygems_version: !ruby/object:Gem::Requirement
-  none: false
   requirements:
-  - - ! '>='
+  - - '>='
     - !ruby/object:Gem::Version
       version: '0'
 requirements: []
 rubyforge_project: rgen
-rubygems_version: 1.8.24
+rubygems_version: 2.0.3
 signing_key: 
-specification_version: 3
+specification_version: 4
 summary: Ruby Modelling and Generator Framework
 test_files: []
diff --git a/test/metamodel_builder_test.rb b/test/metamodel_builder_test.rb
index 21a6f9a..4f0308b 100644
--- a/test/metamodel_builder_test.rb
+++ b/test/metamodel_builder_test.rb
@@ -15,6 +15,7 @@ class MetamodelBuilderTest < Test::Unit::TestCase
       has_attr 'name' # default is String
       has_attr 'stringWithDefault', String, :defaultValueLiteral => "xtest"
       has_attr 'integerWithDefault', Integer, :defaultValueLiteral => "123"
+      has_attr 'longWithDefault', Long, :defaultValueLiteral => "1234567890"
       has_attr 'floatWithDefault', Float, :defaultValueLiteral => "0.123"
       has_attr 'boolWithDefault', Boolean, :defaultValueLiteral => "true"
       has_attr 'anything', Object
@@ -148,9 +149,17 @@ class MetamodelBuilderTest < Test::Unit::TestCase
 
     class ContainerClass < RGen::MetamodelBuilder::MMBase
       contains_one_uni 'oneChildUni', ContainedClass
+      contains_one_uni 'oneChildUni2', ContainedClass
       contains_one 'oneChild', ContainedClass, 'parentOne'
+      contains_one 'oneChild2', ContainedClass, 'parentOne2'
       contains_many_uni 'manyChildUni', ContainedClass
+      contains_many_uni 'manyChildUni2', ContainedClass
       contains_many 'manyChild', ContainedClass, 'parentMany'
+      contains_many 'manyChild2', ContainedClass, 'parentMany2'
+    end
+
+    class NestedContainerClass < ContainedClass
+      contains_one_uni 'oneChildUni', ContainedClass
     end
 
     class OppositeRefAssocA < RGen::MetamodelBuilder::MMBase
@@ -183,6 +192,7 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     assert_equal "xtest", sc.stringWithDefault
     assert_equal :extended, sc.kindWithDefault
     assert_equal 123, sc.integerWithDefault
+    assert_equal 1234567890, sc.longWithDefault
     assert_equal 0.123, sc.floatWithDefault
     assert_equal true, sc.boolWithDefault
 
@@ -253,6 +263,20 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     assert sc2.floatWithDefault.is_a?(BigDecimal)
     assert_equal "123456789012345678.0", sc2.floatWithDefault.to_s("F")
   end
+
+  def test_long
+    sc = mm::SimpleClass.new
+    sc.longWithDefault = 5
+    assert_equal 5, sc.longWithDefault
+    sc.longWithDefault = 1234567890
+    assert_equal 1234567890, sc.longWithDefault
+    assert sc.longWithDefault.is_a?(Bignum)
+    assert sc.longWithDefault.is_a?(Integer)
+    err = assert_raise StandardError do
+      sc.longWithDefault = "a string"
+    end
+    assert_match /In (\w+::)+SimpleClass : Can not use a String where a Integer is expected/, err.message
+  end
   
   def test_many_attr
     o = mm::ManyAttrClass.new
@@ -807,6 +831,8 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     assert_equal [e1], e2.aClasses
   end
   
+  # Multiplicity agnostic convenience methods
+
   def test_genericAccess
     e1 = mm::OneClass.new
     e2 = mm::ManyClass.new
@@ -826,6 +852,40 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     assert_equal [], e4.getGenericAsArray("oneClass")
   end
 
+  def test_setNilOrRemoveGeneric
+    e1 = mm::OneClass.new
+    e2 = mm::ManyClass.new
+    e3 = mm::OneClass.new
+    # use on "many" feature
+    e1.addManyClasses(e2)
+    assert_equal [e2], e1.manyClasses
+    e1.setNilOrRemoveGeneric("manyClasses", e2)
+    assert_equal [], e1.manyClasses
+    # use on "one" feature
+    e2.oneClass = e3
+    assert_equal e3, e2.oneClass
+    e2.setNilOrRemoveGeneric("oneClass", e3)
+    assert_nil e2.oneClass
+  end
+
+  def test_setNilOrRemoveAllGeneric
+    e1 = mm::OneClass.new
+    e2 = mm::ManyClass.new
+    e3 = mm::OneClass.new
+    e4 = mm::ManyClass.new
+    # use on "many" feature
+    e1.addManyClasses(e2)
+    e1.addManyClasses(e4)
+    assert_equal [e2, e4], e1.manyClasses
+    e1.setNilOrRemoveAllGeneric("manyClasses")
+    assert_equal [], e1.manyClasses
+    # use on "one" feature
+    e2.oneClass = e3
+    assert_equal e3, e2.oneClass
+    e2.setNilOrRemoveAllGeneric("oneClass")
+    assert_nil e2.oneClass
+  end
+
   def test_abstract
     err = assert_raise StandardError do
       mm::AbstractClass.new
@@ -871,6 +931,11 @@ class MetamodelBuilderTest < Test::Unit::TestCase
         has_attr 'enumWithDefault', kindType, :defaultValueLiteral => "7"
       end
     end
+    Test8 = proc do 
+      class BadClass < RGen::MetamodelBuilder::MMBase
+        has_attr 'longWithDefault', Integer, :defaultValueLiteral => "1.1"
+      end
+    end
   end
 
   def test_bad_default_value_literal
@@ -902,6 +967,10 @@ class MetamodelBuilderTest < Test::Unit::TestCase
       BadDefaultValueLiteralContainer::Test7.call
     end
     assert_equal "Property enumWithDefault can not take value 7, expected one of :simple, :extended", err.message
+    err = assert_raise StandardError do
+      BadDefaultValueLiteralContainer::Test8.call
+    end
+    assert_equal "Property longWithDefault can not take value 1.1, expected an Integer", err.message
   end
 
   def test_isset_set_to_nil
@@ -1017,39 +1086,57 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     a = mm::ContainerClass.new
     b = mm::ContainedClass.new
     c = mm::ContainedClass.new
+    assert_equal [], a.eContents
+    assert_equal [], a.eAllContents
     assert_nil b.eContainer
     assert_nil b.eContainingFeature
     a.oneChildUni = b
     assert_equal a, b.eContainer
     assert_equal :oneChildUni, b.eContainingFeature
+    assert_equal [b], a.eContents
+    assert_equal [b], a.eAllContents
     a.oneChildUni = c
     assert_nil b.eContainer
     assert_nil b.eContainingFeature
     assert_equal a, c.eContainer
     assert_equal :oneChildUni, c.eContainingFeature
+    assert_equal [c], a.eContents
+    assert_equal [c], a.eAllContents
     a.oneChildUni = nil
     assert_nil c.eContainer
     assert_nil c.eContainingFeature
+    assert_equal [], a.eContents
+    assert_equal [], a.eAllContents
   end
 
   def test_container_many_uni
     a = mm::ContainerClass.new
     b = mm::ContainedClass.new
     c = mm::ContainedClass.new
+    assert_equal [], a.eContents
+    assert_equal [], a.eAllContents
     a.addManyChildUni(b)
     assert_equal a, b.eContainer
     assert_equal :manyChildUni, b.eContainingFeature
+    assert_equal [b], a.eContents
+    assert_equal [b], a.eAllContents
     a.addManyChildUni(c)
     assert_equal a, c.eContainer
     assert_equal :manyChildUni, c.eContainingFeature
+    assert_equal [b, c], a.eContents
+    assert_equal [b, c], a.eAllContents
     a.removeManyChildUni(b)
     assert_nil b.eContainer
     assert_nil b.eContainingFeature
     assert_equal a, c.eContainer
     assert_equal :manyChildUni, c.eContainingFeature
+    assert_equal [c], a.eContents
+    assert_equal [c], a.eAllContents
     a.removeManyChildUni(c)
     assert_nil c.eContainer
     assert_nil c.eContainingFeature
+    assert_equal [], a.eContents
+    assert_equal [], a.eAllContents
   end
 
   def test_conainer_one_bi
@@ -1060,14 +1147,22 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     a.oneChild = b
     assert_equal a, b.eContainer
     assert_equal :oneChild, b.eContainingFeature
+    assert_equal [b], a.eContents
+    assert_equal [b], a.eAllContents
     c.oneChild = d 
     assert_equal c, d.eContainer
     assert_equal :oneChild, d.eContainingFeature
+    assert_equal [d], c.eContents
+    assert_equal [d], c.eAllContents
     a.oneChild = d
     assert_nil b.eContainer
     assert_nil b.eContainingFeature
     assert_equal a, d.eContainer
     assert_equal :oneChild, d.eContainingFeature
+    assert_equal [d], a.eContents
+    assert_equal [d], a.eAllContents
+    assert_equal [], c.eContents
+    assert_equal [], c.eAllContents
   end
 
   def test_conainer_one_bi_rev
@@ -1078,14 +1173,22 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     a.oneChild = b
     assert_equal a, b.eContainer
     assert_equal :oneChild, b.eContainingFeature
+    assert_equal [b], a.eContents
+    assert_equal [b], a.eAllContents
     c.oneChild = d 
     assert_equal c, d.eContainer
     assert_equal :oneChild, d.eContainingFeature
+    assert_equal [d], c.eContents
+    assert_equal [d], c.eAllContents
     d.parentOne = a
     assert_nil b.eContainer
     assert_nil b.eContainingFeature
     assert_equal a, d.eContainer
     assert_equal :oneChild, d.eContainingFeature
+    assert_equal [d], a.eContents
+    assert_equal [d], a.eAllContents
+    assert_equal [], c.eContents
+    assert_equal [], c.eAllContents
   end
 
   def test_conainer_one_bi_nil
@@ -1094,9 +1197,13 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     a.oneChild = b
     assert_equal a, b.eContainer
     assert_equal :oneChild, b.eContainingFeature
+    assert_equal [b], a.eContents
+    assert_equal [b], a.eAllContents
     a.oneChild = nil 
     assert_nil b.eContainer
     assert_nil b.eContainingFeature
+    assert_equal [], a.eContents
+    assert_equal [], a.eAllContents
   end
 
   def test_conainer_one_bi_nil_rev
@@ -1105,9 +1212,13 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     a.oneChild = b
     assert_equal a, b.eContainer
     assert_equal :oneChild, b.eContainingFeature
+    assert_equal [b], a.eContents
+    assert_equal [b], a.eAllContents
     b.parentOne = nil 
     assert_nil b.eContainer
     assert_nil b.eContainingFeature
+    assert_equal [], a.eContents
+    assert_equal [], a.eAllContents
   end
 
   def test_container_many_bi
@@ -1120,9 +1231,13 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     assert_equal :manyChild, b.eContainingFeature
     assert_equal a, c.eContainer
     assert_equal :manyChild, c.eContainingFeature
+    assert_equal [b, c], a.eContents
+    assert_equal [b, c], a.eAllContents
     a.removeManyChild(b)
     assert_nil b.eContainer
     assert_nil b.eContainingFeature
+    assert_equal [c], a.eContents
+    assert_equal [c], a.eAllContents
   end
 
   def test_conainer_many_bi_steal
@@ -1136,12 +1251,18 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     assert_equal :manyChild, b.eContainingFeature
     assert_equal a, c.eContainer
     assert_equal :manyChild, c.eContainingFeature
+    assert_equal [b, c], a.eContents
+    assert_equal [b, c], a.eAllContents
     d.addManyChild(b)
     assert_equal d, b.eContainer
     assert_equal :manyChild, b.eContainingFeature
+    assert_equal [c], a.eContents
+    assert_equal [c], a.eAllContents
+    assert_equal [b], d.eContents
+    assert_equal [b], d.eAllContents
   end
 
-  def test_conainer_many_bi_steal_ref
+  def test_conainer_many_bi_steal_rev
     a = mm::ContainerClass.new
     b = mm::ContainedClass.new
     c = mm::ContainedClass.new
@@ -1152,9 +1273,51 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     assert_equal :manyChild, b.eContainingFeature
     assert_equal a, c.eContainer
     assert_equal :manyChild, c.eContainingFeature
+    assert_equal [b, c], a.eContents
+    assert_equal [b, c], a.eAllContents
     b.parentMany = d
     assert_equal d, b.eContainer
     assert_equal :manyChild, b.eContainingFeature
+    assert_equal [c], a.eContents
+    assert_equal [c], a.eAllContents
+    assert_equal [b], d.eContents
+    assert_equal [b], d.eAllContents
+  end
+
+  def test_all_contents
+    a = mm::ContainerClass.new
+    b = mm::NestedContainerClass.new
+    c = mm::ContainedClass.new
+    a.oneChildUni = b
+    b.oneChildUni = c
+    assert_equal [b, c], a.eAllContents
+  end
+
+  def test_all_contents_with_block
+    a = mm::ContainerClass.new
+    b = mm::NestedContainerClass.new
+    c = mm::ContainedClass.new
+    a.oneChildUni = b
+    b.oneChildUni = c
+    yielded = []
+    a.eAllContents do |e|
+      yielded << e
+    end
+    assert_equal [b, c], yielded
+  end
+
+  def test_all_contents_prune
+    a = mm::ContainerClass.new
+    b = mm::NestedContainerClass.new
+    c = mm::ContainedClass.new
+    a.oneChildUni = b
+    b.oneChildUni = c
+    yielded = []
+    a.eAllContents do |e|
+      yielded << e
+      :prune
+    end
+    assert_equal [b], yielded
   end
 
   def test_container_generic
@@ -1198,4 +1361,122 @@ class MetamodelBuilderTest < Test::Unit::TestCase
     assert_equal [], a.manyChildUni
   end
 
+  def test_disconnectContainer_one_uni
+    a = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    a.oneChildUni = b
+    b.disconnectContainer
+    assert_nil a.oneChildUni
+  end
+
+  def test_disconnectContainer_one
+    a = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    a.oneChild = b
+    b.disconnectContainer
+    assert_nil a.oneChild
+    assert_nil b.parentOne
+  end
+
+  def test_disconnectContainer_many_uni
+    a = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    c = mm::ContainedClass.new
+    a.addManyChildUni(b)
+    a.addManyChildUni(c)
+    b.disconnectContainer
+    assert_equal [c], a.manyChildUni
+  end
+
+  def test_disconnectContainer_many
+    a = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    c = mm::ContainedClass.new
+    a.addManyChild(b)
+    a.addManyChild(c)
+    b.disconnectContainer
+    assert_nil b.parentMany
+    assert_equal [c], a.manyChild
+  end
+
+  # Duplicate Containment Tests
+  #
+  # Testing that no element is contained in two different containers at a time.
+  # This must also work for uni-directional containments as well as
+  # for containments via different roles.
+
+  # here the bi-dir reference disconnects from the previous container
+  def test_duplicate_containment_bidir_samerole_one
+    a1 = mm::ContainerClass.new
+    a2 = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    a1.oneChild = b
+    a2.oneChild = b
+    assert_nil a1.oneChild
+  end
+
+  # here the bi-dir reference disconnects from the previous container
+  def test_duplicate_containment_bidir_samerole_many
+    a1 = mm::ContainerClass.new
+    a2 = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    a1.addManyChild(b)
+    a2.addManyChild(b)
+    assert_equal [], a1.manyChild
+  end
+
+  def test_duplicate_containment_unidir_samerole_one
+    a1 = mm::ContainerClass.new
+    a2 = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    a1.oneChildUni = b
+    a2.oneChildUni = b
+    assert_nil a1.oneChildUni
+  end
+
+  def test_duplicate_containment_unidir_samerole_many
+    a1 = mm::ContainerClass.new
+    a2 = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    a1.addManyChildUni(b)
+    a2.addManyChildUni(b)
+    assert_equal [], a1.manyChildUni
+  end
+
+  def test_duplicate_containment_bidir_otherrole_one
+    a1 = mm::ContainerClass.new
+    a2 = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    a1.oneChild = b
+    a2.oneChild2 = b
+    assert_nil a1.oneChild
+  end
+
+  def test_duplicate_containment_bidir_otherrole_many
+    a1 = mm::ContainerClass.new
+    a2 = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    a1.addManyChild(b)
+    a2.addManyChild2(b)
+    assert_equal [], a1.manyChild
+  end
+
+  def test_duplicate_containment_unidir_otherrole_one
+    a1 = mm::ContainerClass.new
+    a2 = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    a1.oneChildUni = b
+    a2.oneChildUni2 = b
+    assert_nil a1.oneChildUni
+  end
+
+  def test_duplicate_containment_unidir_otherrole_many
+    a1 = mm::ContainerClass.new
+    a2 = mm::ContainerClass.new
+    b = mm::ContainedClass.new
+    a1.addManyChildUni(b)
+    a2.addManyChildUni2(b)
+    assert_equal [], a1.manyChildUni
+  end
+
 end
diff --git a/test/metamodel_from_ecore_test.rb b/test/metamodel_from_ecore_test.rb
index f7da6c3..6617f65 100644
--- a/test/metamodel_from_ecore_test.rb
+++ b/test/metamodel_from_ecore_test.rb
@@ -41,5 +41,17 @@ class MetamodelFromEcoreTest < MetamodelBuilderTest
       obj.value
     end
   end
+
+  # define all the test methods explicitly in the subclass
+  # otherwise minitest is smart enough to run the tests only in the superclass context
+  MetamodelBuilderTest.instance_methods.select{|m| m.to_s =~ /^test_/}.each do |m|
+    next if instance_methods(false).include?(m)
+    module_eval <<-END
+      def #{m}
+        super
+      end
+    END
+  end
+
 end
 
diff --git a/test/metamodel_roundtrip_test.rb b/test/metamodel_roundtrip_test.rb
index 65bcbf7..f0be7cf 100644
--- a/test/metamodel_roundtrip_test.rb
+++ b/test/metamodel_roundtrip_test.rb
@@ -65,8 +65,9 @@ class MetamodelRoundtripTest < Test::Unit::TestCase
       RGen::ECore::EClass.new(:name => "C1", :eStructuralFeatures => [
         RGen::ECore::EAttribute.new(:name => "a1", :eType => RGen::ECore::EString), 
         RGen::ECore::EAttribute.new(:name => "a2", :eType => RGen::ECore::EInt), 
-        RGen::ECore::EAttribute.new(:name => "a3", :eType => RGen::ECore::EFloat), 
-        RGen::ECore::EAttribute.new(:name => "a4", :eType => RGen::ECore::EBoolean) 
+        RGen::ECore::EAttribute.new(:name => "a3", :eType => RGen::ECore::ELong), 
+        RGen::ECore::EAttribute.new(:name => "a4", :eType => RGen::ECore::EFloat), 
+        RGen::ECore::EAttribute.new(:name => "a5", :eType => RGen::ECore::EBoolean) 
       ])
     ])
     outfile = TEST_DIR+"/using_builtin_types_serialized.ecore"
@@ -87,9 +88,11 @@ class MetamodelRoundtripTest < Test::Unit::TestCase
     a2 = env.find(:class => RGen::ECore::EAttribute, :name => "a2").first
     assert_equal(RGen::ECore::EInt, a2.eType)
     a3 = env.find(:class => RGen::ECore::EAttribute, :name => "a3").first
-    assert_equal(RGen::ECore::EFloat, a3.eType)
+    assert_equal(RGen::ECore::ELong, a3.eType)
     a4 = env.find(:class => RGen::ECore::EAttribute, :name => "a4").first
-    assert_equal(RGen::ECore::EBoolean, a4.eType)
+    assert_equal(RGen::ECore::EFloat, a4.eType)
+    a5 = env.find(:class => RGen::ECore::EAttribute, :name => "a5").first
+    assert_equal(RGen::ECore::EBoolean, a5.eType)
   end
 
 end
diff --git a/test/metamodel_roundtrip_test/TestModel.rb b/test/metamodel_roundtrip_test/TestModel.rb
index fe9c0fc..0134228 100644
--- a/test/metamodel_roundtrip_test/TestModel.rb
+++ b/test/metamodel_roundtrip_test/TestModel.rb
@@ -15,6 +15,7 @@ module HouseMetamodel
   class Person < RGen::MetamodelBuilder::MMBase
     annotation       'complexity' => '1', 'date_created' => '2006-06-27 08:34:23', 'date_modified' => '2006-06-27 08:34:26', 'ea_ntype' => '0', 'ea_stype' => 'Class', 'gentype' => 'Java', 'isSpecification' => 'false', 'package' => 'EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD', 'package_name' => 'HouseMetamodel', 'phase' => '1.0', 'status' => 'Proposed', 'style' => 'BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;', 'tagged' => '0', 'version'  [...]
   	has_attr 'sex', SexEnum
+    has_attr 'id', Long
     has_many_attr 'nicknames', String
   end
   
diff --git a/test/metamodel_roundtrip_test/TestModel_Regenerated.rb b/test/metamodel_roundtrip_test/TestModel_Regenerated.rb
index d4cca2f..b3b1db1 100644
--- a/test/metamodel_roundtrip_test/TestModel_Regenerated.rb
+++ b/test/metamodel_roundtrip_test/TestModel_Regenerated.rb
@@ -13,6 +13,7 @@ module HouseMetamodel
    class Person < RGen::MetamodelBuilder::MMBase
       annotation 'complexity' => '1', 'date_created' => '2006-06-27 08:34:23', 'date_modified' => '2006-06-27 08:34:26', 'ea_ntype' => '0', 'ea_stype' => 'Class', 'gentype' => 'Java', 'isSpecification' => 'false', 'package' => 'EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD', 'package_name' => 'HouseMetamodel', 'phase' => '1.0', 'status' => 'Proposed', 'style' => 'BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;', 'tagged' => '0', 'version' => '1.0'
       has_attr 'sex', HouseMetamodel::SexEnum 
+      has_attr 'id', Long 
       has_many_attr 'nicknames', String 
    end
 
diff --git a/test/metamodel_roundtrip_test/houseMetamodel.ecore b/test/metamodel_roundtrip_test/houseMetamodel.ecore
index 3981bc5..6f5c01b 100644
--- a/test/metamodel_roundtrip_test/houseMetamodel.ecore
+++ b/test/metamodel_roundtrip_test/houseMetamodel.ecore
@@ -20,6 +20,7 @@
     <eStructuralFeatures xsi:type="ecore:EReference" name="house" upperBound="-1"
         eType="#//House"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="sex" eType="#//SexEnum"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="nicknames" upperBound="-1" eType="#//String"/>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EDataType" name="String" instanceClassName="java.lang.String"/>
diff --git a/test/metamodel_roundtrip_test/houseMetamodel_Regenerated.ecore b/test/metamodel_roundtrip_test/houseMetamodel_Regenerated.ecore
index 7353fe2..87a41c6 100644
--- a/test/metamodel_roundtrip_test/houseMetamodel_Regenerated.ecore
+++ b/test/metamodel_roundtrip_test/houseMetamodel_Regenerated.ecore
@@ -19,6 +19,7 @@
   </eClassifiers>
   <eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::Person" name="Person" xsi:type="ecore:EClass">
     <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="sex" eType="#//SexEnum" xsi:type="ecore:EAttribute"/>
+    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong" xsi:type="ecore:EAttribute"/>
     <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="-1" name="nicknames" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" xsi:type="ecore:EAttribute"/>
     <eStructuralFeatures containment="false" resolveProxies="true" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="-1" name="home" eType="#//House" xsi:type="ecore:EReference">
       <eAnnotations xsi:type="ecore:EAnnotation">
diff --git a/test/metamodel_roundtrip_test/houseMetamodel_from_ecore.rb b/test/metamodel_roundtrip_test/houseMetamodel_from_ecore.rb
index 5a4fe88..a7a1104 100644
--- a/test/metamodel_roundtrip_test/houseMetamodel_from_ecore.rb
+++ b/test/metamodel_roundtrip_test/houseMetamodel_from_ecore.rb
@@ -16,6 +16,7 @@ module HouseMetamodel
 
    class Person < RGen::MetamodelBuilder::MMBase
       has_attr 'sex', HouseMetamodel::SexEnum 
+      has_attr 'id', Long 
       has_many_attr 'nicknames', String 
    end
 
diff --git a/test/metamodel_roundtrip_test/using_builtin_types.ecore b/test/metamodel_roundtrip_test/using_builtin_types.ecore
index eefcaf7..2f93239 100644
--- a/test/metamodel_roundtrip_test/using_builtin_types.ecore
+++ b/test/metamodel_roundtrip_test/using_builtin_types.ecore
@@ -2,7 +2,8 @@
   <eClassifiers name="C1" xsi:type="ecore:EClass">
     <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" xsi:type="ecore:EAttribute"/>
     <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a2" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" xsi:type="ecore:EAttribute"/>
-    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a3" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat" xsi:type="ecore:EAttribute"/>
-    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a4" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" xsi:type="ecore:EAttribute"/>
+    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a3" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong" xsi:type="ecore:EAttribute"/>
+    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a4" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat" xsi:type="ecore:EAttribute"/>
+    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a5" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" xsi:type="ecore:EAttribute"/>
   </eClassifiers>
 </ecore:EPackage>
diff --git a/test/metamodel_roundtrip_test/using_builtin_types_serialized.ecore b/test/metamodel_roundtrip_test/using_builtin_types_serialized.ecore
index 25c2880..5844e5a 100644
--- a/test/metamodel_roundtrip_test/using_builtin_types_serialized.ecore
+++ b/test/metamodel_roundtrip_test/using_builtin_types_serialized.ecore
@@ -2,7 +2,8 @@
   <eClassifiers name="C1" xsi:type="ecore:EClass">
     <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" xsi:type="ecore:EAttribute"/>
     <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a2" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" xsi:type="ecore:EAttribute"/>
-    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a3" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat" xsi:type="ecore:EAttribute"/>
-    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a4" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" xsi:type="ecore:EAttribute"/>
+    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a3" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong" xsi:type="ecore:EAttribute"/>
+    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a4" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat" xsi:type="ecore:EAttribute"/>
+    <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a5" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" xsi:type="ecore:EAttribute"/>
   </eClassifiers>
 </ecore:EPackage>
diff --git a/test/model_builder/ecore_internal.rb b/test/model_builder/ecore_internal.rb
index 99a4784..3a1032f 100644
--- a/test/model_builder/ecore_internal.rb
+++ b/test/model_builder/ecore_internal.rb
@@ -10,10 +10,10 @@ ePackage "ECore", :eSuperPackage => "" do
     eReference "contents", :containment => true, :resolveProxies => false, :upperBound => -1, :eType => "EObject"
     eReference "references", :upperBound => -1, :eType => "EObject"
   end
-  eClass "ENamedElement", :abstract => false, :interface => false, :eSubTypes => ["EClassifier", "ETypedElement", "EEnumLiteral", "EPackage"], :instanceClassName => "RGen::ECore::ENamedElement" do
+  eClass "ENamedElement", :abstract => false, :interface => false, :eSubTypes => ["ETypedElement", "EClassifier", "EEnumLiteral", "EPackage"], :instanceClassName => "RGen::ECore::ENamedElement" do
     eAttribute "name", :eType => ""
   end
-  eClass "ETypedElement", :abstract => false, :interface => false, :eSubTypes => ["EOperation", "EStructuralFeature", "EParameter"], :instanceClassName => "RGen::ECore::ETypedElement" do
+  eClass "ETypedElement", :abstract => false, :interface => false, :eSubTypes => ["EStructuralFeature", "EOperation", "EParameter"], :instanceClassName => "RGen::ECore::ETypedElement" do
     eAttribute "lowerBound", :defaultValueLiteral => "0", :eType => ""
     eAttribute "ordered", :defaultValueLiteral => "true", :eType => ""
     eAttribute "unique", :defaultValueLiteral => "true", :eType => ""
@@ -22,7 +22,7 @@ ePackage "ECore", :eSuperPackage => "" do
     eAttribute "required", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
     eReference "eType", :eType => "EClassifier"
   end
-  eClass "EStructuralFeature", :abstract => false, :interface => false, :eSubTypes => ["EAttribute"], :instanceClassName => "RGen::ECore::EStructuralFeature" do
+  eClass "EStructuralFeature", :abstract => false, :interface => false, :eSubTypes => ["EAttribute", "EReference"], :instanceClassName => "RGen::ECore::EStructuralFeature" do
     eAttribute "changeable", :defaultValueLiteral => "true", :eType => ""
     eAttribute "defaultValue", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
     eAttribute "defaultValueLiteral", :eType => ""
@@ -36,13 +36,13 @@ ePackage "ECore", :eSuperPackage => "" do
     eAttribute "iD", :defaultValueLiteral => "false", :eType => ""
     eReference "eAttributeType", :changeable => false, :derived => true, :transient => true, :volatile => true, :lowerBound => 1, :eType => "EDataType"
   end
-  eClass "EClassifier", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EClassifier" do
+  eClass "EClassifier", :abstract => false, :interface => false, :eSubTypes => ["EDataType", "EClass"], :instanceClassName => "RGen::ECore::EClassifier" do
     eAttribute "defaultValue", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
     eAttribute "instanceClass", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
     eAttribute "instanceClassName", :eType => ""
     eReference "ePackage", :eOpposite => "EPackage.eClassifiers", :eType => "EPackage"
   end
-  eClass "EDataType", :abstract => false, :interface => false, :eSuperTypes => ["EClassifier"], :eSubTypes => ["EGenericType", "EEnum"], :instanceClassName => "RGen::ECore::EDataType" do
+  eClass "EDataType", :abstract => false, :interface => false, :eSubTypes => ["EGenericType", "EEnum"], :instanceClassName => "RGen::ECore::EDataType" do
     eAttribute "serializable", :eType => ""
   end
   eClass "EGenericType", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EGenericType" do
@@ -82,7 +82,7 @@ ePackage "ECore", :eSuperPackage => "" do
     eReference "eOperation", :eOpposite => "EOperation.eParameters", :eType => "EOperation"
     eReference "eGenericType", :containment => true, :eOpposite => "EGenericType.eParameter", :eType => "EGenericType"
   end
-  eClass "EReference", :abstract => false, :interface => false, :eSuperTypes => ["EStructuralFeature"], :instanceClassName => "RGen::ECore::EReference" do
+  eClass "EReference", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EReference" do
     eAttribute "container", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
     eAttribute "containment", :defaultValueLiteral => "false", :eType => ""
     eAttribute "resolveProxies", :defaultValueLiteral => "true", :eType => ""
@@ -93,7 +93,7 @@ ePackage "ECore", :eSuperPackage => "" do
     eAttribute "key", :eType => ""
     eAttribute "value", :eType => ""
   end
-  eClass "EClass", :abstract => false, :interface => false, :eSuperTypes => ["EClassifier"], :instanceClassName => "RGen::ECore::EClass" do
+  eClass "EClass", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EClass" do
     eAttribute "abstract", :eType => ""
     eAttribute "interface", :eType => ""
     eReference "eIDAttribute", :resolveProxies => false, :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => "EAttribute"
diff --git a/test/testmodel/ea_testmodel_regenerated.xml b/test/testmodel/ea_testmodel_regenerated.xml
index 889bc62..d790491 100644
--- a/test/testmodel/ea_testmodel_regenerated.xml
+++ b/test/testmodel/ea_testmodel_regenerated.xml
@@ -1,4 +1,4 @@
-<XMI xmi.version="1.1" xmlns:UML="omg.org/UML1.3" timestamp="2013-08-27 12:29:11 +0200">
+<XMI xmi.version="1.1" xmlns:UML="omg.org/UML1.3" timestamp="2014-04-01 10:23:37 +0200">
   <XMI.header >
     <XMI.documentation >
       <XMI.exporter >Enterprise Architect</XMI.exporter>
@@ -6,807 +6,807 @@
     </XMI.documentation>
   </XMI.header>
   <XMI.content >
-    <UML:Model xmi.id="EAPK_31953552" name="EA Model" visibility="public">
+    <UML:Model xmi.id="EAPK_21410916" name="EA Model" visibility="public">
       <UML:Namespace.ownedElement >
-        <UML:Class xmi.id="EAID_31977624" isRoot="true" isLeaf="false" isAbstract="false" name="EARootClass" visibility="public">
+        <UML:Class xmi.id="EAID_20082216" isRoot="true" isLeaf="false" isAbstract="false" name="EARootClass" visibility="public">
           <UML:ModelElement.taggedValue >
-            <UML:TaggedValue xmi.id="32086032" tag="ea_stype" value="Class"/>
+            <UML:TaggedValue xmi.id="33032040" tag="ea_stype" value="Class"/>
           </UML:ModelElement.taggedValue>
         </UML:Class>
-        <UML:Package xmi.id="EAPK_31940496" name="Views" visibility="public" isRoot="true" isLeaf="false" isAbstract="false">
+        <UML:Package xmi.id="EAPK_21534900" name="Views" visibility="public" isRoot="true" isLeaf="false" isAbstract="false">
           <UML:Namespace.ownedElement >
-            <UML:Collaboration xmi.id="31949808" name="Collaborations" visibility="public">
+            <UML:Collaboration xmi.id="20172564" name="Collaborations" visibility="public">
               <UML:Namespace.ownedElement >
-                <UML:ClassifierRole xmi.id="32016780" name="HouseMetamodel" visibility="public" base="EAID_31977624">
+                <UML:ClassifierRole xmi.id="19695204" name="HouseMetamodel" visibility="public" base="EAID_20082216">
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32101128" tag="isSpecification" value="false"/>
-                    <UML:TaggedValue xmi.id="32067372" tag="ea_stype" value="Package"/>
-                    <UML:TaggedValue xmi.id="32101068" tag="ea_ntype" value="0"/>
-                    <UML:TaggedValue xmi.id="32101032" tag="version" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32100996" tag="package" value="EAPK_B216CC15_6D9C_4c10_9015_96740F924D1C"/>
-                    <UML:TaggedValue xmi.id="32100960" tag="date_created" value="2006-06-26 08:41:49"/>
-                    <UML:TaggedValue xmi.id="32100924" tag="date_modified" value="2006-06-26 08:41:49"/>
-                    <UML:TaggedValue xmi.id="32100888" tag="gentype" value="Java"/>
-                    <UML:TaggedValue xmi.id="32100852" tag="tagged" value="0"/>
-                    <UML:TaggedValue xmi.id="32100816" tag="package2" value="EAID_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
-                    <UML:TaggedValue xmi.id="32100780" tag="package_name" value="Views"/>
-                    <UML:TaggedValue xmi.id="32100744" tag="phase" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32100708" tag="complexity" value="1"/>
-                    <UML:TaggedValue xmi.id="32100672" tag="status" value="Proposed"/>
-                    <UML:TaggedValue xmi.id="32100636" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                    <UML:TaggedValue xmi.id="33014604" tag="isSpecification" value="false"/>
+                    <UML:TaggedValue xmi.id="33014568" tag="ea_stype" value="Package"/>
+                    <UML:TaggedValue xmi.id="33014532" tag="ea_ntype" value="0"/>
+                    <UML:TaggedValue xmi.id="33014496" tag="version" value="1.0"/>
+                    <UML:TaggedValue xmi.id="33014460" tag="package" value="EAPK_B216CC15_6D9C_4c10_9015_96740F924D1C"/>
+                    <UML:TaggedValue xmi.id="33014424" tag="date_created" value="2006-06-26 08:41:49"/>
+                    <UML:TaggedValue xmi.id="33014388" tag="date_modified" value="2006-06-26 08:41:49"/>
+                    <UML:TaggedValue xmi.id="33014352" tag="gentype" value="Java"/>
+                    <UML:TaggedValue xmi.id="33014316" tag="tagged" value="0"/>
+                    <UML:TaggedValue xmi.id="33014280" tag="package2" value="EAID_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
+                    <UML:TaggedValue xmi.id="33014244" tag="package_name" value="Views"/>
+                    <UML:TaggedValue xmi.id="33033996" tag="phase" value="1.0"/>
+                    <UML:TaggedValue xmi.id="33014184" tag="complexity" value="1"/>
+                    <UML:TaggedValue xmi.id="33014148" tag="status" value="Proposed"/>
+                    <UML:TaggedValue xmi.id="33014112" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                   </UML:ModelElement.taggedValue>
                 </UML:ClassifierRole>
-                <UML:ClassifierRole xmi.id="32014524" name="HouseExampleModel" visibility="public" base="EAID_31977624">
+                <UML:ClassifierRole xmi.id="19574112" name="HouseExampleModel" visibility="public" base="EAID_20082216">
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32097156" tag="isSpecification" value="false"/>
-                    <UML:TaggedValue xmi.id="32098728" tag="ea_stype" value="Package"/>
-                    <UML:TaggedValue xmi.id="32097096" tag="ea_ntype" value="0"/>
-                    <UML:TaggedValue xmi.id="32097060" tag="version" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32097024" tag="package" value="EAPK_B216CC15_6D9C_4c10_9015_96740F924D1C"/>
-                    <UML:TaggedValue xmi.id="32096988" tag="date_created" value="2006-07-20 18:34:43"/>
-                    <UML:TaggedValue xmi.id="32096952" tag="date_modified" value="2006-07-20 18:34:43"/>
-                    <UML:TaggedValue xmi.id="32096916" tag="gentype" value="Java"/>
-                    <UML:TaggedValue xmi.id="32096880" tag="tagged" value="0"/>
-                    <UML:TaggedValue xmi.id="32096844" tag="package2" value="EAID_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
-                    <UML:TaggedValue xmi.id="32096808" tag="package_name" value="Views"/>
-                    <UML:TaggedValue xmi.id="32096772" tag="phase" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32096736" tag="complexity" value="1"/>
-                    <UML:TaggedValue xmi.id="32096700" tag="status" value="Proposed"/>
-                    <UML:TaggedValue xmi.id="32096664" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                    <UML:TaggedValue xmi.id="33002112" tag="isSpecification" value="false"/>
+                    <UML:TaggedValue xmi.id="33002076" tag="ea_stype" value="Package"/>
+                    <UML:TaggedValue xmi.id="33002040" tag="ea_ntype" value="0"/>
+                    <UML:TaggedValue xmi.id="33002004" tag="version" value="1.0"/>
+                    <UML:TaggedValue xmi.id="33001968" tag="package" value="EAPK_B216CC15_6D9C_4c10_9015_96740F924D1C"/>
+                    <UML:TaggedValue xmi.id="33001932" tag="date_created" value="2006-07-20 18:34:43"/>
+                    <UML:TaggedValue xmi.id="33001896" tag="date_modified" value="2006-07-20 18:34:43"/>
+                    <UML:TaggedValue xmi.id="33001860" tag="gentype" value="Java"/>
+                    <UML:TaggedValue xmi.id="33001824" tag="tagged" value="0"/>
+                    <UML:TaggedValue xmi.id="33001788" tag="package2" value="EAID_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
+                    <UML:TaggedValue xmi.id="33001752" tag="package_name" value="Views"/>
+                    <UML:TaggedValue xmi.id="33001716" tag="phase" value="1.0"/>
+                    <UML:TaggedValue xmi.id="33001680" tag="complexity" value="1"/>
+                    <UML:TaggedValue xmi.id="33001644" tag="status" value="Proposed"/>
+                    <UML:TaggedValue xmi.id="33001608" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                   </UML:ModelElement.taggedValue>
                 </UML:ClassifierRole>
               </UML:Namespace.ownedElement>
             </UML:Collaboration>
-            <UML:Package xmi.id="EAPK_31947924" name="HouseMetamodel" visibility="public" isRoot="true" isLeaf="false" isAbstract="false">
+            <UML:Package xmi.id="EAPK_20154324" name="HouseMetamodel" visibility="public" isRoot="true" isLeaf="false" isAbstract="false">
               <UML:Namespace.ownedElement >
-                <UML:Class xmi.id="EAID_32060256" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="House" visibility="public" presentation="32116884" stereotype="32118300">
+                <UML:Class xmi.id="EAID_19521372" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="House" visibility="public" presentation="32939280" stereotype="32949084">
                   <UML:Classifier.feature >
-                    <UML:Attribute xmi.id="32103780" changeable="none" targetScope="instance" ownerScope="instance" name="address" visibility="private" type="31975020">
+                    <UML:Attribute xmi.id="32951184" changeable="none" targetScope="instance" ownerScope="instance" name="address" visibility="private" type="19853868">
                       <UML:Attribute.initialValue >
-                        <UML:Expression xmi.id="32244756"/>
+                        <UML:Expression xmi.id="32685612"/>
                       </UML:Attribute.initialValue>
                       <UML:StructuralFeature.multiplicity >
-                        <UML:Multiplicity xmi.id="32245452">
+                        <UML:Multiplicity xmi.id="32685456">
                           <UML:Multiplicity.range >
-                            <UML:MultiplicityRange xmi.id="32558580" lower="1" upper="1"/>
+                            <UML:MultiplicityRange xmi.id="32246664" lower="1" upper="1"/>
                           </UML:Multiplicity.range>
                         </UML:Multiplicity>
                       </UML:StructuralFeature.multiplicity>
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32244132" tag="type" value="String"/>
-                        <UML:TaggedValue xmi.id="32244096" tag="derived" value="0"/>
-                        <UML:TaggedValue xmi.id="32244060" tag="containment" value="Not Specified"/>
-                        <UML:TaggedValue xmi.id="32244024" tag="ordered" value="0"/>
-                        <UML:TaggedValue xmi.id="32243988" tag="collection" value="false"/>
-                        <UML:TaggedValue xmi.id="32243952" tag="position" value="0"/>
-                        <UML:TaggedValue xmi.id="32243916" tag="duplicates" value="0"/>
-                        <UML:TaggedValue xmi.id="32243880" tag="ea_guid" value="{A8DF581B-9AC6-4f75-AB48-8FAEDFC6E068}"/>
-                        <UML:TaggedValue xmi.id="32243844" tag="styleex" value="volatile=0;"/>
+                        <UML:TaggedValue xmi.id="32685000" tag="type" value="String"/>
+                        <UML:TaggedValue xmi.id="32684964" tag="derived" value="0"/>
+                        <UML:TaggedValue xmi.id="32684928" tag="containment" value="Not Specified"/>
+                        <UML:TaggedValue xmi.id="32684892" tag="ordered" value="0"/>
+                        <UML:TaggedValue xmi.id="32684856" tag="collection" value="false"/>
+                        <UML:TaggedValue xmi.id="32684820" tag="position" value="0"/>
+                        <UML:TaggedValue xmi.id="32684784" tag="duplicates" value="0"/>
+                        <UML:TaggedValue xmi.id="32684748" tag="ea_guid" value="{A8DF581B-9AC6-4f75-AB48-8FAEDFC6E068}"/>
+                        <UML:TaggedValue xmi.id="32684712" tag="styleex" value="volatile=0;"/>
                       </UML:ModelElement.taggedValue>
                     </UML:Attribute>
                   </UML:Classifier.feature>
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32115888" tag="isSpecification" value="false"/>
-                    <UML:TaggedValue xmi.id="32115852" tag="ea_stype" value="Class"/>
-                    <UML:TaggedValue xmi.id="32115816" tag="ea_ntype" value="0"/>
-                    <UML:TaggedValue xmi.id="32115780" tag="version" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32115744" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
-                    <UML:TaggedValue xmi.id="32115708" tag="date_created" value="2005-09-16 19:52:18"/>
-                    <UML:TaggedValue xmi.id="32115672" tag="date_modified" value="2006-02-28 08:29:19"/>
-                    <UML:TaggedValue xmi.id="32115636" tag="gentype" value="Java"/>
-                    <UML:TaggedValue xmi.id="32115600" tag="tagged" value="0"/>
-                    <UML:TaggedValue xmi.id="32115564" tag="package_name" value="HouseMetamodel"/>
-                    <UML:TaggedValue xmi.id="32115528" tag="phase" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32115492" tag="complexity" value="1"/>
-                    <UML:TaggedValue xmi.id="32115456" tag="status" value="Proposed"/>
-                    <UML:TaggedValue xmi.id="32115420" tag="stereotype" value="dummy"/>
-                    <UML:TaggedValue xmi.id="32115384" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
-                    <UML:TaggedValue xmi.id="32115060" tag="ea_stype" value="Class"/>
+                    <UML:TaggedValue xmi.id="32938140" tag="isSpecification" value="false"/>
+                    <UML:TaggedValue xmi.id="32938104" tag="ea_stype" value="Class"/>
+                    <UML:TaggedValue xmi.id="32938068" tag="ea_ntype" value="0"/>
+                    <UML:TaggedValue xmi.id="32938032" tag="version" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32937996" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
+                    <UML:TaggedValue xmi.id="32937960" tag="date_created" value="2005-09-16 19:52:18"/>
+                    <UML:TaggedValue xmi.id="32937924" tag="date_modified" value="2006-02-28 08:29:19"/>
+                    <UML:TaggedValue xmi.id="33003756" tag="gentype" value="Java"/>
+                    <UML:TaggedValue xmi.id="32937864" tag="tagged" value="0"/>
+                    <UML:TaggedValue xmi.id="32937828" tag="package_name" value="HouseMetamodel"/>
+                    <UML:TaggedValue xmi.id="32937792" tag="phase" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32937756" tag="complexity" value="1"/>
+                    <UML:TaggedValue xmi.id="32937720" tag="status" value="Proposed"/>
+                    <UML:TaggedValue xmi.id="32937684" tag="stereotype" value="dummy"/>
+                    <UML:TaggedValue xmi.id="32937648" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                    <UML:TaggedValue xmi.id="32937324" tag="ea_stype" value="Class"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Class>
-                <UML:Association xmi.id="EAID_32060220" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32112204 32112168">
+                <UML:Association xmi.id="EAID_19520712" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32933400 32933364">
                   <UML:Association.connection >
-                    <UML:AssociationEnd xmi.id="EAID_32105160" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" visibility="public" type="EAID_32060256">
+                    <UML:AssociationEnd xmi.id="EAID_32952696" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" visibility="public" type="EAID_19521372">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32238372" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32711724" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
-                    <UML:AssociationEnd xmi.id="EAID_32112516" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" multiplicity="1" name="bathroom" visibility="public" type="EAID_32196720">
+                    <UML:AssociationEnd xmi.id="EAID_32933724" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" multiplicity="1" name="bathroom" visibility="public" type="EAID_32829072">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32301408" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32664636" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
                   </UML:Association.connection>
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32112060" tag="style" value="3"/>
-                    <UML:TaggedValue xmi.id="32112024" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32111988" tag="direction" value="Source -> Destination"/>
-                    <UML:TaggedValue xmi.id="32111952" tag="linemode" value="3"/>
-                    <UML:TaggedValue xmi.id="32111916" tag="seqno" value="0"/>
-                    <UML:TaggedValue xmi.id="32111880" tag="headStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32111844" tag="lineStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32111808" tag="privatedata5" value="SX=8;SY=5;EX=8;EY=5;"/>
-                    <UML:TaggedValue xmi.id="32111772" tag="virtualInheritance" value="0"/>
-                    <UML:TaggedValue xmi.id="32111376" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32111244" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32933244" tag="style" value="3"/>
+                    <UML:TaggedValue xmi.id="32933208" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32934756" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32933148" tag="linemode" value="3"/>
+                    <UML:TaggedValue xmi.id="32933112" tag="seqno" value="0"/>
+                    <UML:TaggedValue xmi.id="32933076" tag="headStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32933040" tag="lineStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32933004" tag="privatedata5" value="SX=8;SY=5;EX=8;EY=5;"/>
+                    <UML:TaggedValue xmi.id="32932968" tag="virtualInheritance" value="0"/>
+                    <UML:TaggedValue xmi.id="32932572" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32932272" tag="direction" value="Source -> Destination"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Association>
-                <UML:Association xmi.id="EAID_32057988" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32124996 32124960">
+                <UML:Association xmi.id="EAID_16068984" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32920572 32920536">
                   <UML:Association.connection >
-                    <UML:AssociationEnd xmi.id="EAID_32125308" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" multiplicity="1" name="kitchen" visibility="public" type="EAID_32190348">
+                    <UML:AssociationEnd xmi.id="EAID_32920920" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" multiplicity="1" name="kitchen" visibility="public" type="EAID_32849328">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32309916" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32648772" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
-                    <UML:AssociationEnd xmi.id="EAID_32094756" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" multiplicity="1" name="house" visibility="public" type="EAID_32060256">
+                    <UML:AssociationEnd xmi.id="EAID_32951328" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" multiplicity="1" name="house" visibility="public" type="EAID_19521372">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32235828" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32701128" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
                   </UML:Association.connection>
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32124852" tag="style" value="3"/>
-                    <UML:TaggedValue xmi.id="32124816" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32124780" tag="direction" value="Bi-Directional"/>
-                    <UML:TaggedValue xmi.id="32124744" tag="linemode" value="3"/>
-                    <UML:TaggedValue xmi.id="32124708" tag="seqno" value="0"/>
-                    <UML:TaggedValue xmi.id="32124672" tag="headStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32124636" tag="lineStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32124600" tag="privatedata5" value="SX=6;SY=-12;EX=-44;EY=-9;EDGE=1;"/>
-                    <UML:TaggedValue xmi.id="32124564" tag="virtualInheritance" value="0"/>
-                    <UML:TaggedValue xmi.id="32124168" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32124048" tag="direction" value="Bi-Directional"/>
+                    <UML:TaggedValue xmi.id="32920416" tag="style" value="3"/>
+                    <UML:TaggedValue xmi.id="32920380" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32920344" tag="direction" value="Bi-Directional"/>
+                    <UML:TaggedValue xmi.id="32920296" tag="linemode" value="3"/>
+                    <UML:TaggedValue xmi.id="32920248" tag="seqno" value="0"/>
+                    <UML:TaggedValue xmi.id="32920212" tag="headStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32920176" tag="lineStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32920140" tag="privatedata5" value="SX=6;SY=-12;EX=-44;EY=-9;EDGE=1;"/>
+                    <UML:TaggedValue xmi.id="32920104" tag="virtualInheritance" value="0"/>
+                    <UML:TaggedValue xmi.id="32919708" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32919432" tag="direction" value="Bi-Directional"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Association>
-                <UML:Association xmi.id="EAID_32057952" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32121420 32121384">
+                <UML:Association xmi.id="EAID_16068840" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32915988 32915952">
                   <UML:Association.connection >
-                    <UML:AssociationEnd xmi.id="EAID_32121732" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" visibility="public" type="EAID_32057844">
+                    <UML:AssociationEnd xmi.id="EAID_32916336" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" visibility="public" type="EAID_16068600">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32335056" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32616684" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
-                    <UML:AssociationEnd xmi.id="EAID_32103888" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" multiplicity="0..*" name="home" visibility="public" type="EAID_32060256">
+                    <UML:AssociationEnd xmi.id="EAID_32951292" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" multiplicity="0..*" name="home" visibility="public" type="EAID_19521372">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32249664" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32698656" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
                   </UML:Association.connection>
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32121276" tag="style" value="3"/>
-                    <UML:TaggedValue xmi.id="32121240" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32121204" tag="direction" value="Source -> Destination"/>
-                    <UML:TaggedValue xmi.id="32121168" tag="linemode" value="3"/>
-                    <UML:TaggedValue xmi.id="32121132" tag="seqno" value="0"/>
-                    <UML:TaggedValue xmi.id="32121096" tag="headStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32121060" tag="lineStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32121024" tag="virtualInheritance" value="0"/>
-                    <UML:TaggedValue xmi.id="32120628" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32120496" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32915820" tag="style" value="3"/>
+                    <UML:TaggedValue xmi.id="32915772" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32915736" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32915700" tag="linemode" value="3"/>
+                    <UML:TaggedValue xmi.id="32915664" tag="seqno" value="0"/>
+                    <UML:TaggedValue xmi.id="32915628" tag="headStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32915592" tag="lineStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32915556" tag="virtualInheritance" value="0"/>
+                    <UML:TaggedValue xmi.id="32898744" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32898432" tag="direction" value="Source -> Destination"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Association>
-                <UML:Association xmi.id="EAID_32057916" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32167020 32166984">
+                <UML:Association xmi.id="EAID_16068780" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32895036 32894976">
                   <UML:Association.connection >
-                    <UML:AssociationEnd xmi.id="EAID_32167332" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" multiplicity="1..*" name="room" visibility="public" type="EAID_32196828">
+                    <UML:AssociationEnd xmi.id="EAID_32895504" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" multiplicity="1..*" name="room" visibility="public" type="EAID_32829180">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32344236" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32601324" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
-                    <UML:AssociationEnd xmi.id="EAID_32103852" isNavigable="true" isOrdered="false" aggregation="composite" targetScope="instance" changeable="none" multiplicity="1" name="house" visibility="public" type="EAID_32060256">
+                    <UML:AssociationEnd xmi.id="EAID_32951256" isNavigable="true" isOrdered="false" aggregation="composite" targetScope="instance" changeable="none" multiplicity="1" name="house" visibility="public" type="EAID_19521372">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32247120" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32696136" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
                   </UML:Association.connection>
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32166876" tag="style" value="3"/>
-                    <UML:TaggedValue xmi.id="32166840" tag="ea_type" value="Aggregation"/>
-                    <UML:TaggedValue xmi.id="32166804" tag="direction" value="Source -> Destination"/>
-                    <UML:TaggedValue xmi.id="32166768" tag="linemode" value="3"/>
-                    <UML:TaggedValue xmi.id="32166732" tag="seqno" value="0"/>
-                    <UML:TaggedValue xmi.id="32166696" tag="subtype" value="Strong"/>
-                    <UML:TaggedValue xmi.id="32166660" tag="headStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32166624" tag="lineStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32166588" tag="privatedata5" value="SX=-2;SY=-1;EX=-2;EY=-1;"/>
-                    <UML:TaggedValue xmi.id="32166552" tag="virtualInheritance" value="0"/>
-                    <UML:TaggedValue xmi.id="32166156" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32166024" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32894844" tag="style" value="3"/>
+                    <UML:TaggedValue xmi.id="32894808" tag="ea_type" value="Aggregation"/>
+                    <UML:TaggedValue xmi.id="32894772" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32894736" tag="linemode" value="3"/>
+                    <UML:TaggedValue xmi.id="32894700" tag="seqno" value="0"/>
+                    <UML:TaggedValue xmi.id="32894652" tag="subtype" value="Strong"/>
+                    <UML:TaggedValue xmi.id="32894604" tag="headStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32894568" tag="lineStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32894532" tag="privatedata5" value="SX=-2;SY=-1;EX=-2;EY=-1;"/>
+                    <UML:TaggedValue xmi.id="32894496" tag="virtualInheritance" value="0"/>
+                    <UML:TaggedValue xmi.id="32894112" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32893788" tag="direction" value="Source -> Destination"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Association>
-                <UML:Collaboration xmi.id="32057880" name="Collaborations" visibility="public">
+                <UML:Collaboration xmi.id="16068672" name="Collaborations" visibility="public">
                   <UML:Namespace.ownedElement >
-                    <UML:ClassifierRole xmi.id="32163132" name="Rooms" visibility="public" base="EAID_31977624">
+                    <UML:ClassifierRole xmi.id="32881788" name="Rooms" visibility="public" base="EAID_20082216">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32351760" tag="isSpecification" value="false"/>
-                        <UML:TaggedValue xmi.id="32342532" tag="ea_stype" value="Package"/>
-                        <UML:TaggedValue xmi.id="32351700" tag="ea_ntype" value="0"/>
-                        <UML:TaggedValue xmi.id="32351664" tag="version" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32351628" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
-                        <UML:TaggedValue xmi.id="32351592" tag="date_created" value="2006-06-23 08:28:49"/>
-                        <UML:TaggedValue xmi.id="32351556" tag="date_modified" value="2006-06-23 08:28:49"/>
-                        <UML:TaggedValue xmi.id="32351520" tag="gentype" value="Java"/>
-                        <UML:TaggedValue xmi.id="32351484" tag="tagged" value="0"/>
-                        <UML:TaggedValue xmi.id="32351448" tag="package2" value="EAID_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
-                        <UML:TaggedValue xmi.id="32351412" tag="package_name" value="HouseMetamodel"/>
-                        <UML:TaggedValue xmi.id="32351376" tag="phase" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32351340" tag="complexity" value="1"/>
-                        <UML:TaggedValue xmi.id="32351304" tag="status" value="Proposed"/>
-                        <UML:TaggedValue xmi.id="32351268" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                        <UML:TaggedValue xmi.id="32584428" tag="isSpecification" value="false"/>
+                        <UML:TaggedValue xmi.id="32584392" tag="ea_stype" value="Package"/>
+                        <UML:TaggedValue xmi.id="32584356" tag="ea_ntype" value="0"/>
+                        <UML:TaggedValue xmi.id="32584320" tag="version" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32584284" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
+                        <UML:TaggedValue xmi.id="32584236" tag="date_created" value="2006-06-23 08:28:49"/>
+                        <UML:TaggedValue xmi.id="32584188" tag="date_modified" value="2006-06-23 08:28:49"/>
+                        <UML:TaggedValue xmi.id="32584140" tag="gentype" value="Java"/>
+                        <UML:TaggedValue xmi.id="32584104" tag="tagged" value="0"/>
+                        <UML:TaggedValue xmi.id="32584068" tag="package2" value="EAID_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
+                        <UML:TaggedValue xmi.id="32584032" tag="package_name" value="HouseMetamodel"/>
+                        <UML:TaggedValue xmi.id="32583996" tag="phase" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32583960" tag="complexity" value="1"/>
+                        <UML:TaggedValue xmi.id="32583924" tag="status" value="Proposed"/>
+                        <UML:TaggedValue xmi.id="32583888" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                       </UML:ModelElement.taggedValue>
                     </UML:ClassifierRole>
                   </UML:Namespace.ownedElement>
                 </UML:Collaboration>
-                <UML:Class xmi.id="EAID_32057844" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="Person" visibility="public" presentation="32160144">
+                <UML:Class xmi.id="EAID_16068600" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="Person" visibility="public" presentation="32878920">
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32160048" tag="isSpecification" value="false"/>
-                    <UML:TaggedValue xmi.id="32160012" tag="ea_stype" value="Class"/>
-                    <UML:TaggedValue xmi.id="32159976" tag="ea_ntype" value="0"/>
-                    <UML:TaggedValue xmi.id="32180412" tag="version" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32180376" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
-                    <UML:TaggedValue xmi.id="32180340" tag="date_created" value="2006-06-27 08:34:23"/>
-                    <UML:TaggedValue xmi.id="32180304" tag="date_modified" value="2006-06-27 08:34:26"/>
-                    <UML:TaggedValue xmi.id="32180268" tag="gentype" value="Java"/>
-                    <UML:TaggedValue xmi.id="32180232" tag="tagged" value="0"/>
-                    <UML:TaggedValue xmi.id="32180196" tag="package_name" value="HouseMetamodel"/>
-                    <UML:TaggedValue xmi.id="32180160" tag="phase" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32180124" tag="complexity" value="1"/>
-                    <UML:TaggedValue xmi.id="32180088" tag="status" value="Proposed"/>
-                    <UML:TaggedValue xmi.id="32180052" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
-                    <UML:TaggedValue xmi.id="32179728" tag="ea_stype" value="Class"/>
+                    <UML:TaggedValue xmi.id="32878800" tag="isSpecification" value="false"/>
+                    <UML:TaggedValue xmi.id="32891844" tag="ea_stype" value="Class"/>
+                    <UML:TaggedValue xmi.id="32878740" tag="ea_ntype" value="0"/>
+                    <UML:TaggedValue xmi.id="32878704" tag="version" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32878668" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
+                    <UML:TaggedValue xmi.id="32878632" tag="date_created" value="2006-06-27 08:34:23"/>
+                    <UML:TaggedValue xmi.id="32878596" tag="date_modified" value="2006-06-27 08:34:26"/>
+                    <UML:TaggedValue xmi.id="32878560" tag="gentype" value="Java"/>
+                    <UML:TaggedValue xmi.id="32878524" tag="tagged" value="0"/>
+                    <UML:TaggedValue xmi.id="32878488" tag="package_name" value="HouseMetamodel"/>
+                    <UML:TaggedValue xmi.id="32878452" tag="phase" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32878416" tag="complexity" value="1"/>
+                    <UML:TaggedValue xmi.id="32878380" tag="status" value="Proposed"/>
+                    <UML:TaggedValue xmi.id="32878344" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                    <UML:TaggedValue xmi.id="32878020" tag="ea_stype" value="Class"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Class>
-                <UML:Comment xmi.id="32057808" visibility="public" presentation="32177472">
+                <UML:Comment xmi.id="16068456" visibility="public" presentation="32875212">
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32177376" tag="isSpecification" value="false"/>
-                    <UML:TaggedValue xmi.id="32177340" tag="ea_stype" value="Note"/>
-                    <UML:TaggedValue xmi.id="32177304" tag="ea_ntype" value="1"/>
-                    <UML:TaggedValue xmi.id="32177268" tag="version" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32177232" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
-                    <UML:TaggedValue xmi.id="32177196" tag="date_created" value="2006-07-07 08:08:53"/>
-                    <UML:TaggedValue xmi.id="32177160" tag="date_modified" value="2006-07-07 08:09:48"/>
-                    <UML:TaggedValue xmi.id="32177124" tag="gentype" value="<none>"/>
-                    <UML:TaggedValue xmi.id="32177088" tag="tagged" value="0"/>
-                    <UML:TaggedValue xmi.id="32177052" tag="package_name" value="HouseMetamodel"/>
-                    <UML:TaggedValue xmi.id="32177016" tag="phase" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32176980" tag="complexity" value="1"/>
-                    <UML:TaggedValue xmi.id="32176944" tag="documentation" value="this aggregation is navigable from room to house (EA does not show it)"/>
-                    <UML:TaggedValue xmi.id="32176908" tag="status" value="Proposed"/>
-                    <UML:TaggedValue xmi.id="32176872" tag="relatedlinks" value="idref1=EAID_F15A2B25_0DA9_4203_8FC9_25645610B5E5;"/>
-                    <UML:TaggedValue xmi.id="32176836" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                    <UML:TaggedValue xmi.id="32875092" tag="isSpecification" value="false"/>
+                    <UML:TaggedValue xmi.id="32875056" tag="ea_stype" value="Note"/>
+                    <UML:TaggedValue xmi.id="32875020" tag="ea_ntype" value="1"/>
+                    <UML:TaggedValue xmi.id="32874984" tag="version" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32874948" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
+                    <UML:TaggedValue xmi.id="32874912" tag="date_created" value="2006-07-07 08:08:53"/>
+                    <UML:TaggedValue xmi.id="32874876" tag="date_modified" value="2006-07-07 08:09:48"/>
+                    <UML:TaggedValue xmi.id="32874840" tag="gentype" value="<none>"/>
+                    <UML:TaggedValue xmi.id="32874804" tag="tagged" value="0"/>
+                    <UML:TaggedValue xmi.id="32874768" tag="package_name" value="HouseMetamodel"/>
+                    <UML:TaggedValue xmi.id="32874732" tag="phase" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32874696" tag="complexity" value="1"/>
+                    <UML:TaggedValue xmi.id="32874660" tag="documentation" value="this aggregation is navigable from room to house (EA does not show it)"/>
+                    <UML:TaggedValue xmi.id="32874624" tag="status" value="Proposed"/>
+                    <UML:TaggedValue xmi.id="32874588" tag="relatedlinks" value="idref1=EAID_F15A2B25_0DA9_4203_8FC9_25645610B5E5;"/>
+                    <UML:TaggedValue xmi.id="32874552" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Comment>
-                <UML:Class xmi.id="EAID_32056896" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="MeetingPlace" visibility="public" presentation="32174124">
+                <UML:Class xmi.id="EAID_16049028" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="MeetingPlace" visibility="public" presentation="32862852">
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32174028" tag="isSpecification" value="false"/>
-                    <UML:TaggedValue xmi.id="32173992" tag="ea_stype" value="Class"/>
-                    <UML:TaggedValue xmi.id="32173956" tag="ea_ntype" value="0"/>
-                    <UML:TaggedValue xmi.id="32173920" tag="version" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32173884" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
-                    <UML:TaggedValue xmi.id="32173848" tag="date_created" value="2006-07-12 08:40:46"/>
-                    <UML:TaggedValue xmi.id="32173812" tag="date_modified" value="2007-06-14 08:22:21"/>
-                    <UML:TaggedValue xmi.id="32173776" tag="gentype" value="Java"/>
-                    <UML:TaggedValue xmi.id="32173740" tag="tagged" value="0"/>
-                    <UML:TaggedValue xmi.id="32173704" tag="package_name" value="HouseMetamodel"/>
-                    <UML:TaggedValue xmi.id="32173668" tag="phase" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32173632" tag="complexity" value="1"/>
-                    <UML:TaggedValue xmi.id="32173596" tag="status" value="Proposed"/>
-                    <UML:TaggedValue xmi.id="32173560" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
-                    <UML:TaggedValue xmi.id="32173236" tag="ea_stype" value="Class"/>
+                    <UML:TaggedValue xmi.id="32862708" tag="isSpecification" value="false"/>
+                    <UML:TaggedValue xmi.id="32862672" tag="ea_stype" value="Class"/>
+                    <UML:TaggedValue xmi.id="32862636" tag="ea_ntype" value="0"/>
+                    <UML:TaggedValue xmi.id="32862600" tag="version" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32862564" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
+                    <UML:TaggedValue xmi.id="32862528" tag="date_created" value="2006-07-12 08:40:46"/>
+                    <UML:TaggedValue xmi.id="32862492" tag="date_modified" value="2007-06-14 08:22:21"/>
+                    <UML:TaggedValue xmi.id="32862456" tag="gentype" value="Java"/>
+                    <UML:TaggedValue xmi.id="32862408" tag="tagged" value="0"/>
+                    <UML:TaggedValue xmi.id="32862372" tag="package_name" value="HouseMetamodel"/>
+                    <UML:TaggedValue xmi.id="32862336" tag="phase" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32862300" tag="complexity" value="1"/>
+                    <UML:TaggedValue xmi.id="32862264" tag="status" value="Proposed"/>
+                    <UML:TaggedValue xmi.id="32862228" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                    <UML:TaggedValue xmi.id="32861904" tag="ea_stype" value="Class"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Class>
-                <UML:Generalization xmi.id="EAID_32056860" visibility="public" supertype="EAID_32056896" subtype="EAID_32190348" presentation="32191344 32192112">
+                <UML:Generalization xmi.id="EAID_16048740" visibility="public" supertype="EAID_16049028" subtype="EAID_32849328" presentation="32858724 32858688">
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32191212" tag="style" value="3"/>
-                    <UML:TaggedValue xmi.id="32191176" tag="ea_type" value="Generalization"/>
-                    <UML:TaggedValue xmi.id="32191140" tag="direction" value="Source -> Destination"/>
-                    <UML:TaggedValue xmi.id="32191104" tag="linemode" value="3"/>
-                    <UML:TaggedValue xmi.id="32191068" tag="seqno" value="0"/>
-                    <UML:TaggedValue xmi.id="32191032" tag="headStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32190996" tag="lineStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32190960" tag="src_visibility" value="Public"/>
-                    <UML:TaggedValue xmi.id="32190924" tag="src_isOrdered" value="false"/>
-                    <UML:TaggedValue xmi.id="32190888" tag="src_isNavigable" value="false"/>
-                    <UML:TaggedValue xmi.id="32190852" tag="dst_visibility" value="Public"/>
-                    <UML:TaggedValue xmi.id="32190816" tag="dst_isOrdered" value="false"/>
-                    <UML:TaggedValue xmi.id="32190780" tag="dst_isNavigable" value="true"/>
-                    <UML:TaggedValue xmi.id="32190744" tag="$ea_xref_property" value="$XREFPROP=$XID={8AAF19F7-EC93-4dda-ADD1-69A07CC671D7}$XID;$NAM=CustomProperties$NAM;$TYP=connector property$TYP;$VIS=Public$VIS;$DES=@PROP=@NAME=isSubstitutable at ENDNAME;@TYPE=boolean at ENDTYPE;@VALU=@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;$DES;$CLT={E824691D-2AE7-4c9c-8408-881A2B85516F}$CLT;$SUP=<none>$SUP;$ENDXREF;"/>
-                    <UML:TaggedValue xmi.id="32190708" tag="privatedata5" value="SX=-24;SY=-16;"/>
-                    <UML:TaggedValue xmi.id="32190420" tag="ea_type" value="Generalization"/>
+                    <UML:TaggedValue xmi.id="32858568" tag="style" value="3"/>
+                    <UML:TaggedValue xmi.id="32858532" tag="ea_type" value="Generalization"/>
+                    <UML:TaggedValue xmi.id="32858484" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32858448" tag="linemode" value="3"/>
+                    <UML:TaggedValue xmi.id="32858412" tag="seqno" value="0"/>
+                    <UML:TaggedValue xmi.id="32858376" tag="headStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32858340" tag="lineStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32858304" tag="src_visibility" value="Public"/>
+                    <UML:TaggedValue xmi.id="32858268" tag="src_isOrdered" value="false"/>
+                    <UML:TaggedValue xmi.id="32858232" tag="src_isNavigable" value="false"/>
+                    <UML:TaggedValue xmi.id="32858196" tag="dst_visibility" value="Public"/>
+                    <UML:TaggedValue xmi.id="32858160" tag="dst_isOrdered" value="false"/>
+                    <UML:TaggedValue xmi.id="32858124" tag="dst_isNavigable" value="true"/>
+                    <UML:TaggedValue xmi.id="32849868" tag="$ea_xref_property" value="$XREFPROP=$XID={8AAF19F7-EC93-4dda-ADD1-69A07CC671D7}$XID;$NAM=CustomProperties$NAM;$TYP=connector property$TYP;$VIS=Public$VIS;$DES=@PROP=@NAME=isSubstitutable at ENDNAME;@TYPE=boolean at ENDTYPE;@VALU=@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;$DES;$CLT={E824691D-2AE7-4c9c-8408-881A2B85516F}$CLT;$SUP=<none>$SUP;$ENDXREF;"/>
+                    <UML:TaggedValue xmi.id="32849832" tag="privatedata5" value="SX=-24;SY=-16;"/>
+                    <UML:TaggedValue xmi.id="32849544" tag="ea_type" value="Generalization"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Generalization>
-                <UML:Interface xmi.id="32055240" isRoot="false" isLeaf="false" isAbstract="true" name="CookingPlace" visibility="public" presentation="32187684" supplierDependency="32073456" stereotype="32187840">
+                <UML:Interface xmi.id="16004808" isRoot="false" isLeaf="false" isAbstract="true" name="CookingPlace" visibility="public" presentation="32846136" supplierDependency="15973836" stereotype="32846304">
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32187576" tag="isSpecification" value="false"/>
-                    <UML:TaggedValue xmi.id="32187540" tag="ea_stype" value="Interface"/>
-                    <UML:TaggedValue xmi.id="32187504" tag="ea_ntype" value="0"/>
-                    <UML:TaggedValue xmi.id="32187468" tag="version" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32187432" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
-                    <UML:TaggedValue xmi.id="32187396" tag="date_created" value="2007-06-14 08:22:21"/>
-                    <UML:TaggedValue xmi.id="32187360" tag="date_modified" value="2007-06-14 08:23:36"/>
-                    <UML:TaggedValue xmi.id="32187324" tag="gentype" value="Java"/>
-                    <UML:TaggedValue xmi.id="32187288" tag="tagged" value="0"/>
-                    <UML:TaggedValue xmi.id="32187252" tag="package_name" value="HouseMetamodel"/>
-                    <UML:TaggedValue xmi.id="32187216" tag="phase" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32187180" tag="complexity" value="1"/>
-                    <UML:TaggedValue xmi.id="32187144" tag="status" value="Proposed"/>
-                    <UML:TaggedValue xmi.id="32187108" tag="stereotype" value="interface"/>
-                    <UML:TaggedValue xmi.id="32187072" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                    <UML:TaggedValue xmi.id="32846016" tag="isSpecification" value="false"/>
+                    <UML:TaggedValue xmi.id="32875884" tag="ea_stype" value="Interface"/>
+                    <UML:TaggedValue xmi.id="32845956" tag="ea_ntype" value="0"/>
+                    <UML:TaggedValue xmi.id="32845920" tag="version" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32845884" tag="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD"/>
+                    <UML:TaggedValue xmi.id="32845848" tag="date_created" value="2007-06-14 08:22:21"/>
+                    <UML:TaggedValue xmi.id="32845812" tag="date_modified" value="2007-06-14 08:23:36"/>
+                    <UML:TaggedValue xmi.id="32845776" tag="gentype" value="Java"/>
+                    <UML:TaggedValue xmi.id="32845740" tag="tagged" value="0"/>
+                    <UML:TaggedValue xmi.id="32845704" tag="package_name" value="HouseMetamodel"/>
+                    <UML:TaggedValue xmi.id="32845668" tag="phase" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32845632" tag="complexity" value="1"/>
+                    <UML:TaggedValue xmi.id="32845596" tag="status" value="Proposed"/>
+                    <UML:TaggedValue xmi.id="32845560" tag="stereotype" value="interface"/>
+                    <UML:TaggedValue xmi.id="32845524" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Interface>
-                <UML:Dependency xmi.id="32073456" name="Anonymous" visibility="public" supplier="32055240" client="EAID_32190348" presentation="32200848 32200812" stereotype="32184624">
+                <UML:Dependency xmi.id="15973836" name="Anonymous" visibility="public" supplier="16004808" client="EAID_32849328" presentation="32842392 32842356" stereotype="32842560">
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32200704" tag="style" value="3"/>
-                    <UML:TaggedValue xmi.id="32200668" tag="ea_type" value="Dependency"/>
-                    <UML:TaggedValue xmi.id="32200632" tag="direction" value="Source -> Destination"/>
-                    <UML:TaggedValue xmi.id="32200596" tag="linemode" value="3"/>
-                    <UML:TaggedValue xmi.id="32200560" tag="seqno" value="0"/>
-                    <UML:TaggedValue xmi.id="32200524" tag="stereotype" value="implements"/>
-                    <UML:TaggedValue xmi.id="32200488" tag="headStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32200452" tag="lineStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32200416" tag="conditional" value="«implements»"/>
-                    <UML:TaggedValue xmi.id="32200380" tag="src_visibility" value="Public"/>
-                    <UML:TaggedValue xmi.id="32200344" tag="src_aggregation" value="0"/>
-                    <UML:TaggedValue xmi.id="32200308" tag="src_isOrdered" value="false"/>
-                    <UML:TaggedValue xmi.id="32200272" tag="src_isNavigable" value="false"/>
-                    <UML:TaggedValue xmi.id="32200236" tag="src_containment" value="Unspecified"/>
-                    <UML:TaggedValue xmi.id="32200200" tag="dst_visibility" value="Public"/>
-                    <UML:TaggedValue xmi.id="32200164" tag="dst_aggregation" value="0"/>
-                    <UML:TaggedValue xmi.id="32200128" tag="dst_isOrdered" value="false"/>
-                    <UML:TaggedValue xmi.id="32200092" tag="dst_isNavigable" value="true"/>
-                    <UML:TaggedValue xmi.id="32200056" tag="dst_containment" value="Unspecified"/>
-                    <UML:TaggedValue xmi.id="32200020" tag="virtualInheritance" value="0"/>
-                    <UML:TaggedValue xmi.id="32199984" tag="mb" value="«implements»"/>
+                    <UML:TaggedValue xmi.id="32842236" tag="style" value="3"/>
+                    <UML:TaggedValue xmi.id="32842176" tag="ea_type" value="Dependency"/>
+                    <UML:TaggedValue xmi.id="32842140" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32842104" tag="linemode" value="3"/>
+                    <UML:TaggedValue xmi.id="32842068" tag="seqno" value="0"/>
+                    <UML:TaggedValue xmi.id="32842032" tag="stereotype" value="implements"/>
+                    <UML:TaggedValue xmi.id="32841996" tag="headStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32841960" tag="lineStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32841924" tag="conditional" value="«implements»"/>
+                    <UML:TaggedValue xmi.id="32841888" tag="src_visibility" value="Public"/>
+                    <UML:TaggedValue xmi.id="32841852" tag="src_aggregation" value="0"/>
+                    <UML:TaggedValue xmi.id="32841816" tag="src_isOrdered" value="false"/>
+                    <UML:TaggedValue xmi.id="32841780" tag="src_isNavigable" value="false"/>
+                    <UML:TaggedValue xmi.id="32841744" tag="src_containment" value="Unspecified"/>
+                    <UML:TaggedValue xmi.id="32833488" tag="dst_visibility" value="Public"/>
+                    <UML:TaggedValue xmi.id="32833452" tag="dst_aggregation" value="0"/>
+                    <UML:TaggedValue xmi.id="32833416" tag="dst_isOrdered" value="false"/>
+                    <UML:TaggedValue xmi.id="32833380" tag="dst_isNavigable" value="true"/>
+                    <UML:TaggedValue xmi.id="32833344" tag="dst_containment" value="Unspecified"/>
+                    <UML:TaggedValue xmi.id="32833308" tag="virtualInheritance" value="0"/>
+                    <UML:TaggedValue xmi.id="32833272" tag="mb" value="«implements»"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Dependency>
-                <UML:Package xmi.id="EAPK_32072172" name="Rooms" visibility="public" isRoot="true" isLeaf="false" isAbstract="false">
+                <UML:Package xmi.id="EAPK_15957792" name="Rooms" visibility="public" isRoot="true" isLeaf="false" isAbstract="false">
                   <UML:Namespace.ownedElement >
-                    <UML:Class xmi.id="EAID_32196828" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="Room" visibility="public" presentation="32410212">
+                    <UML:Class xmi.id="EAID_32829180" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="Room" visibility="public" presentation="32452692">
                       <UML:Classifier.feature >
-                        <UML:Operation xmi.id="32412180" concurrency="sequential" isQuery="false" ownerScope="instance" name="enter" visibility="public">
+                        <UML:Operation xmi.id="32454912" concurrency="sequential" isQuery="false" ownerScope="instance" name="enter" visibility="public">
                           <UML:BehavioralFeature.parameter >
-                            <UML:Parameter xmi.id="32620848" kind="return" visibility="public" type="31972764">
+                            <UML:Parameter xmi.id="32195304" kind="return" visibility="public" type="19800192">
                               <UML:Parameter.defaultValue >
-                                <UML:Expression xmi.id="32739180"/>
+                                <UML:Expression xmi.id="31980948"/>
                               </UML:Parameter.defaultValue>
                               <UML:ModelElement.taggedValue >
-                                <UML:TaggedValue xmi.id="32738844" tag="pos" value="0"/>
-                                <UML:TaggedValue xmi.id="32738808" tag="type" value="void"/>
-                                <UML:TaggedValue xmi.id="32738772" tag="const" value="0"/>
-                                <UML:TaggedValue xmi.id="32738736" tag="ea_guid" value="{A8C01177-4523-44c4-87F7-F2B8F9F3C915}"/>
+                                <UML:TaggedValue xmi.id="31980564" tag="pos" value="0"/>
+                                <UML:TaggedValue xmi.id="31980528" tag="type" value="void"/>
+                                <UML:TaggedValue xmi.id="31980492" tag="const" value="0"/>
+                                <UML:TaggedValue xmi.id="31980456" tag="ea_guid" value="{A8C01177-4523-44c4-87F7-F2B8F9F3C915}"/>
                               </UML:ModelElement.taggedValue>
                             </UML:Parameter>
                           </UML:BehavioralFeature.parameter>
                           <UML:ModelElement.taggedValue >
-                            <UML:TaggedValue xmi.id="32619636" tag="type" value="void"/>
-                            <UML:TaggedValue xmi.id="32619600" tag="const" value="false"/>
-                            <UML:TaggedValue xmi.id="32619564" tag="synchronised" value="0"/>
-                            <UML:TaggedValue xmi.id="32619528" tag="concurrency" value="Sequential"/>
-                            <UML:TaggedValue xmi.id="32619492" tag="position" value="0"/>
-                            <UML:TaggedValue xmi.id="32619456" tag="returnarray" value="0"/>
-                            <UML:TaggedValue xmi.id="32619420" tag="pure" value="0"/>
-                            <UML:TaggedValue xmi.id="32619384" tag="ea_guid" value="{A8C01177-4523-44c4-87F7-F2B8F9F3C915}"/>
+                            <UML:TaggedValue xmi.id="32177628" tag="type" value="void"/>
+                            <UML:TaggedValue xmi.id="32177592" tag="const" value="false"/>
+                            <UML:TaggedValue xmi.id="32177556" tag="synchronised" value="0"/>
+                            <UML:TaggedValue xmi.id="32177520" tag="concurrency" value="Sequential"/>
+                            <UML:TaggedValue xmi.id="32177484" tag="position" value="0"/>
+                            <UML:TaggedValue xmi.id="32177448" tag="returnarray" value="0"/>
+                            <UML:TaggedValue xmi.id="32177412" tag="pure" value="0"/>
+                            <UML:TaggedValue xmi.id="32177376" tag="ea_guid" value="{A8C01177-4523-44c4-87F7-F2B8F9F3C915}"/>
                           </UML:ModelElement.taggedValue>
                         </UML:Operation>
                       </UML:Classifier.feature>
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32410104" tag="isSpecification" value="false"/>
-                        <UML:TaggedValue xmi.id="32410068" tag="ea_stype" value="Class"/>
-                        <UML:TaggedValue xmi.id="32410032" tag="ea_ntype" value="0"/>
-                        <UML:TaggedValue xmi.id="32409996" tag="version" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32409960" tag="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
-                        <UML:TaggedValue xmi.id="32409924" tag="date_created" value="2005-09-16 19:52:28"/>
-                        <UML:TaggedValue xmi.id="32430372" tag="date_modified" value="2006-06-22 21:15:25"/>
-                        <UML:TaggedValue xmi.id="32430336" tag="gentype" value="Java"/>
-                        <UML:TaggedValue xmi.id="32430300" tag="tagged" value="0"/>
-                        <UML:TaggedValue xmi.id="32430264" tag="package_name" value="Rooms"/>
-                        <UML:TaggedValue xmi.id="32430228" tag="phase" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32430192" tag="complexity" value="1"/>
-                        <UML:TaggedValue xmi.id="32430156" tag="status" value="Proposed"/>
-                        <UML:TaggedValue xmi.id="32430120" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
-                        <UML:TaggedValue xmi.id="32429796" tag="ea_stype" value="Class"/>
+                        <UML:TaggedValue xmi.id="32452572" tag="isSpecification" value="false"/>
+                        <UML:TaggedValue xmi.id="32452536" tag="ea_stype" value="Class"/>
+                        <UML:TaggedValue xmi.id="32452500" tag="ea_ntype" value="0"/>
+                        <UML:TaggedValue xmi.id="32452464" tag="version" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32452428" tag="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
+                        <UML:TaggedValue xmi.id="32452392" tag="date_created" value="2005-09-16 19:52:28"/>
+                        <UML:TaggedValue xmi.id="32452356" tag="date_modified" value="2006-06-22 21:15:25"/>
+                        <UML:TaggedValue xmi.id="32452320" tag="gentype" value="Java"/>
+                        <UML:TaggedValue xmi.id="32452284" tag="tagged" value="0"/>
+                        <UML:TaggedValue xmi.id="32452248" tag="package_name" value="Rooms"/>
+                        <UML:TaggedValue xmi.id="32452212" tag="phase" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32452176" tag="complexity" value="1"/>
+                        <UML:TaggedValue xmi.id="32452140" tag="status" value="Proposed"/>
+                        <UML:TaggedValue xmi.id="32452104" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                        <UML:TaggedValue xmi.id="32451780" tag="ea_stype" value="Class"/>
                       </UML:ModelElement.taggedValue>
                     </UML:Class>
-                    <UML:Generalization xmi.id="EAID_32196792" visibility="public" supertype="EAID_32196828" subtype="EAID_32196720" presentation="32427444 32428212">
+                    <UML:Generalization xmi.id="EAID_32829144" visibility="public" supertype="EAID_32829180" subtype="EAID_32829072" presentation="32448564 32448528">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32427312" tag="style" value="3"/>
-                        <UML:TaggedValue xmi.id="32427276" tag="ea_type" value="Generalization"/>
-                        <UML:TaggedValue xmi.id="32427240" tag="direction" value="Source -> Destination"/>
-                        <UML:TaggedValue xmi.id="32427204" tag="linemode" value="3"/>
-                        <UML:TaggedValue xmi.id="32427168" tag="seqno" value="0"/>
-                        <UML:TaggedValue xmi.id="32427132" tag="headStyle" value="0"/>
-                        <UML:TaggedValue xmi.id="32427096" tag="lineStyle" value="0"/>
-                        <UML:TaggedValue xmi.id="32427060" tag="src_visibility" value="Public"/>
-                        <UML:TaggedValue xmi.id="32427024" tag="src_isOrdered" value="false"/>
-                        <UML:TaggedValue xmi.id="32426988" tag="src_isNavigable" value="false"/>
-                        <UML:TaggedValue xmi.id="32426952" tag="dst_visibility" value="Public"/>
-                        <UML:TaggedValue xmi.id="32426916" tag="dst_isOrdered" value="false"/>
-                        <UML:TaggedValue xmi.id="32426880" tag="dst_isNavigable" value="true"/>
-                        <UML:TaggedValue xmi.id="32426844" tag="$ea_xref_property" value="$XREFPROP=$XID={DF243A69-1029-4c4c-A1A0-C821A1DF9623}$XID;$NAM=CustomProperties$NAM;$TYP=connector property$TYP;$VIS=Public$VIS;$DES=@PROP=@NAME=isSubstitutable at ENDNAME;@TYPE=boolean at ENDTYPE;@VALU=@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;$DES;$CLT={03052911-3625-4472-8C6B-5E1742FED753}$CLT;$SUP=<none>$SUP;$ENDXREF;"/>
-                        <UML:TaggedValue xmi.id="32426556" tag="ea_type" value="Generalization"/>
+                        <UML:TaggedValue xmi.id="32426508" tag="style" value="3"/>
+                        <UML:TaggedValue xmi.id="32427000" tag="ea_type" value="Generalization"/>
+                        <UML:TaggedValue xmi.id="32427336" tag="direction" value="Source -> Destination"/>
+                        <UML:TaggedValue xmi.id="32428944" tag="linemode" value="3"/>
+                        <UML:TaggedValue xmi.id="32429280" tag="seqno" value="0"/>
+                        <UML:TaggedValue xmi.id="32430396" tag="headStyle" value="0"/>
+                        <UML:TaggedValue xmi.id="32430732" tag="lineStyle" value="0"/>
+                        <UML:TaggedValue xmi.id="32431860" tag="src_visibility" value="Public"/>
+                        <UML:TaggedValue xmi.id="32432064" tag="src_isOrdered" value="false"/>
+                        <UML:TaggedValue xmi.id="32432028" tag="src_isNavigable" value="false"/>
+                        <UML:TaggedValue xmi.id="32431992" tag="dst_visibility" value="Public"/>
+                        <UML:TaggedValue xmi.id="32431956" tag="dst_isOrdered" value="false"/>
+                        <UML:TaggedValue xmi.id="32431908" tag="dst_isNavigable" value="true"/>
+                        <UML:TaggedValue xmi.id="32431872" tag="$ea_xref_property" value="$XREFPROP=$XID={DF243A69-1029-4c4c-A1A0-C821A1DF9623}$XID;$NAM=CustomProperties$NAM;$TYP=connector property$TYP;$VIS=Public$VIS;$DES=@PROP=@NAME=isSubstitutable at ENDNAME;@TYPE=boolean at ENDTYPE;@VALU=@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;$DES;$CLT={03052911-3625-4472-8C6B-5E1742FED753}$CLT;$SUP=<none>$SUP;$ENDXREF;"/>
+                        <UML:TaggedValue xmi.id="32431548" tag="ea_type" value="Generalization"/>
                       </UML:ModelElement.taggedValue>
                     </UML:Generalization>
-                    <UML:Generalization xmi.id="EAID_32196756" visibility="public" supertype="EAID_32196828" subtype="EAID_32190348" presentation="32424552 32425320">
+                    <UML:Generalization xmi.id="EAID_32829108" visibility="public" supertype="EAID_32829180" subtype="EAID_32849328" presentation="32428692 32428656">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32424420" tag="style" value="3"/>
-                        <UML:TaggedValue xmi.id="32424384" tag="ea_type" value="Generalization"/>
-                        <UML:TaggedValue xmi.id="32424348" tag="direction" value="Source -> Destination"/>
-                        <UML:TaggedValue xmi.id="32424312" tag="linemode" value="3"/>
-                        <UML:TaggedValue xmi.id="32424276" tag="seqno" value="0"/>
-                        <UML:TaggedValue xmi.id="32424240" tag="headStyle" value="0"/>
-                        <UML:TaggedValue xmi.id="32424204" tag="lineStyle" value="0"/>
-                        <UML:TaggedValue xmi.id="32424168" tag="src_visibility" value="Public"/>
-                        <UML:TaggedValue xmi.id="32424132" tag="src_isOrdered" value="false"/>
-                        <UML:TaggedValue xmi.id="32424096" tag="src_isNavigable" value="false"/>
-                        <UML:TaggedValue xmi.id="32424060" tag="dst_visibility" value="Public"/>
-                        <UML:TaggedValue xmi.id="32424024" tag="dst_isOrdered" value="false"/>
-                        <UML:TaggedValue xmi.id="32423988" tag="dst_isNavigable" value="true"/>
-                        <UML:TaggedValue xmi.id="32423952" tag="$ea_xref_property" value="$XREFPROP=$XID={DB1C706A-470A-45ed-89DA-601821419545}$XID;$NAM=CustomProperties$NAM;$TYP=connector property$TYP;$VIS=Public$VIS;$DES=@PROP=@NAME=isSubstitutable at ENDNAME;@TYPE=boolean at ENDTYPE;@VALU=@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;$DES;$CLT={C3D18D92-3A5C-4112-9958-926A259BAE24}$CLT;$SUP=<none>$SUP;$ENDXREF;"/>
-                        <UML:TaggedValue xmi.id="32423916" tag="privatedata5" value="EX=37;EY=3;"/>
-                        <UML:TaggedValue xmi.id="32423628" tag="ea_type" value="Generalization"/>
+                        <UML:TaggedValue xmi.id="32428536" tag="style" value="3"/>
+                        <UML:TaggedValue xmi.id="32428500" tag="ea_type" value="Generalization"/>
+                        <UML:TaggedValue xmi.id="32428464" tag="direction" value="Source -> Destination"/>
+                        <UML:TaggedValue xmi.id="32428428" tag="linemode" value="3"/>
+                        <UML:TaggedValue xmi.id="32428392" tag="seqno" value="0"/>
+                        <UML:TaggedValue xmi.id="32428356" tag="headStyle" value="0"/>
+                        <UML:TaggedValue xmi.id="32428320" tag="lineStyle" value="0"/>
+                        <UML:TaggedValue xmi.id="32428284" tag="src_visibility" value="Public"/>
+                        <UML:TaggedValue xmi.id="32428248" tag="src_isOrdered" value="false"/>
+                        <UML:TaggedValue xmi.id="32428212" tag="src_isNavigable" value="false"/>
+                        <UML:TaggedValue xmi.id="32428176" tag="dst_visibility" value="Public"/>
+                        <UML:TaggedValue xmi.id="32428140" tag="dst_isOrdered" value="false"/>
+                        <UML:TaggedValue xmi.id="32428104" tag="dst_isNavigable" value="true"/>
+                        <UML:TaggedValue xmi.id="32428068" tag="$ea_xref_property" value="$XREFPROP=$XID={DB1C706A-470A-45ed-89DA-601821419545}$XID;$NAM=CustomProperties$NAM;$TYP=connector property$TYP;$VIS=Public$VIS;$DES=@PROP=@NAME=isSubstitutable at ENDNAME;@TYPE=boolean at ENDTYPE;@VALU=@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;$DES;$CLT={C3D18D92-3A5C-4112-9958-926A259BAE24}$CLT;$SUP=<none>$SUP;$ENDXREF;"/>
+                        <UML:TaggedValue xmi.id="32428032" tag="privatedata5" value="EX=37;EY=3;"/>
+                        <UML:TaggedValue xmi.id="32427744" tag="ea_type" value="Generalization"/>
                       </UML:ModelElement.taggedValue>
                     </UML:Generalization>
-                    <UML:Class xmi.id="EAID_32190348" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="Kitchen" visibility="public" presentation="32393244" clientDependency="32073456">
+                    <UML:Class xmi.id="EAID_32849328" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="Kitchen" visibility="public" presentation="32518980" clientDependency="15973836">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32393148" tag="isSpecification" value="false"/>
-                        <UML:TaggedValue xmi.id="32393112" tag="ea_stype" value="Class"/>
-                        <UML:TaggedValue xmi.id="32393076" tag="ea_ntype" value="0"/>
-                        <UML:TaggedValue xmi.id="32393040" tag="version" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32393004" tag="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
-                        <UML:TaggedValue xmi.id="32392968" tag="date_created" value="2005-11-30 19:26:13"/>
-                        <UML:TaggedValue xmi.id="32392932" tag="date_modified" value="2006-06-22 21:15:34"/>
-                        <UML:TaggedValue xmi.id="32392896" tag="gentype" value="Java"/>
-                        <UML:TaggedValue xmi.id="32392860" tag="tagged" value="0"/>
-                        <UML:TaggedValue xmi.id="32392824" tag="package_name" value="Rooms"/>
-                        <UML:TaggedValue xmi.id="32392788" tag="phase" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32392752" tag="complexity" value="1"/>
-                        <UML:TaggedValue xmi.id="32392716" tag="status" value="Proposed"/>
-                        <UML:TaggedValue xmi.id="32392680" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
-                        <UML:TaggedValue xmi.id="32392356" tag="ea_stype" value="Class"/>
+                        <UML:TaggedValue xmi.id="32518788" tag="isSpecification" value="false"/>
+                        <UML:TaggedValue xmi.id="32518740" tag="ea_stype" value="Class"/>
+                        <UML:TaggedValue xmi.id="32518680" tag="ea_ntype" value="0"/>
+                        <UML:TaggedValue xmi.id="32518632" tag="version" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32518572" tag="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
+                        <UML:TaggedValue xmi.id="32518524" tag="date_created" value="2005-11-30 19:26:13"/>
+                        <UML:TaggedValue xmi.id="32682984" tag="date_modified" value="2006-06-22 21:15:34"/>
+                        <UML:TaggedValue xmi.id="32518440" tag="gentype" value="Java"/>
+                        <UML:TaggedValue xmi.id="32518404" tag="tagged" value="0"/>
+                        <UML:TaggedValue xmi.id="32518368" tag="package_name" value="Rooms"/>
+                        <UML:TaggedValue xmi.id="32518332" tag="phase" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32518296" tag="complexity" value="1"/>
+                        <UML:TaggedValue xmi.id="32518260" tag="status" value="Proposed"/>
+                        <UML:TaggedValue xmi.id="32518224" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                        <UML:TaggedValue xmi.id="32517888" tag="ea_stype" value="Class"/>
                       </UML:ModelElement.taggedValue>
                     </UML:Class>
-                    <UML:Class xmi.id="EAID_32196720" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="Bathroom" visibility="public" presentation="32470092">
+                    <UML:Class xmi.id="EAID_32829072" isActive="false" isRoot="false" isLeaf="false" isAbstract="false" name="Bathroom" visibility="public" presentation="32424024">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32469996" tag="isSpecification" value="false"/>
-                        <UML:TaggedValue xmi.id="32469960" tag="ea_stype" value="Class"/>
-                        <UML:TaggedValue xmi.id="32469924" tag="ea_ntype" value="0"/>
-                        <UML:TaggedValue xmi.id="32469888" tag="version" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32469852" tag="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
-                        <UML:TaggedValue xmi.id="32469816" tag="date_created" value="2006-06-27 08:32:25"/>
-                        <UML:TaggedValue xmi.id="32469780" tag="date_modified" value="2006-06-27 08:34:23"/>
-                        <UML:TaggedValue xmi.id="32469744" tag="gentype" value="Java"/>
-                        <UML:TaggedValue xmi.id="32469708" tag="tagged" value="0"/>
-                        <UML:TaggedValue xmi.id="32469672" tag="package_name" value="Rooms"/>
-                        <UML:TaggedValue xmi.id="32469636" tag="phase" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32469600" tag="complexity" value="1"/>
-                        <UML:TaggedValue xmi.id="32469564" tag="status" value="Proposed"/>
-                        <UML:TaggedValue xmi.id="32469528" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
-                        <UML:TaggedValue xmi.id="32469204" tag="ea_stype" value="Class"/>
+                        <UML:TaggedValue xmi.id="32410596" tag="isSpecification" value="false"/>
+                        <UML:TaggedValue xmi.id="32411088" tag="ea_stype" value="Class"/>
+                        <UML:TaggedValue xmi.id="32411424" tag="ea_ntype" value="0"/>
+                        <UML:TaggedValue xmi.id="32415696" tag="version" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32415660" tag="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08"/>
+                        <UML:TaggedValue xmi.id="32415624" tag="date_created" value="2006-06-27 08:32:25"/>
+                        <UML:TaggedValue xmi.id="32415588" tag="date_modified" value="2006-06-27 08:34:23"/>
+                        <UML:TaggedValue xmi.id="32415552" tag="gentype" value="Java"/>
+                        <UML:TaggedValue xmi.id="32415516" tag="tagged" value="0"/>
+                        <UML:TaggedValue xmi.id="32415480" tag="package_name" value="Rooms"/>
+                        <UML:TaggedValue xmi.id="32415444" tag="phase" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32415408" tag="complexity" value="1"/>
+                        <UML:TaggedValue xmi.id="32415372" tag="status" value="Proposed"/>
+                        <UML:TaggedValue xmi.id="32415336" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                        <UML:TaggedValue xmi.id="32414976" tag="ea_stype" value="Class"/>
                       </UML:ModelElement.taggedValue>
                     </UML:Class>
                   </UML:Namespace.ownedElement>
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32197356" tag="created" value="2006-06-23 00:00:00"/>
-                    <UML:TaggedValue xmi.id="32198676" tag="modified" value="2006-06-23 00:00:00"/>
-                    <UML:TaggedValue xmi.id="32197296" tag="iscontrolled" value="FALSE"/>
-                    <UML:TaggedValue xmi.id="32197260" tag="isprotected" value="FALSE"/>
-                    <UML:TaggedValue xmi.id="32197224" tag="usedtd" value="FALSE"/>
-                    <UML:TaggedValue xmi.id="32197188" tag="logxml" value="FALSE"/>
-                    <UML:TaggedValue xmi.id="32197152" tag="phase" value="1.0"/>
-                    <UML:TaggedValue xmi.id="32197116" tag="status" value="Proposed"/>
-                    <UML:TaggedValue xmi.id="32197080" tag="complexity" value="1"/>
-                    <UML:TaggedValue xmi.id="32197044" tag="ea_stype" value="Public"/>
+                    <UML:TaggedValue xmi.id="32829732" tag="created" value="2006-06-23 00:00:00"/>
+                    <UML:TaggedValue xmi.id="32829696" tag="modified" value="2006-06-23 00:00:00"/>
+                    <UML:TaggedValue xmi.id="32829660" tag="iscontrolled" value="FALSE"/>
+                    <UML:TaggedValue xmi.id="32829624" tag="isprotected" value="FALSE"/>
+                    <UML:TaggedValue xmi.id="32829588" tag="usedtd" value="FALSE"/>
+                    <UML:TaggedValue xmi.id="32829552" tag="logxml" value="FALSE"/>
+                    <UML:TaggedValue xmi.id="32829516" tag="phase" value="1.0"/>
+                    <UML:TaggedValue xmi.id="32829480" tag="status" value="Proposed"/>
+                    <UML:TaggedValue xmi.id="32829444" tag="complexity" value="1"/>
+                    <UML:TaggedValue xmi.id="32829408" tag="ea_stype" value="Public"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Package>
               </UML:Namespace.ownedElement>
               <UML:ModelElement.taggedValue >
-                <UML:TaggedValue xmi.id="32060832" tag="created" value="2006-06-26 00:00:00"/>
-                <UML:TaggedValue xmi.id="32060796" tag="modified" value="2006-06-26 00:00:00"/>
-                <UML:TaggedValue xmi.id="32060760" tag="iscontrolled" value="FALSE"/>
-                <UML:TaggedValue xmi.id="32060724" tag="isprotected" value="FALSE"/>
-                <UML:TaggedValue xmi.id="32060688" tag="usedtd" value="FALSE"/>
-                <UML:TaggedValue xmi.id="32060652" tag="logxml" value="FALSE"/>
-                <UML:TaggedValue xmi.id="32060616" tag="ea_package_id" value="44"/>
-                <UML:TaggedValue xmi.id="32060580" tag="phase" value="1.0"/>
-                <UML:TaggedValue xmi.id="32060544" tag="status" value="Proposed"/>
-                <UML:TaggedValue xmi.id="32060508" tag="complexity" value="1"/>
-                <UML:TaggedValue xmi.id="32060472" tag="ea_stype" value="Public"/>
+                <UML:TaggedValue xmi.id="19535112" tag="created" value="2006-06-26 00:00:00"/>
+                <UML:TaggedValue xmi.id="19534464" tag="modified" value="2006-06-26 00:00:00"/>
+                <UML:TaggedValue xmi.id="19534392" tag="iscontrolled" value="FALSE"/>
+                <UML:TaggedValue xmi.id="19533960" tag="isprotected" value="FALSE"/>
+                <UML:TaggedValue xmi.id="19533696" tag="usedtd" value="FALSE"/>
+                <UML:TaggedValue xmi.id="19533600" tag="logxml" value="FALSE"/>
+                <UML:TaggedValue xmi.id="19533336" tag="ea_package_id" value="44"/>
+                <UML:TaggedValue xmi.id="19532136" tag="phase" value="1.0"/>
+                <UML:TaggedValue xmi.id="19531584" tag="status" value="Proposed"/>
+                <UML:TaggedValue xmi.id="19531440" tag="complexity" value="1"/>
+                <UML:TaggedValue xmi.id="19531068" tag="ea_stype" value="Public"/>
               </UML:ModelElement.taggedValue>
             </UML:Package>
-            <UML:Package xmi.id="EAPK_31947888" name="HouseExampleModel" visibility="public" isRoot="true" isLeaf="false" isAbstract="false">
+            <UML:Package xmi.id="EAPK_20154276" name="HouseExampleModel" visibility="public" isRoot="true" isLeaf="false" isAbstract="false">
               <UML:Namespace.ownedElement >
-                <UML:Collaboration xmi.id="32068908" name="Collaborations" visibility="public">
+                <UML:Collaboration xmi.id="33035928" name="Collaborations" visibility="public">
                   <UML:Namespace.ownedElement >
-                    <UML:ClassifierRole xmi.id="32205540" name="SomeonesHouse" visibility="public" base="EAID_31977624" presentation="32464500">
+                    <UML:ClassifierRole xmi.id="32813184" name="SomeonesHouse" visibility="public" base="EAID_20082216" presentation="32409156">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32464392" tag="isSpecification" value="false"/>
-                        <UML:TaggedValue xmi.id="32464356" tag="ea_stype" value="Object"/>
-                        <UML:TaggedValue xmi.id="32464320" tag="ea_ntype" value="0"/>
-                        <UML:TaggedValue xmi.id="32464284" tag="version" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32464248" tag="classifier" value="EAID_436D81AD_A9B0_44d8_8AD1_86BB0808DA32"/>
-                        <UML:TaggedValue xmi.id="32464212" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
-                        <UML:TaggedValue xmi.id="32464176" tag="classname" value="House"/>
-                        <UML:TaggedValue xmi.id="32464140" tag="date_created" value="2006-07-20 18:35:22"/>
-                        <UML:TaggedValue xmi.id="32464104" tag="date_modified" value="2006-07-21 19:34:53"/>
-                        <UML:TaggedValue xmi.id="32464068" tag="gentype" value="Java"/>
-                        <UML:TaggedValue xmi.id="32464032" tag="tagged" value="0"/>
-                        <UML:TaggedValue xmi.id="32463996" tag="package_name" value="HouseExampleModel"/>
-                        <UML:TaggedValue xmi.id="32463960" tag="phase" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32463924" tag="complexity" value="1"/>
-                        <UML:TaggedValue xmi.id="32463888" tag="status" value="Proposed"/>
-                        <UML:TaggedValue xmi.id="32463852" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                        <UML:TaggedValue xmi.id="32409036" tag="isSpecification" value="false"/>
+                        <UML:TaggedValue xmi.id="32409000" tag="ea_stype" value="Object"/>
+                        <UML:TaggedValue xmi.id="32408964" tag="ea_ntype" value="0"/>
+                        <UML:TaggedValue xmi.id="32408928" tag="version" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32408892" tag="classifier" value="EAID_436D81AD_A9B0_44d8_8AD1_86BB0808DA32"/>
+                        <UML:TaggedValue xmi.id="32408856" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
+                        <UML:TaggedValue xmi.id="32408820" tag="classname" value="House"/>
+                        <UML:TaggedValue xmi.id="32408784" tag="date_created" value="2006-07-20 18:35:22"/>
+                        <UML:TaggedValue xmi.id="32408748" tag="date_modified" value="2006-07-21 19:34:53"/>
+                        <UML:TaggedValue xmi.id="32408712" tag="gentype" value="Java"/>
+                        <UML:TaggedValue xmi.id="32408676" tag="tagged" value="0"/>
+                        <UML:TaggedValue xmi.id="32408640" tag="package_name" value="HouseExampleModel"/>
+                        <UML:TaggedValue xmi.id="32408604" tag="phase" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32408568" tag="complexity" value="1"/>
+                        <UML:TaggedValue xmi.id="32408532" tag="status" value="Proposed"/>
+                        <UML:TaggedValue xmi.id="32408496" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                       </UML:ModelElement.taggedValue>
                     </UML:ClassifierRole>
-                    <UML:AssociationRole xmi.id="EAID_32195328" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32476932 32476896">
+                    <UML:AssociationRole xmi.id="EAID_32813148" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32396436 32396400">
                       <UML:Association.connection >
-                        <UML:AssociationEndRole xmi.id="EAID_32477244" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" visibility="public" type="32202804">
+                        <UML:AssociationEndRole xmi.id="EAID_32396784" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" visibility="public" type="32810004">
                           <UML:ModelElement.taggedValue >
-                            <UML:TaggedValue xmi.id="32660304" tag="containment" value="Unspecified"/>
+                            <UML:TaggedValue xmi.id="32105256" tag="containment" value="Unspecified"/>
                           </UML:ModelElement.taggedValue>
                         </UML:AssociationEndRole>
-                        <UML:AssociationEndRole xmi.id="EAID_32466456" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" name="home" visibility="public" type="32205540">
+                        <UML:AssociationEndRole xmi.id="EAID_32411436" isNavigable="true" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" name="home" visibility="public" type="32813184">
                           <UML:ModelElement.taggedValue >
-                            <UML:TaggedValue xmi.id="32654220" tag="containment" value="Unspecified"/>
+                            <UML:TaggedValue xmi.id="32123172" tag="containment" value="Unspecified"/>
                           </UML:ModelElement.taggedValue>
                         </UML:AssociationEndRole>
                       </UML:Association.connection>
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32476788" tag="style" value="3"/>
-                        <UML:TaggedValue xmi.id="32476752" tag="ea_type" value="Association"/>
-                        <UML:TaggedValue xmi.id="32476716" tag="direction" value="Unspecified"/>
-                        <UML:TaggedValue xmi.id="32476680" tag="linemode" value="3"/>
-                        <UML:TaggedValue xmi.id="32476644" tag="seqno" value="0"/>
-                        <UML:TaggedValue xmi.id="32476608" tag="headStyle" value="0"/>
-                        <UML:TaggedValue xmi.id="32476572" tag="lineStyle" value="0"/>
-                        <UML:TaggedValue xmi.id="32476536" tag="src_visibility" value="Public"/>
-                        <UML:TaggedValue xmi.id="32476500" tag="src_aggregation" value="0"/>
-                        <UML:TaggedValue xmi.id="32476464" tag="src_isOrdered" value="false"/>
-                        <UML:TaggedValue xmi.id="32476428" tag="src_isNavigable" value="true"/>
-                        <UML:TaggedValue xmi.id="32476392" tag="src_containment" value="Unspecified"/>
-                        <UML:TaggedValue xmi.id="32476356" tag="dst_visibility" value="Public"/>
-                        <UML:TaggedValue xmi.id="32476320" tag="dst_name" value="home"/>
-                        <UML:TaggedValue xmi.id="32476284" tag="dst_aggregation" value="0"/>
-                        <UML:TaggedValue xmi.id="32476248" tag="dst_isOrdered" value="false"/>
-                        <UML:TaggedValue xmi.id="32476212" tag="dst_isNavigable" value="true"/>
-                        <UML:TaggedValue xmi.id="32476176" tag="dst_containment" value="Unspecified"/>
-                        <UML:TaggedValue xmi.id="32476140" tag="virtualInheritance" value="0"/>
+                        <UML:TaggedValue xmi.id="32396208" tag="style" value="3"/>
+                        <UML:TaggedValue xmi.id="32396172" tag="ea_type" value="Association"/>
+                        <UML:TaggedValue xmi.id="32396136" tag="direction" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32396100" tag="linemode" value="3"/>
+                        <UML:TaggedValue xmi.id="32396064" tag="seqno" value="0"/>
+                        <UML:TaggedValue xmi.id="32396028" tag="headStyle" value="0"/>
+                        <UML:TaggedValue xmi.id="32395992" tag="lineStyle" value="0"/>
+                        <UML:TaggedValue xmi.id="32395956" tag="src_visibility" value="Public"/>
+                        <UML:TaggedValue xmi.id="32395920" tag="src_aggregation" value="0"/>
+                        <UML:TaggedValue xmi.id="32395884" tag="src_isOrdered" value="false"/>
+                        <UML:TaggedValue xmi.id="32395848" tag="src_isNavigable" value="true"/>
+                        <UML:TaggedValue xmi.id="32395812" tag="src_containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32395776" tag="dst_visibility" value="Public"/>
+                        <UML:TaggedValue xmi.id="32395740" tag="dst_name" value="home"/>
+                        <UML:TaggedValue xmi.id="32395704" tag="dst_aggregation" value="0"/>
+                        <UML:TaggedValue xmi.id="32395668" tag="dst_isOrdered" value="false"/>
+                        <UML:TaggedValue xmi.id="32395632" tag="dst_isNavigable" value="true"/>
+                        <UML:TaggedValue xmi.id="32395596" tag="dst_containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32395560" tag="virtualInheritance" value="0"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationRole>
-                    <UML:ClassifierRole xmi.id="32202912" name="GreenRoom" visibility="public" base="EAID_31977624" presentation="32473020">
+                    <UML:ClassifierRole xmi.id="32810148" name="GreenRoom" visibility="public" base="EAID_20082216" presentation="32391588">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32472924" tag="isSpecification" value="false"/>
-                        <UML:TaggedValue xmi.id="32472888" tag="ea_stype" value="Object"/>
-                        <UML:TaggedValue xmi.id="32472852" tag="ea_ntype" value="0"/>
-                        <UML:TaggedValue xmi.id="32472816" tag="version" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32472780" tag="classifier" value="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0"/>
-                        <UML:TaggedValue xmi.id="32472744" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
-                        <UML:TaggedValue xmi.id="32472708" tag="classname" value="Room"/>
-                        <UML:TaggedValue xmi.id="32472672" tag="date_created" value="2006-07-20 18:35:32"/>
-                        <UML:TaggedValue xmi.id="32472636" tag="date_modified" value="2006-07-21 19:34:11"/>
-                        <UML:TaggedValue xmi.id="32472600" tag="gentype" value="Java"/>
-                        <UML:TaggedValue xmi.id="32472564" tag="tagged" value="0"/>
-                        <UML:TaggedValue xmi.id="32472528" tag="package_name" value="HouseExampleModel"/>
-                        <UML:TaggedValue xmi.id="32472492" tag="phase" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32472456" tag="complexity" value="1"/>
-                        <UML:TaggedValue xmi.id="32472420" tag="status" value="Proposed"/>
-                        <UML:TaggedValue xmi.id="32472384" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                        <UML:TaggedValue xmi.id="32391468" tag="isSpecification" value="false"/>
+                        <UML:TaggedValue xmi.id="32391432" tag="ea_stype" value="Object"/>
+                        <UML:TaggedValue xmi.id="32391384" tag="ea_ntype" value="0"/>
+                        <UML:TaggedValue xmi.id="32391336" tag="version" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32391300" tag="classifier" value="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0"/>
+                        <UML:TaggedValue xmi.id="32391264" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
+                        <UML:TaggedValue xmi.id="32391228" tag="classname" value="Room"/>
+                        <UML:TaggedValue xmi.id="32391192" tag="date_created" value="2006-07-20 18:35:32"/>
+                        <UML:TaggedValue xmi.id="32382936" tag="date_modified" value="2006-07-21 19:34:11"/>
+                        <UML:TaggedValue xmi.id="32382900" tag="gentype" value="Java"/>
+                        <UML:TaggedValue xmi.id="32382864" tag="tagged" value="0"/>
+                        <UML:TaggedValue xmi.id="32382828" tag="package_name" value="HouseExampleModel"/>
+                        <UML:TaggedValue xmi.id="32382792" tag="phase" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32382756" tag="complexity" value="1"/>
+                        <UML:TaggedValue xmi.id="32382720" tag="status" value="Proposed"/>
+                        <UML:TaggedValue xmi.id="32382684" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                       </UML:ModelElement.taggedValue>
                     </UML:ClassifierRole>
-                    <UML:ClassifierRole xmi.id="32202876" name="YellowRoom" visibility="public" base="EAID_31977624" presentation="32485320">
+                    <UML:ClassifierRole xmi.id="32810112" name="YellowRoom" visibility="public" base="EAID_20082216" presentation="32378616">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32485224" tag="isSpecification" value="false"/>
-                        <UML:TaggedValue xmi.id="32485188" tag="ea_stype" value="Object"/>
-                        <UML:TaggedValue xmi.id="32485152" tag="ea_ntype" value="0"/>
-                        <UML:TaggedValue xmi.id="32485116" tag="version" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32485080" tag="classifier" value="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0"/>
-                        <UML:TaggedValue xmi.id="32485044" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
-                        <UML:TaggedValue xmi.id="32485008" tag="classname" value="Room"/>
-                        <UML:TaggedValue xmi.id="32484972" tag="date_created" value="2006-07-21 19:22:58"/>
-                        <UML:TaggedValue xmi.id="32484936" tag="date_modified" value="2006-07-21 19:34:27"/>
-                        <UML:TaggedValue xmi.id="32484900" tag="gentype" value="Java"/>
-                        <UML:TaggedValue xmi.id="32484864" tag="tagged" value="0"/>
-                        <UML:TaggedValue xmi.id="32484828" tag="package_name" value="HouseExampleModel"/>
-                        <UML:TaggedValue xmi.id="32484792" tag="phase" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32484756" tag="complexity" value="1"/>
-                        <UML:TaggedValue xmi.id="32484720" tag="status" value="Proposed"/>
-                        <UML:TaggedValue xmi.id="32484684" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                        <UML:TaggedValue xmi.id="32378472" tag="isSpecification" value="false"/>
+                        <UML:TaggedValue xmi.id="32515416" tag="ea_stype" value="Object"/>
+                        <UML:TaggedValue xmi.id="32378400" tag="ea_ntype" value="0"/>
+                        <UML:TaggedValue xmi.id="32378352" tag="version" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32378316" tag="classifier" value="EAID_14DB5E54_CD7B_4c84_998C_44960049D7E0"/>
+                        <UML:TaggedValue xmi.id="32378280" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
+                        <UML:TaggedValue xmi.id="32378244" tag="classname" value="Room"/>
+                        <UML:TaggedValue xmi.id="32378196" tag="date_created" value="2006-07-21 19:22:58"/>
+                        <UML:TaggedValue xmi.id="32378148" tag="date_modified" value="2006-07-21 19:34:27"/>
+                        <UML:TaggedValue xmi.id="32378112" tag="gentype" value="Java"/>
+                        <UML:TaggedValue xmi.id="32378076" tag="tagged" value="0"/>
+                        <UML:TaggedValue xmi.id="32378040" tag="package_name" value="HouseExampleModel"/>
+                        <UML:TaggedValue xmi.id="32377992" tag="phase" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32377944" tag="complexity" value="1"/>
+                        <UML:TaggedValue xmi.id="32377908" tag="status" value="Proposed"/>
+                        <UML:TaggedValue xmi.id="32377872" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                       </UML:ModelElement.taggedValue>
                     </UML:ClassifierRole>
-                    <UML:ClassifierRole xmi.id="32202840" name="HotRoom" visibility="public" base="EAID_31977624" presentation="32481240">
+                    <UML:ClassifierRole xmi.id="32810076" name="HotRoom" visibility="public" base="EAID_20082216" presentation="32365464">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32481144" tag="isSpecification" value="false"/>
-                        <UML:TaggedValue xmi.id="32481108" tag="ea_stype" value="Object"/>
-                        <UML:TaggedValue xmi.id="32481072" tag="ea_ntype" value="0"/>
-                        <UML:TaggedValue xmi.id="32481036" tag="version" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32481000" tag="classifier" value="EAID_9CE44C59_37E4_4117_8C05_F87C4DC33529"/>
-                        <UML:TaggedValue xmi.id="32480964" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
-                        <UML:TaggedValue xmi.id="32480928" tag="classname" value="Kitchen"/>
-                        <UML:TaggedValue xmi.id="32480892" tag="date_created" value="2006-07-21 19:27:21"/>
-                        <UML:TaggedValue xmi.id="32480856" tag="date_modified" value="2006-07-21 19:33:56"/>
-                        <UML:TaggedValue xmi.id="32480820" tag="gentype" value="Java"/>
-                        <UML:TaggedValue xmi.id="32480784" tag="tagged" value="0"/>
-                        <UML:TaggedValue xmi.id="32480748" tag="package_name" value="HouseExampleModel"/>
-                        <UML:TaggedValue xmi.id="32480712" tag="phase" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32480676" tag="complexity" value="1"/>
-                        <UML:TaggedValue xmi.id="32480640" tag="status" value="Proposed"/>
-                        <UML:TaggedValue xmi.id="32480604" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                        <UML:TaggedValue xmi.id="32365344" tag="isSpecification" value="false"/>
+                        <UML:TaggedValue xmi.id="32365296" tag="ea_stype" value="Object"/>
+                        <UML:TaggedValue xmi.id="32365260" tag="ea_ntype" value="0"/>
+                        <UML:TaggedValue xmi.id="32365212" tag="version" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32365176" tag="classifier" value="EAID_9CE44C59_37E4_4117_8C05_F87C4DC33529"/>
+                        <UML:TaggedValue xmi.id="32365140" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
+                        <UML:TaggedValue xmi.id="32365104" tag="classname" value="Kitchen"/>
+                        <UML:TaggedValue xmi.id="32365068" tag="date_created" value="2006-07-21 19:27:21"/>
+                        <UML:TaggedValue xmi.id="32365032" tag="date_modified" value="2006-07-21 19:33:56"/>
+                        <UML:TaggedValue xmi.id="32364996" tag="gentype" value="Java"/>
+                        <UML:TaggedValue xmi.id="32364960" tag="tagged" value="0"/>
+                        <UML:TaggedValue xmi.id="32364924" tag="package_name" value="HouseExampleModel"/>
+                        <UML:TaggedValue xmi.id="32364888" tag="phase" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32364852" tag="complexity" value="1"/>
+                        <UML:TaggedValue xmi.id="32364816" tag="status" value="Proposed"/>
+                        <UML:TaggedValue xmi.id="32364780" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                       </UML:ModelElement.taggedValue>
                     </UML:ClassifierRole>
-                    <UML:ClassifierRole xmi.id="32202804" name="Someone" visibility="public" base="EAID_31977624" presentation="32493540">
+                    <UML:ClassifierRole xmi.id="32810004" name="Someone" visibility="public" base="EAID_20082216" presentation="32360880">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32493444" tag="isSpecification" value="false"/>
-                        <UML:TaggedValue xmi.id="32493408" tag="ea_stype" value="Object"/>
-                        <UML:TaggedValue xmi.id="32493372" tag="ea_ntype" value="0"/>
-                        <UML:TaggedValue xmi.id="32493336" tag="version" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32493300" tag="classifier" value="EAID_2F1D9CC6_F38F_4a34_B3C4_B92915108384"/>
-                        <UML:TaggedValue xmi.id="32493264" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
-                        <UML:TaggedValue xmi.id="32493228" tag="classname" value="Person"/>
-                        <UML:TaggedValue xmi.id="32493192" tag="date_created" value="2006-07-21 19:29:45"/>
-                        <UML:TaggedValue xmi.id="32493156" tag="date_modified" value="2006-07-21 19:35:00"/>
-                        <UML:TaggedValue xmi.id="32493120" tag="gentype" value="Java"/>
-                        <UML:TaggedValue xmi.id="32493084" tag="tagged" value="0"/>
-                        <UML:TaggedValue xmi.id="32493048" tag="package_name" value="HouseExampleModel"/>
-                        <UML:TaggedValue xmi.id="32493012" tag="phase" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32492976" tag="complexity" value="1"/>
-                        <UML:TaggedValue xmi.id="32492940" tag="status" value="Proposed"/>
-                        <UML:TaggedValue xmi.id="32492904" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                        <UML:TaggedValue xmi.id="32360760" tag="isSpecification" value="false"/>
+                        <UML:TaggedValue xmi.id="32360724" tag="ea_stype" value="Object"/>
+                        <UML:TaggedValue xmi.id="32360688" tag="ea_ntype" value="0"/>
+                        <UML:TaggedValue xmi.id="32360652" tag="version" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32360604" tag="classifier" value="EAID_2F1D9CC6_F38F_4a34_B3C4_B92915108384"/>
+                        <UML:TaggedValue xmi.id="32360568" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
+                        <UML:TaggedValue xmi.id="32360520" tag="classname" value="Person"/>
+                        <UML:TaggedValue xmi.id="32360484" tag="date_created" value="2006-07-21 19:29:45"/>
+                        <UML:TaggedValue xmi.id="32360448" tag="date_modified" value="2006-07-21 19:35:00"/>
+                        <UML:TaggedValue xmi.id="32360412" tag="gentype" value="Java"/>
+                        <UML:TaggedValue xmi.id="32360376" tag="tagged" value="0"/>
+                        <UML:TaggedValue xmi.id="32360328" tag="package_name" value="HouseExampleModel"/>
+                        <UML:TaggedValue xmi.id="32360292" tag="phase" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32360256" tag="complexity" value="1"/>
+                        <UML:TaggedValue xmi.id="32360220" tag="status" value="Proposed"/>
+                        <UML:TaggedValue xmi.id="32360184" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                       </UML:ModelElement.taggedValue>
                     </UML:ClassifierRole>
-                    <UML:ClassifierRole xmi.id="32202768" name="WetRoom" visibility="public" base="EAID_31977624" presentation="32489460">
+                    <UML:ClassifierRole xmi.id="32809968" name="WetRoom" visibility="public" base="EAID_20082216" presentation="32348100">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32489364" tag="isSpecification" value="false"/>
-                        <UML:TaggedValue xmi.id="32489328" tag="ea_stype" value="Object"/>
-                        <UML:TaggedValue xmi.id="32489292" tag="ea_ntype" value="0"/>
-                        <UML:TaggedValue xmi.id="32489256" tag="version" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32489220" tag="classifier" value="EAID_244CC9E5_1F81_4164_9215_C048EC679543"/>
-                        <UML:TaggedValue xmi.id="32489184" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
-                        <UML:TaggedValue xmi.id="32489148" tag="classname" value="Bathroom"/>
-                        <UML:TaggedValue xmi.id="32489112" tag="date_created" value="2006-07-21 19:31:18"/>
-                        <UML:TaggedValue xmi.id="32489076" tag="date_modified" value="2006-07-21 19:34:02"/>
-                        <UML:TaggedValue xmi.id="32489040" tag="gentype" value="Java"/>
-                        <UML:TaggedValue xmi.id="32489004" tag="tagged" value="0"/>
-                        <UML:TaggedValue xmi.id="32488968" tag="package_name" value="HouseExampleModel"/>
-                        <UML:TaggedValue xmi.id="32488932" tag="phase" value="1.0"/>
-                        <UML:TaggedValue xmi.id="32488896" tag="complexity" value="1"/>
-                        <UML:TaggedValue xmi.id="32488860" tag="status" value="Proposed"/>
-                        <UML:TaggedValue xmi.id="32488824" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
+                        <UML:TaggedValue xmi.id="32347980" tag="isSpecification" value="false"/>
+                        <UML:TaggedValue xmi.id="32347944" tag="ea_stype" value="Object"/>
+                        <UML:TaggedValue xmi.id="32347908" tag="ea_ntype" value="0"/>
+                        <UML:TaggedValue xmi.id="32347872" tag="version" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32347836" tag="classifier" value="EAID_244CC9E5_1F81_4164_9215_C048EC679543"/>
+                        <UML:TaggedValue xmi.id="32347800" tag="package" value="EAPK_06C9C958_C14A_41f4_89A9_6873CCED37A7"/>
+                        <UML:TaggedValue xmi.id="32347764" tag="classname" value="Bathroom"/>
+                        <UML:TaggedValue xmi.id="32347728" tag="date_created" value="2006-07-21 19:31:18"/>
+                        <UML:TaggedValue xmi.id="32347692" tag="date_modified" value="2006-07-21 19:34:02"/>
+                        <UML:TaggedValue xmi.id="32375268" tag="gentype" value="Java"/>
+                        <UML:TaggedValue xmi.id="32347632" tag="tagged" value="0"/>
+                        <UML:TaggedValue xmi.id="32347596" tag="package_name" value="HouseExampleModel"/>
+                        <UML:TaggedValue xmi.id="32347560" tag="phase" value="1.0"/>
+                        <UML:TaggedValue xmi.id="32347524" tag="complexity" value="1"/>
+                        <UML:TaggedValue xmi.id="32347488" tag="status" value="Proposed"/>
+                        <UML:TaggedValue xmi.id="32347452" tag="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;"/>
                       </UML:ModelElement.taggedValue>
                     </UML:ClassifierRole>
                   </UML:Namespace.ownedElement>
                 </UML:Collaboration>
-                <UML:Association xmi.id="EAID_32068872" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32216316 32216280">
+                <UML:Association xmi.id="EAID_33035892" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32798796 32798760">
                   <UML:Association.connection >
-                    <UML:AssociationEnd xmi.id="EAID_32216664" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" name="room" visibility="public" type="32202912">
+                    <UML:AssociationEnd xmi.id="EAID_32799156" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" name="room" visibility="public" type="32810148">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32502432" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32344260" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
-                    <UML:AssociationEnd xmi.id="EAID_32201220" isNavigable="true" isOrdered="false" aggregation="composite" targetScope="instance" changeable="none" visibility="public" type="32205540">
+                    <UML:AssociationEnd xmi.id="EAID_32799120" isNavigable="true" isOrdered="false" aggregation="composite" targetScope="instance" changeable="none" visibility="public" type="32813184">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32499912" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32333712" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
                   </UML:Association.connection>
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32216172" tag="style" value="3"/>
-                    <UML:TaggedValue xmi.id="32216136" tag="ea_type" value="Aggregation"/>
-                    <UML:TaggedValue xmi.id="32216100" tag="direction" value="Source -> Destination"/>
-                    <UML:TaggedValue xmi.id="32216064" tag="linemode" value="3"/>
-                    <UML:TaggedValue xmi.id="32216028" tag="seqno" value="0"/>
-                    <UML:TaggedValue xmi.id="32215992" tag="subtype" value="Strong"/>
-                    <UML:TaggedValue xmi.id="32215956" tag="headStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32215920" tag="lineStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32215884" tag="virtualInheritance" value="0"/>
-                    <UML:TaggedValue xmi.id="32215488" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32215356" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32798640" tag="style" value="3"/>
+                    <UML:TaggedValue xmi.id="32798604" tag="ea_type" value="Aggregation"/>
+                    <UML:TaggedValue xmi.id="32798568" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32798532" tag="linemode" value="3"/>
+                    <UML:TaggedValue xmi.id="32798496" tag="seqno" value="0"/>
+                    <UML:TaggedValue xmi.id="32798460" tag="subtype" value="Strong"/>
+                    <UML:TaggedValue xmi.id="32798424" tag="headStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32798388" tag="lineStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32798352" tag="virtualInheritance" value="0"/>
+                    <UML:TaggedValue xmi.id="32797908" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32797620" tag="direction" value="Source -> Destination"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Association>
-                <UML:Association xmi.id="EAID_32068836" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32212692 32212656">
+                <UML:Association xmi.id="EAID_33035856" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32794308 32794272">
                   <UML:Association.connection >
-                    <UML:AssociationEnd xmi.id="EAID_32213040" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" name="room" visibility="public" type="32202840">
+                    <UML:AssociationEnd xmi.id="EAID_32794668" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" name="room" visibility="public" type="32810076">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32525088" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32326344" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
-                    <UML:AssociationEnd xmi.id="EAID_32213976" isNavigable="true" isOrdered="false" aggregation="composite" targetScope="instance" changeable="none" visibility="public" type="32205540">
+                    <UML:AssociationEnd xmi.id="EAID_32794632" isNavigable="true" isOrdered="false" aggregation="composite" targetScope="instance" changeable="none" visibility="public" type="32813184">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32522568" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32315796" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
                   </UML:Association.connection>
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32212548" tag="style" value="3"/>
-                    <UML:TaggedValue xmi.id="32212512" tag="ea_type" value="Aggregation"/>
-                    <UML:TaggedValue xmi.id="32212476" tag="direction" value="Source -> Destination"/>
-                    <UML:TaggedValue xmi.id="32212440" tag="linemode" value="3"/>
-                    <UML:TaggedValue xmi.id="32212404" tag="seqno" value="0"/>
-                    <UML:TaggedValue xmi.id="32212368" tag="subtype" value="Strong"/>
-                    <UML:TaggedValue xmi.id="32212332" tag="headStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32212296" tag="lineStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32212260" tag="virtualInheritance" value="0"/>
-                    <UML:TaggedValue xmi.id="32211864" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32211732" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32794152" tag="style" value="3"/>
+                    <UML:TaggedValue xmi.id="32794116" tag="ea_type" value="Aggregation"/>
+                    <UML:TaggedValue xmi.id="32794080" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32794044" tag="linemode" value="3"/>
+                    <UML:TaggedValue xmi.id="32794008" tag="seqno" value="0"/>
+                    <UML:TaggedValue xmi.id="32793972" tag="subtype" value="Strong"/>
+                    <UML:TaggedValue xmi.id="32793936" tag="headStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32793900" tag="lineStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32793864" tag="virtualInheritance" value="0"/>
+                    <UML:TaggedValue xmi.id="32793444" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32793132" tag="direction" value="Source -> Destination"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Association>
-                <UML:Association xmi.id="EAID_32068800" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32225448 32225412">
+                <UML:Association xmi.id="EAID_33035820" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32748816 32748780">
                   <UML:Association.connection >
-                    <UML:AssociationEnd xmi.id="EAID_32209416" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" name="room" visibility="public" type="32202876">
+                    <UML:AssociationEnd xmi.id="EAID_32749224" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" name="room" visibility="public" type="32810112">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32531364" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32283960" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
-                    <UML:AssociationEnd xmi.id="EAID_32210352" isNavigable="true" isOrdered="false" aggregation="composite" targetScope="instance" changeable="none" visibility="public" type="32205540">
+                    <UML:AssociationEnd xmi.id="EAID_32749188" isNavigable="true" isOrdered="false" aggregation="composite" targetScope="instance" changeable="none" visibility="public" type="32813184">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32528844" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32281560" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
                   </UML:Association.connection>
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32225304" tag="style" value="3"/>
-                    <UML:TaggedValue xmi.id="32225268" tag="ea_type" value="Aggregation"/>
-                    <UML:TaggedValue xmi.id="32225232" tag="direction" value="Source -> Destination"/>
-                    <UML:TaggedValue xmi.id="32225196" tag="linemode" value="3"/>
-                    <UML:TaggedValue xmi.id="32225160" tag="seqno" value="0"/>
-                    <UML:TaggedValue xmi.id="32225124" tag="subtype" value="Strong"/>
-                    <UML:TaggedValue xmi.id="32225088" tag="headStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32225052" tag="lineStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32225016" tag="virtualInheritance" value="0"/>
-                    <UML:TaggedValue xmi.id="32224620" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32224488" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32748660" tag="style" value="3"/>
+                    <UML:TaggedValue xmi.id="32748624" tag="ea_type" value="Aggregation"/>
+                    <UML:TaggedValue xmi.id="32748588" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32748552" tag="linemode" value="3"/>
+                    <UML:TaggedValue xmi.id="32748516" tag="seqno" value="0"/>
+                    <UML:TaggedValue xmi.id="32748480" tag="subtype" value="Strong"/>
+                    <UML:TaggedValue xmi.id="32748444" tag="headStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32748408" tag="lineStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32748372" tag="virtualInheritance" value="0"/>
+                    <UML:TaggedValue xmi.id="32747976" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32747688" tag="direction" value="Source -> Destination"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Association>
-                <UML:Association xmi.id="EAID_32068764" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32221824 32221788">
+                <UML:Association xmi.id="EAID_33035784" isRoot="false" isLeaf="false" isAbstract="false" visibility="public" presentation="32744436 32744400">
                   <UML:Association.connection >
-                    <UML:AssociationEnd xmi.id="EAID_32222172" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" name="room" visibility="public" type="32202768">
+                    <UML:AssociationEnd xmi.id="EAID_32744784" isNavigable="false" isOrdered="false" aggregation="none" targetScope="instance" changeable="none" name="room" visibility="public" type="32809968">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32537640" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32266056" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
-                    <UML:AssociationEnd xmi.id="EAID_32223108" isNavigable="true" isOrdered="false" aggregation="composite" targetScope="instance" changeable="none" visibility="public" type="32205540">
+                    <UML:AssociationEnd xmi.id="EAID_32744748" isNavigable="true" isOrdered="false" aggregation="composite" targetScope="instance" changeable="none" visibility="public" type="32813184">
                       <UML:ModelElement.taggedValue >
-                        <UML:TaggedValue xmi.id="32551500" tag="containment" value="Unspecified"/>
+                        <UML:TaggedValue xmi.id="32263656" tag="containment" value="Unspecified"/>
                       </UML:ModelElement.taggedValue>
                     </UML:AssociationEnd>
                   </UML:Association.connection>
                   <UML:ModelElement.taggedValue >
-                    <UML:TaggedValue xmi.id="32221680" tag="style" value="3"/>
-                    <UML:TaggedValue xmi.id="32221644" tag="ea_type" value="Aggregation"/>
-                    <UML:TaggedValue xmi.id="32221608" tag="direction" value="Source -> Destination"/>
-                    <UML:TaggedValue xmi.id="32221572" tag="linemode" value="3"/>
-                    <UML:TaggedValue xmi.id="32221536" tag="seqno" value="0"/>
-                    <UML:TaggedValue xmi.id="32221500" tag="subtype" value="Strong"/>
-                    <UML:TaggedValue xmi.id="32221464" tag="headStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32221428" tag="lineStyle" value="0"/>
-                    <UML:TaggedValue xmi.id="32221392" tag="privatedata5" value="SX=36;SY=-9;EX=45;EY=-9;"/>
-                    <UML:TaggedValue xmi.id="32221356" tag="virtualInheritance" value="0"/>
-                    <UML:TaggedValue xmi.id="32220960" tag="ea_type" value="Association"/>
-                    <UML:TaggedValue xmi.id="32220828" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32744280" tag="style" value="3"/>
+                    <UML:TaggedValue xmi.id="32744244" tag="ea_type" value="Aggregation"/>
+                    <UML:TaggedValue xmi.id="32744208" tag="direction" value="Source -> Destination"/>
+                    <UML:TaggedValue xmi.id="32744172" tag="linemode" value="3"/>
+                    <UML:TaggedValue xmi.id="32744136" tag="seqno" value="0"/>
+                    <UML:TaggedValue xmi.id="32744100" tag="subtype" value="Strong"/>
+                    <UML:TaggedValue xmi.id="32744064" tag="headStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32744028" tag="lineStyle" value="0"/>
+                    <UML:TaggedValue xmi.id="32743992" tag="privatedata5" value="SX=36;SY=-9;EX=45;EY=-9;"/>
+                    <UML:TaggedValue xmi.id="32743956" tag="virtualInheritance" value="0"/>
+                    <UML:TaggedValue xmi.id="32743560" tag="ea_type" value="Association"/>
+                    <UML:TaggedValue xmi.id="32735052" tag="direction" value="Source -> Destination"/>
                   </UML:ModelElement.taggedValue>
                 </UML:Association>
               </UML:Namespace.ownedElement>
               <UML:ModelElement.taggedValue >
-                <UML:TaggedValue xmi.id="32069472" tag="created" value="2006-07-20 00:00:00"/>
-                <UML:TaggedValue xmi.id="32070780" tag="modified" value="2006-07-20 00:00:00"/>
-                <UML:TaggedValue xmi.id="32069412" tag="iscontrolled" value="FALSE"/>
-                <UML:TaggedValue xmi.id="32069376" tag="isprotected" value="FALSE"/>
-                <UML:TaggedValue xmi.id="32069340" tag="usedtd" value="FALSE"/>
-                <UML:TaggedValue xmi.id="32069304" tag="logxml" value="FALSE"/>
-                <UML:TaggedValue xmi.id="32069268" tag="ea_package_id" value="46"/>
-                <UML:TaggedValue xmi.id="32069232" tag="phase" value="1.0"/>
-                <UML:TaggedValue xmi.id="32069196" tag="status" value="Proposed"/>
-                <UML:TaggedValue xmi.id="32069160" tag="complexity" value="1"/>
-                <UML:TaggedValue xmi.id="32069124" tag="ea_stype" value="Public"/>
+                <UML:TaggedValue xmi.id="33036504" tag="created" value="2006-07-20 00:00:00"/>
+                <UML:TaggedValue xmi.id="33036468" tag="modified" value="2006-07-20 00:00:00"/>
+                <UML:TaggedValue xmi.id="33036432" tag="iscontrolled" value="FALSE"/>
+                <UML:TaggedValue xmi.id="33036396" tag="isprotected" value="FALSE"/>
+                <UML:TaggedValue xmi.id="33036360" tag="usedtd" value="FALSE"/>
+                <UML:TaggedValue xmi.id="33036324" tag="logxml" value="FALSE"/>
+                <UML:TaggedValue xmi.id="33036288" tag="ea_package_id" value="46"/>
+                <UML:TaggedValue xmi.id="33037872" tag="phase" value="1.0"/>
+                <UML:TaggedValue xmi.id="33036228" tag="status" value="Proposed"/>
+                <UML:TaggedValue xmi.id="33036192" tag="complexity" value="1"/>
+                <UML:TaggedValue xmi.id="33036156" tag="ea_stype" value="Public"/>
               </UML:ModelElement.taggedValue>
             </UML:Package>
           </UML:Namespace.ownedElement>
           <UML:ModelElement.taggedValue >
-            <UML:TaggedValue xmi.id="31950672" tag="ea_package_id" value="1"/>
-            <UML:TaggedValue xmi.id="31950132" tag="iscontrolled" value="FALSE"/>
-            <UML:TaggedValue xmi.id="31950096" tag="isprotected" value="FALSE"/>
-            <UML:TaggedValue xmi.id="31950060" tag="usedtd" value="FALSE"/>
-            <UML:TaggedValue xmi.id="31950024" tag="logxml" value="FALSE"/>
+            <UML:TaggedValue xmi.id="20174436" tag="ea_package_id" value="1"/>
+            <UML:TaggedValue xmi.id="20173356" tag="iscontrolled" value="FALSE"/>
+            <UML:TaggedValue xmi.id="20173272" tag="isprotected" value="FALSE"/>
+            <UML:TaggedValue xmi.id="20173140" tag="usedtd" value="FALSE"/>
+            <UML:TaggedValue xmi.id="20173032" tag="logxml" value="FALSE"/>
           </UML:ModelElement.taggedValue>
         </UML:Package>
-        <UML:DataType xmi.id="31975020" isRoot="false" isLeaf="false" isAbstract="false" name="String" visibility="private"/>
-        <UML:DataType xmi.id="31972764" isRoot="false" isLeaf="false" isAbstract="false" name="void" visibility="private"/>
+        <UML:DataType xmi.id="19853868" isRoot="false" isLeaf="false" isAbstract="false" name="String" visibility="private"/>
+        <UML:DataType xmi.id="19800192" isRoot="false" isLeaf="false" isAbstract="false" name="void" visibility="private"/>
       </UML:Namespace.ownedElement>
     </UML:Model>
   </XMI.content>
diff --git a/test/xml_instantiator_test/simple_xmi_to_ecore.rb b/test/xml_instantiator_test/simple_xmi_to_ecore.rb
index 0b9fce7..d954775 100644
--- a/test/xml_instantiator_test/simple_xmi_to_ecore.rb
+++ b/test/xml_instantiator_test/simple_xmi_to_ecore.rb
@@ -47,7 +47,7 @@ class SimpleXmiToECore < RGen::Transformer
   end
   
   transform SimpleXMIMetaModel::UML::Attribute, :to => EAttribute do
-    typemap = { "String" => EString, "boolean" => EBoolean, "int" => EInt, "float" => EFloat }
+    typemap = { "String" => EString, "boolean" => EBoolean, "int" => EInt, "long" => ELong, "float" => EFloat }
     tv = TaggedValueHelper.new(@current_object)
     {	:name => name, :eType => typemap[tv['type']],
       :eAnnotations => [ EAnnotation.new(:details => trans(modelElement_taggedValue.taggedValue)) ] }

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ruby-extras/ruby-rgen.git



More information about the Pkg-ruby-extras-commits mailing list