https://bugs.eclipse.org/bugs/show_bug.cgi?id=73343
diff --git a/deprecated/plugins/org.eclipse.uml2.resources/libraries/EcorePrimitiveTypes.library.uml2 b/deprecated/plugins/org.eclipse.uml2.resources/libraries/EcorePrimitiveTypes.library.uml2
index f09ac98..631ed2b 100644
--- a/deprecated/plugins/org.eclipse.uml2.resources/libraries/EcorePrimitiveTypes.library.uml2
+++ b/deprecated/plugins/org.eclipse.uml2.resources/libraries/EcorePrimitiveTypes.library.uml2
@@ -7,7 +7,7 @@
     <eAnnotations xmi:id="_WsuWoK88EdizLvaujP1w9Q" source="attributes">

       <details xmi:id="_WsuWoa88EdizLvaujP1w9Q" key="version" value="0"/>

     </eAnnotations>

-    <importedPackage href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

+    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

     <importedProfile href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

   </packageImport>

   <ownedMember xmi:type="uml:PrimitiveType" xmi:id="_OQomAK86EdieaYgxtVWN8Q" name="EBigDecimal"/>

diff --git a/deprecated/plugins/org.eclipse.uml2.resources/libraries/JavaPrimitiveTypes.library.uml2 b/deprecated/plugins/org.eclipse.uml2.resources/libraries/JavaPrimitiveTypes.library.uml2
index f4dd3ff..3c776f4 100644
--- a/deprecated/plugins/org.eclipse.uml2.resources/libraries/JavaPrimitiveTypes.library.uml2
+++ b/deprecated/plugins/org.eclipse.uml2.resources/libraries/JavaPrimitiveTypes.library.uml2
@@ -7,7 +7,7 @@
     <eAnnotations xmi:id="_ZNwI8a88EdizLvaujP1w9Q" source="attributes">

       <details xmi:id="_ZNwI8q88EdizLvaujP1w9Q" key="version" value="0"/>

     </eAnnotations>

-    <importedPackage href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

+    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

     <importedProfile href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

   </packageImport>

   <ownedMember xmi:type="uml:PrimitiveType" xmi:id="_TBfF4K86EdieaYgxtVWN8Q" name="boolean"/>

diff --git a/deprecated/plugins/org.eclipse.uml2.resources/libraries/UML2PrimitiveTypes.library.uml2 b/deprecated/plugins/org.eclipse.uml2.resources/libraries/UML2PrimitiveTypes.library.uml2
index 9e31b7c..7361607 100644
--- a/deprecated/plugins/org.eclipse.uml2.resources/libraries/UML2PrimitiveTypes.library.uml2
+++ b/deprecated/plugins/org.eclipse.uml2.resources/libraries/UML2PrimitiveTypes.library.uml2
@@ -7,7 +7,7 @@
     <eAnnotations xmi:id="_hLjtAK88EdizLvaujP1w9Q" source="attributes">

       <details xmi:id="_hLjtAa88EdizLvaujP1w9Q" key="version" value="0"/>

     </eAnnotations>

-    <importedPackage href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

+    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

     <importedProfile href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

   </packageImport>

   <ownedMember xmi:type="uml:PrimitiveType" xmi:id="_IXfBUK86EdieaYgxtVWN8Q" name="Boolean"/>

diff --git a/deprecated/plugins/org.eclipse.uml2.resources/metamodels/Ecore.metamodel.uml2 b/deprecated/plugins/org.eclipse.uml2.resources/metamodels/Ecore.metamodel.uml2
index 8428718..c7bcb27 100644
--- a/deprecated/plugins/org.eclipse.uml2.resources/metamodels/Ecore.metamodel.uml2
+++ b/deprecated/plugins/org.eclipse.uml2.resources/metamodels/Ecore.metamodel.uml2
@@ -4,20 +4,20 @@
     <contents xmi:type="Complete_0:Complete__Metamodel" xmi:id="_jr6J4K88EdizLvaujP1w9Q"/>

   </eAnnotations>

   <packageImport xmi:id="_m8eNoa86EdiEh75YJ_3n8g">

-    <importedPackage href="pathmap://UML2_LIBRARIES/EcorePrimitiveTypes.library.uml2#_L8agoK86EdieaYgxtVWN8Q"/>

+    <importedPackage xmi:type="uml:Model" href="pathmap://UML2_LIBRARIES/EcorePrimitiveTypes.library.uml2#_L8agoK86EdieaYgxtVWN8Q"/>

   </packageImport>

   <packageImport xmi:type="uml:ProfileApplication" xmi:id="_jngyEK88EdizLvaujP1w9Q">

     <eAnnotations xmi:id="_jnzF8K88EdizLvaujP1w9Q" source="attributes">

       <details xmi:id="_jn5MkK88EdizLvaujP1w9Q" key="version" value="0"/>

     </eAnnotations>

-    <importedPackage href="pathmap://UML2_PROFILES/Complete.profile.uml2#_M7pTkK87Edih9-GG5afQ0g"/>

+    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Complete.profile.uml2#_M7pTkK87Edih9-GG5afQ0g"/>

     <importedProfile href="pathmap://UML2_PROFILES/Complete.profile.uml2#_M7pTkK87Edih9-GG5afQ0g"/>

   </packageImport>

   <packageImport xmi:type="uml:ProfileApplication" xmi:id="_jsk4QK88EdizLvaujP1w9Q">

     <eAnnotations xmi:id="_js9SwK88EdizLvaujP1w9Q" source="attributes">

       <details xmi:id="_js9Swa88EdizLvaujP1w9Q" key="version" value="0"/>

     </eAnnotations>

-    <importedPackage href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

+    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

     <importedProfile href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

   </packageImport>

   <ownedMember xmi:type="uml:Class" xmi:id="_m8eNoq86EdiEh75YJ_3n8g" name="EAttribute">

diff --git a/deprecated/plugins/org.eclipse.uml2.resources/metamodels/UML2.metamodel.uml2 b/deprecated/plugins/org.eclipse.uml2.resources/metamodels/UML2.metamodel.uml2
index 51d067e..f95db9c 100644
--- a/deprecated/plugins/org.eclipse.uml2.resources/metamodels/UML2.metamodel.uml2
+++ b/deprecated/plugins/org.eclipse.uml2.resources/metamodels/UML2.metamodel.uml2
@@ -4,20 +4,20 @@
     <contents xmi:type="Complete_0:Complete__Metamodel" xmi:id="_o5aJgK88EdizLvaujP1w9Q"/>

   </eAnnotations>

   <packageImport xmi:id="_m8qbBK86EdiEh75YJ_3n8g">

-    <importedPackage href="pathmap://UML2_LIBRARIES/EcorePrimitiveTypes.library.uml2#_L8agoK86EdieaYgxtVWN8Q"/>

+    <importedPackage xmi:type="uml:Model" href="pathmap://UML2_LIBRARIES/EcorePrimitiveTypes.library.uml2#_L8agoK86EdieaYgxtVWN8Q"/>

   </packageImport>

   <packageImport xmi:type="uml:ProfileApplication" xmi:id="_osa2YK88EdizLvaujP1w9Q">

     <eAnnotations xmi:id="_outVYK88EdizLvaujP1w9Q" source="attributes">

       <details xmi:id="_ou5ioK88EdizLvaujP1w9Q" key="version" value="0"/>

     </eAnnotations>

-    <importedPackage href="pathmap://UML2_PROFILES/Complete.profile.uml2#_M7pTkK87Edih9-GG5afQ0g"/>

+    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Complete.profile.uml2#_M7pTkK87Edih9-GG5afQ0g"/>

     <importedProfile href="pathmap://UML2_PROFILES/Complete.profile.uml2#_M7pTkK87Edih9-GG5afQ0g"/>

   </packageImport>

   <packageImport xmi:type="uml:ProfileApplication" xmi:id="_o67zgK88EdizLvaujP1w9Q">

     <eAnnotations xmi:id="_o9Iy8K88EdizLvaujP1w9Q" source="attributes">

       <details xmi:id="_o9O5kK88EdizLvaujP1w9Q" key="version" value="0"/>

     </eAnnotations>

-    <importedPackage href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

+    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

     <importedProfile href="pathmap://UML2_PROFILES/Basic.profile.uml2#_6mFRgK86Edih9-GG5afQ0g"/>

   </packageImport>

   <ownedMember xmi:type="uml:PrimitiveType" xmi:id="_m8qbBa86EdiEh75YJ_3n8g" name="Integer" packageableElement_visibility="private"/>

diff --git a/deprecated/plugins/org.eclipse.uml2.resources/profiles/Basic.profile.uml2 b/deprecated/plugins/org.eclipse.uml2.resources/profiles/Basic.profile.uml2
index d96a5a2..6235356 100644
--- a/deprecated/plugins/org.eclipse.uml2.resources/profiles/Basic.profile.uml2
+++ b/deprecated/plugins/org.eclipse.uml2.resources/profiles/Basic.profile.uml2
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>

-<uml:Profile xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmi:id="_6mFRgK86Edih9-GG5afQ0g" name="Basic" metaclassReference="_9vHfAK86Edih9-GG5afQ0g _9vsGxK86Edih9-GG5afQ0g _9vyNYa86Edih9-GG5afQ0g _9v4UBa86Edih9-GG5afQ0g _9wEhQa86Edih9-GG5afQ0g _9wW1JK86Edih9-GG5afQ0g _9w1WRK86Edih9-GG5afQ0g">

+<uml:Profile xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmi:id="_6mFRgK86Edih9-GG5afQ0g" name="Basic" metaclassReference="_9vHfAK86Edih9-GG5afQ0g _9vsGxK86Edih9-GG5afQ0g _9vyNYa86Edih9-GG5afQ0g _9v4UBa86Edih9-GG5afQ0g _9wEhQa86Edih9-GG5afQ0g _9wW1JK86Edih9-GG5afQ0g _9w1WRK86Edih9-GG5afQ0g">

   <eAnnotations xmi:id="__Ka_YK86Edih9-GG5afQ0g" source="attributes">

     <details xmi:id="__K_nIK86Edih9-GG5afQ0g" key="version" value="0"/>

   </eAnnotations>

diff --git a/deprecated/plugins/org.eclipse.uml2.resources/profiles/Complete.profile.uml2 b/deprecated/plugins/org.eclipse.uml2.resources/profiles/Complete.profile.uml2
index 2ae4132..c6f004a 100644
--- a/deprecated/plugins/org.eclipse.uml2.resources/profiles/Complete.profile.uml2
+++ b/deprecated/plugins/org.eclipse.uml2.resources/profiles/Complete.profile.uml2
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>

-<uml:Profile xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmi:id="_M7pTkK87Edih9-GG5afQ0g" name="Complete" metaclassReference="_O1-5UK87Edih9-GG5afQ0g">

+<uml:Profile xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmi:id="_M7pTkK87Edih9-GG5afQ0g" name="Complete" metaclassReference="_O1-5UK87Edih9-GG5afQ0g">

   <eAnnotations xmi:id="_QHWakK87Edih9-GG5afQ0g" source="attributes">

     <details xmi:id="_QHchMK87Edih9-GG5afQ0g" key="version" value="0"/>

   </eAnnotations>

diff --git a/deprecated/plugins/org.eclipse.uml2.resources/profiles/Ecore.profile.uml2 b/deprecated/plugins/org.eclipse.uml2.resources/profiles/Ecore.profile.uml2
index 2db1a3f..96fd619 100644
--- a/deprecated/plugins/org.eclipse.uml2.resources/profiles/Ecore.profile.uml2
+++ b/deprecated/plugins/org.eclipse.uml2.resources/profiles/Ecore.profile.uml2
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>

-<uml:Profile xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmi:id="_siPt4K87Edi5QpYeY_yIpg" name="Ecore" metaclassReference="_urkx4K87Edi5QpYeY_yIpg _usJZo687Edi5QpYeY_yIpg _usVm4K87Edi5QpYeY_yIpg _usVm4a87Edi5QpYeY_yIpg _ush0IK87Edi5QpYeY_yIpg _usn6wK87Edi5QpYeY_yIpg _usuBYK87Edi5QpYeY_yIpg _us6OoK87Edi5QpYeY_yIpg _utA8Ua87Edi5QpYeY_yIpg _utHC9687Edi5QpYeY_yIpg">

+<uml:Profile xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmi:id="_siPt4K87Edi5QpYeY_yIpg" name="Ecore" metaclassReference="_urkx4K87Edi5QpYeY_yIpg _usJZo687Edi5QpYeY_yIpg _usVm4K87Edi5QpYeY_yIpg _usVm4a87Edi5QpYeY_yIpg _ush0IK87Edi5QpYeY_yIpg _usn6wK87Edi5QpYeY_yIpg _usuBYK87Edi5QpYeY_yIpg _us6OoK87Edi5QpYeY_yIpg _utA8Ua87Edi5QpYeY_yIpg _utHC9687Edi5QpYeY_yIpg">

   <eAnnotations xmi:id="_v8ws8K87Edi5QpYeY_yIpg" source="attributes">

     <details xmi:id="_v82zkK87Edi5QpYeY_yIpg" key="version" value="0"/>

   </eAnnotations>

diff --git a/deprecated/plugins/org.eclipse.uml2.resources/profiles/Intermediate.profile.uml2 b/deprecated/plugins/org.eclipse.uml2.resources/profiles/Intermediate.profile.uml2
index d335e21..d4a2a26 100644
--- a/deprecated/plugins/org.eclipse.uml2.resources/profiles/Intermediate.profile.uml2
+++ b/deprecated/plugins/org.eclipse.uml2.resources/profiles/Intermediate.profile.uml2
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>

-<uml:Profile xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmi:id="_Cz7csK87Edih9-GG5afQ0g" name="Intermediate" metaclassReference="_FxmuwK87Edih9-GG5afQ0g _Fxs1YK87Edih9-GG5afQ0g _Fx5Cpa87Edih9-GG5afQ0g">

+<uml:Profile xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmi:id="_Cz7csK87Edih9-GG5afQ0g" name="Intermediate" metaclassReference="_FxmuwK87Edih9-GG5afQ0g _Fxs1YK87Edih9-GG5afQ0g _Fx5Cpa87Edih9-GG5afQ0g">

   <eAnnotations xmi:id="_JtJ-UK87Edih9-GG5afQ0g" source="attributes">

     <details xmi:id="_JtQsAK87Edih9-GG5afQ0g" key="version" value="0"/>

   </eAnnotations>

diff --git a/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/SupersetEObjectEList.java b/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/SupersetEObjectEList.java
index 1b91f20..480a505 100644
--- a/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/SupersetEObjectEList.java
+++ b/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/SupersetEObjectEList.java
@@ -8,11 +8,12 @@
  * Contributors:
  *   IBM - Initial API and implementation
  *
- * $Id: SupersetEObjectEList.java,v 1.3.2.2 2004/09/02 18:07:55 khussey Exp $
+ * $Id: SupersetEObjectEList.java,v 1.3.2.3 2004/09/07 19:47:12 khussey Exp $
  */
 package org.eclipse.uml2.internal.util;
 
 import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
 import org.eclipse.emf.common.util.EList;
 import org.eclipse.emf.ecore.EStructuralFeature;
 import org.eclipse.emf.ecore.InternalEObject;
@@ -120,13 +121,35 @@
 	/*
 	 * (non-Javadoc)
 	 * 
-	 * @see org.eclipse.emf.common.util.BasicEList#didSet(int, java.lang.Object,
-	 *      java.lang.Object)
+	 * @see org.eclipse.emf.common.notify.impl.NotifyingListImpl#basicSet(int,
+	 *      java.lang.Object, org.eclipse.emf.common.notify.NotificationChain)
 	 */
-	protected void didSet(int index, Object newObject, Object oldObject) {
-		super.didSet(index, newObject, oldObject);
+	public NotificationChain basicSet(int index, Object object,
+			NotificationChain notifications) {
+		Object oldObject = data[index];
 
-		subsetRemove(oldObject);
+		notifications = super.basicSet(index, object, notifications);
+
+		if (oldObject != object) {
+			subsetRemove(oldObject);
+		}
+
+		return notifications;
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see java.util.List#set(int, java.lang.Object)
+	 */
+	public Object set(int index, Object object) {
+		Object result = super.set(index, object);
+
+		if (result != object) {
+			subsetRemove(result);
+		}
+
+		return result;
 	}
 
 }
\ No newline at end of file
diff --git a/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/UML2Handler.java b/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/UML2Handler.java
index cee90cd..bb39c39 100644
--- a/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/UML2Handler.java
+++ b/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/UML2Handler.java
@@ -8,15 +8,20 @@
  * Contributors:
  *   IBM - Initial API and implementation
  *
- * $Id: UML2Handler.java,v 1.6.2.1 2004/07/14 15:24:42 khussey Exp $
+ * $Id: UML2Handler.java,v 1.6.2.2 2004/09/07 19:47:12 khussey Exp $
  */
 package org.eclipse.uml2.internal.util;
 
+import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
 
 import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EFactory;
+import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.InternalEObject;
 import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.emf.ecore.resource.impl.ResourceImpl;
 import org.eclipse.emf.ecore.xmi.XMLHelper;
@@ -29,6 +34,8 @@
 public class UML2Handler
 	extends SAXXMIHandler {
 
+	protected final Map urisToProxies;
+
 	/**
 	 * Constructs a new UML2 handler for the specified resource with the
 	 * specified helper and options.
@@ -42,6 +49,8 @@
 	 */
 	public UML2Handler(XMLResource xmiResource, XMLHelper helper, Map options) {
 		super(xmiResource, helper, options);
+
+		urisToProxies = new HashMap();
 	}
 
 	/*
@@ -85,4 +94,37 @@
 			}
 		}
 	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.eclipse.emf.ecore.xmi.impl.XMLHandler#validateCreateObjectFromFactory(org.eclipse.emf.ecore.EFactory,
+	 *      java.lang.String, org.eclipse.emf.ecore.EObject,
+	 *      org.eclipse.emf.ecore.EStructuralFeature)
+	 */
+	protected EObject validateCreateObjectFromFactory(EFactory factory,
+			String typeName, EObject newObject, EStructuralFeature feature) {
+
+		if (null != newObject && newObject.eIsProxy()) {
+			URI proxyURI = ((InternalEObject) newObject).eProxyURI();
+
+			Map typeNamesToProxies = (Map) urisToProxies.get(proxyURI);
+
+			if (null == typeNamesToProxies) {
+				urisToProxies.put(proxyURI, typeNamesToProxies = new HashMap());
+			}
+
+			EObject proxy = (EObject) typeNamesToProxies.get(typeName);
+
+			if (null == proxy) {
+				typeNamesToProxies.put(typeName, proxy = newObject);
+			}
+
+			// canonicalize proxies
+			newObject = proxy;
+		}
+
+		return super.validateCreateObjectFromFactory(factory, typeName,
+			newObject, feature);
+	}
 }
\ No newline at end of file
diff --git a/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/UML2ResourceFactoryImpl.java b/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/UML2ResourceFactoryImpl.java
index 658ab37..a810e05 100644
--- a/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/UML2ResourceFactoryImpl.java
+++ b/deprecated/plugins/org.eclipse.uml2/src/org/eclipse/uml2/internal/util/UML2ResourceFactoryImpl.java
@@ -8,7 +8,7 @@
  * Contributors:
  *   IBM - Initial API and implementation
  *
- * $Id: UML2ResourceFactoryImpl.java,v 1.1.2.1 2004/07/14 16:02:16 khussey Exp $
+ * $Id: UML2ResourceFactoryImpl.java,v 1.1.2.2 2004/09/07 19:47:12 khussey Exp $
  */
 package org.eclipse.uml2.internal.util;
 
@@ -65,6 +65,8 @@
 			XMLResource.OPTION_SCHEMA_LOCATION, Boolean.TRUE);
 		resource.getDefaultSaveOptions().put(XMIResource.OPTION_USE_XMI_TYPE,
 			Boolean.TRUE);
+		resource.getDefaultSaveOptions().put(XMIResource.OPTION_SAVE_TYPE_INFORMATION,
+			Boolean.TRUE);
 
 		return resource;
 	}