This commit was manufactured by cvs2svn to create tag 'v200901291336'.
diff --git a/features/org.eclipse.wst.common_core.feature.patch/.cvsignore b/features/org.eclipse.wst.common_core.feature.patch/.cvsignore
deleted file mode 100644
index c14487c..0000000
--- a/features/org.eclipse.wst.common_core.feature.patch/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-build.xml
diff --git a/features/org.eclipse.wst.common_core.feature.patch/.project b/features/org.eclipse.wst.common_core.feature.patch/.project
deleted file mode 100644
index eb1e1ea..0000000
--- a/features/org.eclipse.wst.common_core.feature.patch/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.common_core.feature.patch</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/features/org.eclipse.wst.common_core.feature.patch/build.properties b/features/org.eclipse.wst.common_core.feature.patch/build.properties
deleted file mode 100644
index cb50260..0000000
--- a/features/org.eclipse.wst.common_core.feature.patch/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-bin.includes = feature.xml,\
-               license.html,\
-               feature.properties,\
-               epl-v10.html,\
-               eclipse_update_120.jpg
diff --git a/features/org.eclipse.wst.common_core.feature.patch/eclipse_update_120.jpg b/features/org.eclipse.wst.common_core.feature.patch/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708..0000000
--- a/features/org.eclipse.wst.common_core.feature.patch/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/features/org.eclipse.wst.common_core.feature.patch/epl-v10.html b/features/org.eclipse.wst.common_core.feature.patch/epl-v10.html
deleted file mode 100644
index ed4b196..0000000
--- a/features/org.eclipse.wst.common_core.feature.patch/epl-v10.html
+++ /dev/null
@@ -1,328 +0,0 @@
-<html xmlns:o="urn:schemas-microsoft-com:office:office"
-xmlns:w="urn:schemas-microsoft-com:office:word"
-xmlns="http://www.w3.org/TR/REC-html40">
-
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
-<meta name=ProgId content=Word.Document>
-<meta name=Generator content="Microsoft Word 9">
-<meta name=Originator content="Microsoft Word 9">
-<link rel=File-List
-href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
-<title>Eclipse Public License - Version 1.0</title>
-<!--[if gte mso 9]><xml>
- <o:DocumentProperties>
-  <o:Revision>2</o:Revision>
-  <o:TotalTime>3</o:TotalTime>
-  <o:Created>2004-03-05T23:03:00Z</o:Created>
-  <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
-  <o:Pages>4</o:Pages>
-  <o:Words>1626</o:Words>
-  <o:Characters>9270</o:Characters>
-   <o:Lines>77</o:Lines>
-  <o:Paragraphs>18</o:Paragraphs>
-  <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
-  <o:Version>9.4402</o:Version>
- </o:DocumentProperties>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <w:WordDocument>
-  <w:TrackRevisions/>
- </w:WordDocument>
-</xml><![endif]-->
-<style>
-<!--
- /* Font Definitions */
-@font-face
-	{font-family:Tahoma;
-	panose-1:2 11 6 4 3 5 4 4 2 4;
-	mso-font-charset:0;
-	mso-generic-font-family:swiss;
-	mso-font-pitch:variable;
-	mso-font-signature:553679495 -2147483648 8 0 66047 0;}
- /* Style Definitions */
-p.MsoNormal, li.MsoNormal, div.MsoNormal
-	{mso-style-parent:"";
-	margin:0in;
-	margin-bottom:.0001pt;
-	mso-pagination:widow-orphan;
-	font-size:12.0pt;
-	font-family:"Times New Roman";
-	mso-fareast-font-family:"Times New Roman";}
-p
-	{margin-right:0in;
-	mso-margin-top-alt:auto;
-	mso-margin-bottom-alt:auto;
-	margin-left:0in;
-	mso-pagination:widow-orphan;
-	font-size:12.0pt;
-	font-family:"Times New Roman";
-	mso-fareast-font-family:"Times New Roman";}
-p.BalloonText, li.BalloonText, div.BalloonText
-	{mso-style-name:"Balloon Text";
-	margin:0in;
-	margin-bottom:.0001pt;
-	mso-pagination:widow-orphan;
-	font-size:8.0pt;
-	font-family:Tahoma;
-	mso-fareast-font-family:"Times New Roman";}
-@page Section1
-	{size:8.5in 11.0in;
-	margin:1.0in 1.25in 1.0in 1.25in;
-	mso-header-margin:.5in;
-	mso-footer-margin:.5in;
-	mso-paper-source:0;}
-div.Section1
-	{page:Section1;}
--->
-</style>
-</head>
-
-<body lang=EN-US style='tab-interval:.5in'>
-
-<div class=Section1>
-
-<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
-</p>
-
-<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
-THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
-REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
-OF THIS AGREEMENT.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-in the case of the initial Contributor, the initial code and documentation
-distributed under this Agreement, and<br clear=left>
-b) in the case of each subsequent Contributor:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-changes to the Program, and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-additions to the Program;</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
-such changes and/or additions to the Program originate from and are distributed
-by that particular Contributor. A Contribution 'originates' from a Contributor
-if it was added to the Program by such Contributor itself or anyone acting on
-such Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in conjunction
-with the Program under their own license agreement, and (ii) are not derivative
-works of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
-entity that distributes the Program.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
-claims licensable by a Contributor which are necessarily infringed by the use
-or sale of its Contribution alone or when combined with the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
-distributed in accordance with this Agreement.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
-receives the Program under this Agreement, including all Contributors.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-Subject to the terms of this Agreement, each Contributor hereby grants Recipient
-a non-exclusive, worldwide, royalty-free copyright license to<span
-style='color:red'> </span>reproduce, prepare derivative works of, publicly
-display, publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and object code
-form.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-Subject to the terms of this Agreement, each Contributor hereby grants
-Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
-patent license under Licensed Patents to make, use, sell, offer to sell, import
-and otherwise transfer the Contribution of such Contributor, if any, in source
-code and object code form. This patent license shall apply to the combination
-of the Contribution and the Program if, at the time the Contribution is added
-by the Contributor, such addition of the Contribution causes such combination
-to be covered by the Licensed Patents. The patent license shall not apply to
-any other combinations which include the Contribution. No hardware per se is
-licensed hereunder. </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
-Recipient understands that although each Contributor grants the licenses to its
-Contributions set forth herein, no assurances are provided by any Contributor
-that the Program does not infringe the patent or other intellectual property
-rights of any other entity. Each Contributor disclaims any liability to Recipient
-for claims brought by any other entity based on infringement of intellectual
-property rights or otherwise. As a condition to exercising the rights and
-licenses granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For example,
-if a third party patent license is required to allow Recipient to distribute
-the Program, it is Recipient's responsibility to acquire that license before
-distributing the Program.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
-Each Contributor represents that to its knowledge it has sufficient copyright
-rights in its Contribution, if any, to grant the copyright license set forth in
-this Agreement. </span></p>
-
-<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
-Program in object code form under its own license agreement, provided that:</span>
-</p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it complies with the terms and conditions of this Agreement; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-its license agreement:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-effectively disclaims on behalf of all Contributors all warranties and
-conditions, express and implied, including warranties or conditions of title
-and non-infringement, and implied warranties or conditions of merchantability
-and fitness for a particular purpose; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-effectively excludes on behalf of all Contributors all liability for damages,
-including direct, indirect, special, incidental and consequential damages, such
-as lost profits; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
-states that any provisions which differ from this Agreement are offered by that
-Contributor alone and not by any other party; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
-states that source code for the Program is available from such Contributor, and
-informs licensees how to obtain it in a reasonable manner on or through a
-medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
-
-<p><span style='font-size:10.0pt'>When the Program is made available in source
-code form:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it must be made available under this Agreement; and </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
-copy of this Agreement must be included with each copy of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
-copyright notices contained within the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
-originator of its Contribution, if any, in a manner that reasonably allows
-subsequent Recipients to identify the originator of the Contribution. </span></p>
-
-<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
-
-<p><span style='font-size:10.0pt'>Commercial distributors of software may
-accept certain responsibilities with respect to end users, business partners
-and the like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create potential
-liability for other Contributors. Therefore, if a Contributor includes the
-Program in a commercial product offering, such Contributor (&quot;Commercial
-Contributor&quot;) hereby agrees to defend and indemnify every other
-Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
-costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
-legal actions brought by a third party against the Indemnified Contributor to
-the extent caused by the acts or omissions of such Commercial Contributor in
-connection with its distribution of the Program in a commercial product
-offering. The obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In order
-to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
-Contributor in writing of such claim, and b) allow the Commercial Contributor
-to control, and cooperate with the Commercial Contributor in, the defense and
-any related settlement negotiations. The Indemnified Contributor may participate
-in any such claim at its own expense.</span> </p>
-
-<p><span style='font-size:10.0pt'>For example, a Contributor might include the
-Program in a commercial product offering, Product X. That Contributor is then a
-Commercial Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance claims and
-warranties are such Commercial Contributor's responsibility alone. Under this
-section, the Commercial Contributor would have to defend claims against the
-other Contributors related to those performance claims and warranties, and if a
-court requires any other Contributor to pay any damages as a result, the
-Commercial Contributor must pay those damages.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
-WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
-MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and distributing the
-Program and assumes all risks associated with its exercise of rights under this
-Agreement , including but not limited to the risks and costs of program errors,
-compliance with applicable laws, damage to or loss of data, programs or
-equipment, and unavailability or interruption of operations. </span></p>
-
-<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
-THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
-
-<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
-or unenforceable under applicable law, it shall not affect the validity or
-enforceability of the remainder of the terms of this Agreement, and without
-further action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.</span> </p>
-
-<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
-against any entity (including a cross-claim or counterclaim in a lawsuit)
-alleging that the Program itself (excluding combinations of the Program with
-other software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the date
-such litigation is filed. </span></p>
-
-<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
-shall terminate if it fails to comply with any of the material terms or
-conditions of this Agreement and does not cure such failure in a reasonable
-period of time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive. </span></p>
-
-<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
-copies of this Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The Agreement
-Steward reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement Steward has
-the right to modify this Agreement. The Eclipse Foundation is the initial
-Agreement Steward. The Eclipse Foundation may assign the responsibility to
-serve as the Agreement Steward to a suitable separate entity. Each new version
-of the Agreement will be given a distinguishing version number. The Program
-(including Contributions) may always be distributed subject to the version of
-the Agreement under which it was received. In addition, after a new version of
-the Agreement is published, Contributor may elect to distribute the Program
-(including its Contributions) under the new version. Except as expressly stated
-in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
-the intellectual property of any Contributor under this Agreement, whether
-expressly, by implication, estoppel or otherwise. All rights in the Program not
-expressly granted under this Agreement are reserved.</span> </p>
-
-<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
-State of New York and the intellectual property laws of the United States of
-America. No party to this Agreement will bring a legal action under this
-Agreement more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.</span> </p>
-
-<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
-
-</div>
-
-</body>
-
-</html>
\ No newline at end of file
diff --git a/features/org.eclipse.wst.common_core.feature.patch/license.html b/features/org.eclipse.wst.common_core.feature.patch/license.html
deleted file mode 100644
index 2347060..0000000
--- a/features/org.eclipse.wst.common_core.feature.patch/license.html
+++ /dev/null
@@ -1,93 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
-<!-- saved from url=(0044)http://www.eclipse.org/legal/epl/notice.html -->
-<HTML><HEAD><TITLE>Eclipse.org Software User Agreement</TITLE>
-<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
-<META content="MSHTML 6.00.2800.1479" name=GENERATOR></HEAD>
-<BODY lang=EN-US vLink=purple link=blue>
-<H2>Eclipse Foundation Software User Agreement</H2>
-<P>January 28, 2005</P>
-<H3>Usage Of Content</H3>
-<P>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION 
-AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT"). USE OF 
-THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE 
-TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED 
-BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED 
-BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE 
-AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE 
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS OF ANY 
-APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU 
-MAY NOT USE THE CONTENT.</P>
-<H3>Applicable Licenses</H3>
-<P>Unless otherwise indicated, all Content made available by the Eclipse 
-Foundation is provided to you under the terms and conditions of the Eclipse 
-Public License Version 1.0 ("EPL"). A copy of the EPL is provided with this 
-Content and is also available at <A 
-href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</A>. 
-For purposes of the EPL, "Program" will mean the Content.</P>
-<P>Content includes, but is not limited to, source code, object code, 
-documentation and other files maintained in the Eclipse.org CVS repository 
-("Repository") in CVS modules ("Modules") and made available as downloadable 
-archives ("Downloads").</P>
-<P>Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments 
-("Fragments"), and features ("Features"). A Feature is a bundle of one or more 
-Plug-ins and/or Fragments and associated material. Files named "feature.xml" may 
-contain a list of the names and version numbers of the Plug-ins and/or Fragments 
-associated with a Feature. Plug-ins and Fragments are located in directories 
-named "plugins" and Features are located in directories named "features".</P>
-<P>Features may also include other Features ("Included Features"). Files named 
-"feature.xml" may contain a list of the names and version numbers of Included 
-Features.</P>
-<P>The terms and conditions governing Plug-ins and Fragments should be contained 
-in files named "about.html" ("Abouts"). The terms and conditions governing 
-Features and Included Features should be contained in files named "license.html" 
-("Feature Licenses"). Abouts and Feature Licenses may be located in any 
-directory of a Download or Module including, but not limited to the following 
-locations:</P>
-<UL>
-  <LI>The top-level (root) directory 
-  <LI>Plug-in and Fragment directories 
-  <LI>Subdirectories of the directory named "src" of certain Plug-ins 
-  <LI>Feature directories </LI></UL>
-<P>Note: if a Feature made available by the Eclipse Foundation is installed 
-using the Eclipse Update Manager, you must agree to a license ("Feature Update 
-License") during the installation process. If the Feature contains Included 
-Features, the Feature Update License should either provide you with the terms 
-and conditions governing the Included Features or inform you where you can 
-locate them. Feature Update Licenses may be found in the "license" property of 
-files named "feature.properties". Such Abouts, Feature Licenses and Feature 
-Update Licenses contain the terms and conditions (or references to such terms 
-and conditions) that govern your use of the associated Content in that 
-directory.</P>
-<P>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL 
-OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE 
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</P>
-<UL>
-  <LI>Common Public License Version 1.0 (available at <A 
-  href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</A>) 
-
-  <LI>Apache Software License 1.1 (available at <A 
-  href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</A>) 
-
-  <LI>Apache Software License 2.0 (available at <A 
-  href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</A>) 
-
-  <LI>IBM Public License 1.0 (available at <A 
-  href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</A>) 
-
-  <LI>Metro Link Public License 1.00 (available at <A 
-  href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</A>) 
-
-  <LI>Mozilla Public License Version 1.1 (available at <A 
-  href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</A>) 
-  </LI></UL>
-<P>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR 
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License is 
-provided, please contact the Eclipse Foundation to determine what terms and 
-conditions govern that particular Content.</P>
-<H3>Cryptography</H3>
-<P>Content may contain encryption software. The country in which you are 
-currently may have restrictions on the import, possession, and use, and/or 
-re-export to another country, of encryption software. BEFORE using any 
-encryption software, please check the country's laws, regulations and policies 
-concerning the import, possession, or use, and re-export of encryption software, 
-to see if this is permitted.</P></BODY></HTML>
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/.cvsignore b/features/org.eclipse.wst.common_ui.feature.patch/.cvsignore
deleted file mode 100644
index c14487c..0000000
--- a/features/org.eclipse.wst.common_ui.feature.patch/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-build.xml
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/.project b/features/org.eclipse.wst.common_ui.feature.patch/.project
deleted file mode 100644
index 0dbb12b..0000000
--- a/features/org.eclipse.wst.common_ui.feature.patch/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.common_ui.feature.patch</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/build.properties b/features/org.eclipse.wst.common_ui.feature.patch/build.properties
deleted file mode 100644
index cb50260..0000000
--- a/features/org.eclipse.wst.common_ui.feature.patch/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-bin.includes = feature.xml,\
-               license.html,\
-               feature.properties,\
-               epl-v10.html,\
-               eclipse_update_120.jpg
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/buildnotes_org.eclipse.wst.common_ui.feature.patch.html b/features/org.eclipse.wst.common_ui.feature.patch/buildnotes_org.eclipse.wst.common_ui.feature.patch.html
deleted file mode 100644
index 82503c2..0000000
--- a/features/org.eclipse.wst.common_ui.feature.patch/buildnotes_org.eclipse.wst.common_ui.feature.patch.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<meta name="Build" content="Build">
-<title>WTP 3.0.4 Patches</title>
-</head>
-
-<body>
-
-<h1>WTP 3.0.4 Patches</h1>
-
-<h2>org.eclipse.wst.common_ui.feature</h2>
-
-<p>Bug <a href='https://bugs.eclipse.org/267144'>267144</a>. RuntimesPropertyPage needs ProgressMonitor</p>
-</body>
-</html>
\ No newline at end of file
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/eclipse_update_120.jpg b/features/org.eclipse.wst.common_ui.feature.patch/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708..0000000
--- a/features/org.eclipse.wst.common_ui.feature.patch/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/epl-v10.html b/features/org.eclipse.wst.common_ui.feature.patch/epl-v10.html
deleted file mode 100644
index ed4b196..0000000
--- a/features/org.eclipse.wst.common_ui.feature.patch/epl-v10.html
+++ /dev/null
@@ -1,328 +0,0 @@
-<html xmlns:o="urn:schemas-microsoft-com:office:office"
-xmlns:w="urn:schemas-microsoft-com:office:word"
-xmlns="http://www.w3.org/TR/REC-html40">
-
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
-<meta name=ProgId content=Word.Document>
-<meta name=Generator content="Microsoft Word 9">
-<meta name=Originator content="Microsoft Word 9">
-<link rel=File-List
-href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
-<title>Eclipse Public License - Version 1.0</title>
-<!--[if gte mso 9]><xml>
- <o:DocumentProperties>
-  <o:Revision>2</o:Revision>
-  <o:TotalTime>3</o:TotalTime>
-  <o:Created>2004-03-05T23:03:00Z</o:Created>
-  <o:LastSaved>2004-03-05T23:03:00Z</o:LastSaved>
-  <o:Pages>4</o:Pages>
-  <o:Words>1626</o:Words>
-  <o:Characters>9270</o:Characters>
-   <o:Lines>77</o:Lines>
-  <o:Paragraphs>18</o:Paragraphs>
-  <o:CharactersWithSpaces>11384</o:CharactersWithSpaces>
-  <o:Version>9.4402</o:Version>
- </o:DocumentProperties>
-</xml><![endif]--><!--[if gte mso 9]><xml>
- <w:WordDocument>
-  <w:TrackRevisions/>
- </w:WordDocument>
-</xml><![endif]-->
-<style>
-<!--
- /* Font Definitions */
-@font-face
-	{font-family:Tahoma;
-	panose-1:2 11 6 4 3 5 4 4 2 4;
-	mso-font-charset:0;
-	mso-generic-font-family:swiss;
-	mso-font-pitch:variable;
-	mso-font-signature:553679495 -2147483648 8 0 66047 0;}
- /* Style Definitions */
-p.MsoNormal, li.MsoNormal, div.MsoNormal
-	{mso-style-parent:"";
-	margin:0in;
-	margin-bottom:.0001pt;
-	mso-pagination:widow-orphan;
-	font-size:12.0pt;
-	font-family:"Times New Roman";
-	mso-fareast-font-family:"Times New Roman";}
-p
-	{margin-right:0in;
-	mso-margin-top-alt:auto;
-	mso-margin-bottom-alt:auto;
-	margin-left:0in;
-	mso-pagination:widow-orphan;
-	font-size:12.0pt;
-	font-family:"Times New Roman";
-	mso-fareast-font-family:"Times New Roman";}
-p.BalloonText, li.BalloonText, div.BalloonText
-	{mso-style-name:"Balloon Text";
-	margin:0in;
-	margin-bottom:.0001pt;
-	mso-pagination:widow-orphan;
-	font-size:8.0pt;
-	font-family:Tahoma;
-	mso-fareast-font-family:"Times New Roman";}
-@page Section1
-	{size:8.5in 11.0in;
-	margin:1.0in 1.25in 1.0in 1.25in;
-	mso-header-margin:.5in;
-	mso-footer-margin:.5in;
-	mso-paper-source:0;}
-div.Section1
-	{page:Section1;}
--->
-</style>
-</head>
-
-<body lang=EN-US style='tab-interval:.5in'>
-
-<div class=Section1>
-
-<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
-</p>
-
-<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
-THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
-REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
-OF THIS AGREEMENT.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-in the case of the initial Contributor, the initial code and documentation
-distributed under this Agreement, and<br clear=left>
-b) in the case of each subsequent Contributor:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-changes to the Program, and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-additions to the Program;</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
-such changes and/or additions to the Program originate from and are distributed
-by that particular Contributor. A Contribution 'originates' from a Contributor
-if it was added to the Program by such Contributor itself or anyone acting on
-such Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in conjunction
-with the Program under their own license agreement, and (ii) are not derivative
-works of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
-entity that distributes the Program.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
-claims licensable by a Contributor which are necessarily infringed by the use
-or sale of its Contribution alone or when combined with the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
-distributed in accordance with this Agreement.</span> </p>
-
-<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
-receives the Program under this Agreement, including all Contributors.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-Subject to the terms of this Agreement, each Contributor hereby grants Recipient
-a non-exclusive, worldwide, royalty-free copyright license to<span
-style='color:red'> </span>reproduce, prepare derivative works of, publicly
-display, publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and object code
-form.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-Subject to the terms of this Agreement, each Contributor hereby grants
-Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
-patent license under Licensed Patents to make, use, sell, offer to sell, import
-and otherwise transfer the Contribution of such Contributor, if any, in source
-code and object code form. This patent license shall apply to the combination
-of the Contribution and the Program if, at the time the Contribution is added
-by the Contributor, such addition of the Contribution causes such combination
-to be covered by the Licensed Patents. The patent license shall not apply to
-any other combinations which include the Contribution. No hardware per se is
-licensed hereunder. </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
-Recipient understands that although each Contributor grants the licenses to its
-Contributions set forth herein, no assurances are provided by any Contributor
-that the Program does not infringe the patent or other intellectual property
-rights of any other entity. Each Contributor disclaims any liability to Recipient
-for claims brought by any other entity based on infringement of intellectual
-property rights or otherwise. As a condition to exercising the rights and
-licenses granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For example,
-if a third party patent license is required to allow Recipient to distribute
-the Program, it is Recipient's responsibility to acquire that license before
-distributing the Program.</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
-Each Contributor represents that to its knowledge it has sufficient copyright
-rights in its Contribution, if any, to grant the copyright license set forth in
-this Agreement. </span></p>
-
-<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
-
-<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
-Program in object code form under its own license agreement, provided that:</span>
-</p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it complies with the terms and conditions of this Agreement; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
-its license agreement:</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
-effectively disclaims on behalf of all Contributors all warranties and
-conditions, express and implied, including warranties or conditions of title
-and non-infringement, and implied warranties or conditions of merchantability
-and fitness for a particular purpose; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
-effectively excludes on behalf of all Contributors all liability for damages,
-including direct, indirect, special, incidental and consequential damages, such
-as lost profits; </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
-states that any provisions which differ from this Agreement are offered by that
-Contributor alone and not by any other party; and</span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
-states that source code for the Program is available from such Contributor, and
-informs licensees how to obtain it in a reasonable manner on or through a
-medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
-
-<p><span style='font-size:10.0pt'>When the Program is made available in source
-code form:</span> </p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
-it must be made available under this Agreement; and </span></p>
-
-<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
-copy of this Agreement must be included with each copy of the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
-copyright notices contained within the Program. </span></p>
-
-<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
-originator of its Contribution, if any, in a manner that reasonably allows
-subsequent Recipients to identify the originator of the Contribution. </span></p>
-
-<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
-
-<p><span style='font-size:10.0pt'>Commercial distributors of software may
-accept certain responsibilities with respect to end users, business partners
-and the like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create potential
-liability for other Contributors. Therefore, if a Contributor includes the
-Program in a commercial product offering, such Contributor (&quot;Commercial
-Contributor&quot;) hereby agrees to defend and indemnify every other
-Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
-costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
-legal actions brought by a third party against the Indemnified Contributor to
-the extent caused by the acts or omissions of such Commercial Contributor in
-connection with its distribution of the Program in a commercial product
-offering. The obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In order
-to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
-Contributor in writing of such claim, and b) allow the Commercial Contributor
-to control, and cooperate with the Commercial Contributor in, the defense and
-any related settlement negotiations. The Indemnified Contributor may participate
-in any such claim at its own expense.</span> </p>
-
-<p><span style='font-size:10.0pt'>For example, a Contributor might include the
-Program in a commercial product offering, Product X. That Contributor is then a
-Commercial Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance claims and
-warranties are such Commercial Contributor's responsibility alone. Under this
-section, the Commercial Contributor would have to defend claims against the
-other Contributors related to those performance claims and warranties, and if a
-court requires any other Contributor to pay any damages as a result, the
-Commercial Contributor must pay those damages.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
-WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
-MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and distributing the
-Program and assumes all risks associated with its exercise of rights under this
-Agreement , including but not limited to the risks and costs of program errors,
-compliance with applicable laws, damage to or loss of data, programs or
-equipment, and unavailability or interruption of operations. </span></p>
-
-<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
-
-<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
-AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
-THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
-THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
-
-<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
-
-<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
-or unenforceable under applicable law, it shall not affect the validity or
-enforceability of the remainder of the terms of this Agreement, and without
-further action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.</span> </p>
-
-<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
-against any entity (including a cross-claim or counterclaim in a lawsuit)
-alleging that the Program itself (excluding combinations of the Program with
-other software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the date
-such litigation is filed. </span></p>
-
-<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
-shall terminate if it fails to comply with any of the material terms or
-conditions of this Agreement and does not cure such failure in a reasonable
-period of time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive. </span></p>
-
-<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
-copies of this Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The Agreement
-Steward reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement Steward has
-the right to modify this Agreement. The Eclipse Foundation is the initial
-Agreement Steward. The Eclipse Foundation may assign the responsibility to
-serve as the Agreement Steward to a suitable separate entity. Each new version
-of the Agreement will be given a distinguishing version number. The Program
-(including Contributions) may always be distributed subject to the version of
-the Agreement under which it was received. In addition, after a new version of
-the Agreement is published, Contributor may elect to distribute the Program
-(including its Contributions) under the new version. Except as expressly stated
-in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
-the intellectual property of any Contributor under this Agreement, whether
-expressly, by implication, estoppel or otherwise. All rights in the Program not
-expressly granted under this Agreement are reserved.</span> </p>
-
-<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
-State of New York and the intellectual property laws of the United States of
-America. No party to this Agreement will bring a legal action under this
-Agreement more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.</span> </p>
-
-<p class=MsoNormal><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
-
-</div>
-
-</body>
-
-</html>
\ No newline at end of file
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/feature.properties b/features/org.eclipse.wst.common_ui.feature.patch/feature.properties
deleted file mode 100644
index 52e1b78..0000000
--- a/features/org.eclipse.wst.common_ui.feature.patch/feature.properties
+++ /dev/null
@@ -1,148 +0,0 @@
-###############################################################################
-# Copyright (c) 2008 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=WTP Patches for org.eclipse.wst.common_ui.feature
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=The Eclipse Web Tools Platform (WTP) Project update site
-
-# "description" property - description of the feature
-description=\
-Contains fixes described in the following bugillia(s):\n\
-\n\
-Bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=267144 RuntimesPropertyPage needs ProgressMonitor\n\
-\n\
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2008 IBM Corporation and others.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE FOUNDATION SOFTWARE USER AGREEMENT\n\
-September, 2008\n\
-\n\
-Usage Of Content\n\
-\n\
-THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by the Eclipse Foundation\n\
-is provided to you under the terms and conditions of the Eclipse Public\n\
-License Version 1.0 ("EPL"). A copy of the EPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
-For purposes of the EPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-   - Content may be structured and packaged into modules to facilitate delivering,\n\
-     extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
-     plug-in fragments ("Fragments"), and features ("Features").\n\
-   - Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java? ARchive)\n\
-     in a directory named "plugins".\n\
-   - A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
-     Each Feature may be packaged as a sub-directory in a directory named "features".\n\
-     Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
-     numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
-   - Features may also include other Features ("Included Features"). Within a Feature, files\n\
-     named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Inside Plug-ins and Fragments packaged as JARs\n\
-   - Sub-directories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n\
-\n\
-Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.\n
-########### end of license property ##########################################
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/feature.xml b/features/org.eclipse.wst.common_ui.feature.patch/feature.xml
deleted file mode 100644
index c6ed5b7..0000000
--- a/features/org.eclipse.wst.common_ui.feature.patch/feature.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.wst.common_ui.feature.patch"
-      label="%featureName"
-      version="3.0.4.qualifier"
-      provider-name="%providerName">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <requires>
-      <import feature="org.eclipse.wst.common_ui.feature" version="3.0.4.v200811200248-7C78ELhE8VrRVqtHp4iT8PuSwZ5W" patch="true"/>
-   </requires>
-
-   <plugin
-         id="org.eclipse.wst.common.project.facet.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-</feature>
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/license.html b/features/org.eclipse.wst.common_ui.feature.patch/license.html
deleted file mode 100644
index 2347060..0000000
--- a/features/org.eclipse.wst.common_ui.feature.patch/license.html
+++ /dev/null
@@ -1,93 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
-<!-- saved from url=(0044)http://www.eclipse.org/legal/epl/notice.html -->
-<HTML><HEAD><TITLE>Eclipse.org Software User Agreement</TITLE>
-<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
-<META content="MSHTML 6.00.2800.1479" name=GENERATOR></HEAD>
-<BODY lang=EN-US vLink=purple link=blue>
-<H2>Eclipse Foundation Software User Agreement</H2>
-<P>January 28, 2005</P>
-<H3>Usage Of Content</H3>
-<P>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION 
-AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT"). USE OF 
-THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE 
-TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED 
-BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED 
-BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE 
-AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE 
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS OF ANY 
-APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU 
-MAY NOT USE THE CONTENT.</P>
-<H3>Applicable Licenses</H3>
-<P>Unless otherwise indicated, all Content made available by the Eclipse 
-Foundation is provided to you under the terms and conditions of the Eclipse 
-Public License Version 1.0 ("EPL"). A copy of the EPL is provided with this 
-Content and is also available at <A 
-href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</A>. 
-For purposes of the EPL, "Program" will mean the Content.</P>
-<P>Content includes, but is not limited to, source code, object code, 
-documentation and other files maintained in the Eclipse.org CVS repository 
-("Repository") in CVS modules ("Modules") and made available as downloadable 
-archives ("Downloads").</P>
-<P>Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments 
-("Fragments"), and features ("Features"). A Feature is a bundle of one or more 
-Plug-ins and/or Fragments and associated material. Files named "feature.xml" may 
-contain a list of the names and version numbers of the Plug-ins and/or Fragments 
-associated with a Feature. Plug-ins and Fragments are located in directories 
-named "plugins" and Features are located in directories named "features".</P>
-<P>Features may also include other Features ("Included Features"). Files named 
-"feature.xml" may contain a list of the names and version numbers of Included 
-Features.</P>
-<P>The terms and conditions governing Plug-ins and Fragments should be contained 
-in files named "about.html" ("Abouts"). The terms and conditions governing 
-Features and Included Features should be contained in files named "license.html" 
-("Feature Licenses"). Abouts and Feature Licenses may be located in any 
-directory of a Download or Module including, but not limited to the following 
-locations:</P>
-<UL>
-  <LI>The top-level (root) directory 
-  <LI>Plug-in and Fragment directories 
-  <LI>Subdirectories of the directory named "src" of certain Plug-ins 
-  <LI>Feature directories </LI></UL>
-<P>Note: if a Feature made available by the Eclipse Foundation is installed 
-using the Eclipse Update Manager, you must agree to a license ("Feature Update 
-License") during the installation process. If the Feature contains Included 
-Features, the Feature Update License should either provide you with the terms 
-and conditions governing the Included Features or inform you where you can 
-locate them. Feature Update Licenses may be found in the "license" property of 
-files named "feature.properties". Such Abouts, Feature Licenses and Feature 
-Update Licenses contain the terms and conditions (or references to such terms 
-and conditions) that govern your use of the associated Content in that 
-directory.</P>
-<P>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL 
-OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE 
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</P>
-<UL>
-  <LI>Common Public License Version 1.0 (available at <A 
-  href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</A>) 
-
-  <LI>Apache Software License 1.1 (available at <A 
-  href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</A>) 
-
-  <LI>Apache Software License 2.0 (available at <A 
-  href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</A>) 
-
-  <LI>IBM Public License 1.0 (available at <A 
-  href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</A>) 
-
-  <LI>Metro Link Public License 1.00 (available at <A 
-  href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</A>) 
-
-  <LI>Mozilla Public License Version 1.1 (available at <A 
-  href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</A>) 
-  </LI></UL>
-<P>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR 
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License is 
-provided, please contact the Eclipse Foundation to determine what terms and 
-conditions govern that particular Content.</P>
-<H3>Cryptography</H3>
-<P>Content may contain encryption software. The country in which you are 
-currently may have restrictions on the import, possession, and use, and/or 
-re-export to another country, of encryption software. BEFORE using any 
-encryption software, please check the country's laws, regulations and policies 
-concerning the import, possession, or use, and re-export of encryption software, 
-to see if this is permitted.</P></BODY></HTML>
diff --git a/plugins/org.eclipse.jem.util/.classpath b/plugins/org.eclipse.jem.util/.classpath
deleted file mode 100644
index a988941..0000000
--- a/plugins/org.eclipse.jem.util/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="jemutil"/>
-	<classpathentry kind="src" path="property_files"/>
-	<classpathentry kind="src" path="jemutil-nonworkbnech"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.jem.util/.cvsignore b/plugins/org.eclipse.jem.util/.cvsignore
deleted file mode 100644
index e043cc4..0000000
--- a/plugins/org.eclipse.jem.util/.cvsignore
+++ /dev/null
@@ -1,3 +0,0 @@
-bin
-build.xml
-javaCompiler...args
diff --git a/plugins/org.eclipse.jem.util/.options b/plugins/org.eclipse.jem.util/.options
deleted file mode 100644
index 0565417..0000000
--- a/plugins/org.eclipse.jem.util/.options
+++ /dev/null
@@ -1,3 +0,0 @@
-org.eclipse.jem.util/debug/logtrace=false
-org.eclipse.jem.util/debug/logtracefile=false
-org.eclipse.jem.util/debug/loglevel=WARNING
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/.project b/plugins/org.eclipse.jem.util/.project
deleted file mode 100644
index e0e4120..0000000
--- a/plugins/org.eclipse.jem.util/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jem.util</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.jem.util/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.jem.util/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 02c2954..0000000
--- a/plugins/org.eclipse.jem.util/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Sun Apr 15 21:15:45 EDT 2007
-eclipse.preferences.version=1
-encoding/<project>=ISO-8859-1
diff --git a/plugins/org.eclipse.jem.util/.settings/org.eclipse.jdt.core.prefs b/plugins/org.eclipse.jem.util/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index cb579cc..0000000
--- a/plugins/org.eclipse.jem.util/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,292 +0,0 @@
-#Tue Jul 31 20:39:48 EDT 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=error
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLocal=error
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.5
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=1
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
-org.eclipse.jdt.core.formatter.comment.line_length=150
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=150
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
diff --git a/plugins/org.eclipse.jem.util/.settings/org.eclipse.jdt.ui.prefs b/plugins/org.eclipse.jem.util/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 6c8e1bc..0000000
--- a/plugins/org.eclipse.jem.util/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,8 +0,0 @@
-#Tue Feb 21 10:09:19 EST 2006
-eclipse.preferences.version=1
-formatter_profile=_jve
-formatter_settings_version=10
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;org;org.eclipse.wtp;org.eclipse.jem;org.eclipse.ve.internal.cdm;org.eclipse.ve.internal.cde;org.eclipse.ve.internal.jcm;org.eclipse.ve.internal.java;org.eclipse.ve;com;
-org.eclipse.jdt.ui.ondemandthreshold=3
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?><templates/>
diff --git a/plugins/org.eclipse.jem.util/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.jem.util/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index fb46b28..0000000
--- a/plugins/org.eclipse.jem.util/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,12 +0,0 @@
-#Fri May 13 10:10:04 EDT 2005
-compilers.p.deprecated=1
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=2
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=2
-compilers.p.unknown-element=1
-compilers.p.unknown-resource=2
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=2
-compilers.use-project=true
-eclipse.preferences.version=1
diff --git a/plugins/org.eclipse.jem.util/META-INF/MANIFEST.MF b/plugins/org.eclipse.jem.util/META-INF/MANIFEST.MF
deleted file mode 100644
index 9e05ebc..0000000
--- a/plugins/org.eclipse.jem.util/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,26 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jem.util; singleton:=true
-Bundle-Version: 2.0.101.qualifier
-Bundle-Activator: org.eclipse.jem.util.plugin.JEMUtilPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.jem.internal.util.emf.workbench;x-friends:="org.eclipse.jem.beaninfo",
- org.eclipse.jem.internal.util.emf.workbench.nature;x-internal:=true,
- org.eclipse.jem.internal.util.emf.workbench.nls;x-internal:=true,
- org.eclipse.jem.util,
- org.eclipse.jem.util.emf.workbench,
- org.eclipse.jem.util.emf.workbench.nature,
- org.eclipse.jem.util.logger,
- org.eclipse.jem.util.logger.proxy,
- org.eclipse.jem.util.logger.proxyrender,
- org.eclipse.jem.util.plugin
-Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.emf.ecore;bundle-version="[2.4.0,3.0.0)",
- org.eclipse.emf.ecore.xmi;bundle-version="[2.4.0,3.0.0)",
- org.eclipse.perfmsr.core;bundle-version="1.0.0";resolution:=optional,
- com.ibm.icu;bundle-version="[3.8.1.1,4.0.0)"
-Eclipse-LazyStart: true
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/plugins/org.eclipse.jem.util/PERFMSR_README.txt b/plugins/org.eclipse.jem.util/PERFMSR_README.txt
deleted file mode 100644
index ea51258..0000000
--- a/plugins/org.eclipse.jem.util/PERFMSR_README.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-org.eclipse.perfmsr.core code can be found in the perfmsr.jar loaded as binary in this
-project. Since this is optional, we needed to be able to compile without the true
-plugin being available. So we created the stub jar containing just what we needed.
-
-If there is a need to change anything in the stub jar, you will need to checkout
-the folder org.eclipse.jem.util/org.eclipse.perfmsr.core.stub. This will then
-be a separate project. You can then make the changes there, and then following the
-README in that project to create and commit the changes. 
-
-The jar is in this project's classpath, but it is not exported and is not in
-the plugin.xml or build.properties. This means it will be available for compilation
-but it won't show up in the runtime workbench.
\ No newline at end of file
diff --git "a/plugins/org.eclipse.jem.util/READ_ME_BEFORE_CHANGING_MANIFEST\041\041\041" "b/plugins/org.eclipse.jem.util/READ_ME_BEFORE_CHANGING_MANIFEST\041\041\041"
deleted file mode 100644
index 718e94a..0000000
--- "a/plugins/org.eclipse.jem.util/READ_ME_BEFORE_CHANGING_MANIFEST\041\041\041"
+++ /dev/null
@@ -1,8 +0,0 @@
-Do not include a new dependency plugin to the MANIFEST for this plugind!!!
-
-The reason for this is that this plugin is also executed outside of Eclipse framework, such IBM Websphere Application Server (c) IBM. We cannot add
-new dependencies to the plugin because the current set is considered to be API. Adding a new set without consulting those users would break
-them.
-
-The external API is anything in the jemutil-nonworkbench folder. If it is only for a class in the other source folder(s) it may be OK since they would not be 
-using that code. But it would be best to consult with them first.
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/about.html b/plugins/org.eclipse.jem.util/about.html
deleted file mode 100644
index 5acea59..0000000
--- a/plugins/org.eclipse.jem.util/about.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html><head><title>About</title>
-
-
-
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"></head><body lang="EN-US">
-<h2>About This Content</h2>
- 
-<P>June, 2008</P>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was 
-provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body></html>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/build.properties b/plugins/org.eclipse.jem.util/build.properties
deleted file mode 100644
index aa0d851..0000000
--- a/plugins/org.eclipse.jem.util/build.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = plugin.xml,\
-               .options,\
-               about.html,\
-               plugin.properties,\
-               META-INF/,\
-               .
-src.includes = schema/,\
-               about.html
-output.. = bin/
-source.. = jemutil/,\
-           property_files/,\
-           jemutil-nonworkbnech/
-jars.compile.order = .
-extra.. = ./org.eclipse.perfmsr.core.stub/perfmsr.jar
diff --git a/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/LogEntry.java b/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/LogEntry.java
deleted file mode 100644
index f50bae7..0000000
--- a/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/LogEntry.java
+++ /dev/null
@@ -1,329 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util.logger;
-
-import java.io.ByteArrayOutputStream;
-import java.io.PrintWriter;
-
-/**
- * This class should be used when logging information which should be grouped together. Instead of creating a new instance of this class every time it
- * is needed, for performance reasons, create an instance and reuse it.
- * <p>
- * Currently the only fields that are logged are the {@link #getText()} and {@link #getTargetException()}.
- * 
- * @since 1.0.0
- */
-public class LogEntry {
-
-	private int _executionMap = 0;
-
-	private Throwable _caughtException = null;
-
-	private String _propertiesFileName = null;
-
-	private String localeOfOrigin = null;
-
-	private String sourceIdentifier;
-
-	private String elapsedTime;
-
-	private String text;
-
-	private String messageTypeIdentifier;
-
-	/**
-	 * The file name parameter must be a name which can be used by ResourceBundle to load the string from the .properties file. The parameter must not
-	 * be null or the empty string.
-	 * 
-	 * @param propertiesFileName
-	 * 
-	 * @since 1.0.0
-	 */
-	public LogEntry(String propertiesFileName) {
-		setPropertiesFileName(propertiesFileName);
-	}
-
-	/**
-	 * Default Constructor
-	 */
-	public LogEntry() {
-	}
-
-	/**
-	 * Get execution map
-	 * 
-	 * @return execution map
-	 * 
-	 * @since 1.0.0
-	 */
-	public int getExecutionMap() {
-		return _executionMap;
-	}
-
-	/**
-	 * Get the properties file name
-	 * 
-	 * @return properties file name or <code>null</code> if not set.
-	 * 
-	 * @since 1.0.0
-	 */
-	public String getPropertiesFileName() {
-		return _propertiesFileName;
-	}
-
-	/**
-	 * Get target exception
-	 * 
-	 * @return target exception or <code>null</code> if not set.
-	 * 
-	 * @since 1.0.0
-	 */
-	public Throwable getTargetException() {
-		return _caughtException;
-	}
-
-	/**
-	 * Get locale of origin
-	 * 
-	 * @return locale of origin or <code>null</code> if not set.
-	 * 
-	 * @since 1.0.0
-	 */
-	public String getLocaleOfOrigin() {
-		return localeOfOrigin;
-	}
-
-	/**
-	 * Get source identifier.
-	 * 
-	 * @return source identifier or <code>null</code> if not set.
-	 * 
-	 * @since 1.0.0
-	 */
-	public String getSourceidentifier() {
-		return sourceIdentifier;
-	}
-
-	/**
-	 * Get elapsed time
-	 * 
-	 * @return elapsed time
-	 * 
-	 * @since 1.0.0
-	 */
-	public String getElapsedTime() {
-		return elapsedTime;
-	}
-
-	/**
-	 * Get the message type identifier
-	 * 
-	 * @return message type identifier or <code>null</code> if not set.
-	 * 
-	 * @since 1.0.0
-	 */
-	public String getMessageTypeIdentifier() {
-		return messageTypeIdentifier;
-	}
-
-	/**
-	 * Set execution map
-	 * 
-	 * @param map
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setExecutionMap(int map) {
-		_executionMap = map;
-	}
-
-	/**
-	 * Set properties file name
-	 * 
-	 * @param fName
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setPropertiesFileName(String fName) {
-		_propertiesFileName = fName;
-	}
-
-	/**
-	 * Set target exception
-	 * 
-	 * @param exc
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setTargetException(Throwable exc) {
-		_caughtException = exc;
-	}
-
-	/**
-	 * Append stacktrace of current stack (at the time of call to this method) to the text buffer.
-	 * 
-	 * 
-	 * @since 1.0.0
-	 */
-	public void appendStackTrace() {
-		// Grab the stack trace from the Thread ...
-		ByteArrayOutputStream byteOutput = new ByteArrayOutputStream();
-		PrintWriter printWriter = new PrintWriter(byteOutput);
-		// Can't call Thread.dumpStack() because it doesn't take a writer as input.
-		// Copy its mechanism instead.
-		new Exception("Stack trace").printStackTrace(printWriter); //$NON-NLS-1$
-		printWriter.flush();
-
-		// and update the text to the LogEntry's text.
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(getText());
-		buffer.append("\n"); //$NON-NLS-1$
-		buffer.append(byteOutput.toString());
-		setText(buffer.toString());
-	}
-
-	/**
-	 * Get the text.
-	 * 
-	 * @return text or or <code>null</code> if not set.
-	 * 
-	 * @since 1.0.0
-	 */
-	public String getText() {
-		return text;
-	}
-
-	/**
-	 * Set the text
-	 * 
-	 * @param string
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setText(String string) {
-		text = string;
-	}
-
-	/**
-	 * Set every entry to the default value except the properties file name.
-	 * 
-	 * 
-	 * @since 1.0.0
-	 */
-	public void reset() {
-		setExecutionMap(0);
-		setTargetException(null);
-		localeOfOrigin = null;
-		sourceIdentifier = null;
-		elapsedTime = null;
-		setText(null);
-	}
-
-	/**
-	 * Set locale of origin.
-	 * 
-	 * @param origin
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setLocaleOfOrigin(String origin) {
-		localeOfOrigin = origin;
-	}
-
-	/**
-	 * Set source id.
-	 * 
-	 * @param id
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setSourceID(String id) {
-		sourceIdentifier = id;
-	}
-
-	/**
-	 * Set elapsed time.
-	 * 
-	 * @param time
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setElapsedTime(long time) {
-		elapsedTime = String.valueOf(time);
-	}
-
-	/**
-	 * Set source identifier.
-	 * 
-	 * @param string
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setSourceIdentifier(String string) {
-		setSourceID(string);
-	}
-
-	/**
-	 * Set message type identifier.
-	 * 
-	 * @param string
-	 * 
-	 * @since 1.0.0
-	 * @deprecated Use {@link #setText(String)} instead and calling it with the result of {@link java.text.MessageFormat#format(java.lang.String, java.lang.Object[])}
-	 */
-	public void setMessageTypeIdentifier(String string) {
-		messageTypeIdentifier = string;
-	}
-
-	/**
-	 * Set message type id. Same as <code>setMessageTypeIdentifier.</code>
-	 * @param string
-	 * 
-	 * @since 1.0.0
-	 * @deprecated Use {@link #setText(String)} instead and calling it with the result of {@link java.text.MessageFormat#format(java.lang.String, java.lang.Object[])}
-	 */
-	public void setMessageTypeID(String string) {
-		setMessageTypeIdentifier(string);
-	}
-
-	/**
-	 * Set tokens. (Currently this is ignored).
-	 * 
-	 * @param strings
-	 * 
-	 * @since 1.0.0
-	 * @deprecated Use {@link #setText(String)} instead and calling it with the result of {@link java.text.MessageFormat#format(java.lang.String, java.lang.Object[])}
-	 */
-	public void setTokens(String[] strings) {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString() {
-		ByteArrayOutputStream byteOutput = new ByteArrayOutputStream();
-		PrintWriter printWriter = new PrintWriter(byteOutput);
-		if (text != null)
-			printWriter.println(text);
-		if (_caughtException != null) {
-			_caughtException.printStackTrace(printWriter);
-		}
-		printWriter.flush();
-		return byteOutput.toString();
-	}
-
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/ILogRenderer.java b/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/ILogRenderer.java
deleted file mode 100644
index 5d1e951..0000000
--- a/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/ILogRenderer.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util.logger.proxy;
-
-/**
- * Basic log renderer interface. It is replaced by the extension <code>ILogRenderer2.</code>
- * 
- * @since 1.0.0
- */
-public interface ILogRenderer {
-
-	/**
-	 * Logged to console.
-	 */
-	final public static String CONSOLE_DESCRIPTION = "console"; //$NON-NLS-1$
-
-	/**
-	 * Logged to workbench.
-	 */
-	final public static String WORKBENCH_DESCRIPTION = "workbench log"; //$NON-NLS-1$
-
-	/**
-	 * Not logged.
-	 */
-	final public static String NOLOG_DESCRIPTION = ""; //$NON-NLS-1$
-
-	/**
-	 * Log levels. These are deprecated, use <code>java.util.logging.Level</code> codes instead.
-	 */
-	final public static int LOG_ERROR = 0;
-
-	final public static int LOG_TRACE = 1;
-
-	final public static int LOG_WARNING = 2;
-
-	final public static int LOG_INFO = 3;
-
-	final public static String DefaultPluginID = "org.eclipse.jem.util"; //$NON-NLS-1$
-
-	/**
-	 * Log the string at the specified type.
-	 * 
-	 * @param msg
-	 * @param type
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(String msg, int type);
-
-	/**
-	 * Start or stop the tracing.
-	 * 
-	 * @param Flag
-	 *            <code>true</code> to start the tracing.
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setTraceMode(boolean Flag);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/ILogRenderer2.java b/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/ILogRenderer2.java
deleted file mode 100644
index f5a670f..0000000
--- a/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/ILogRenderer2.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util.logger.proxy;
-
-import java.util.logging.Level;
- 
-/**
- * Log renderer that provides more function. Basically it can handle
- * the logging of specific types in a different manner than the default
- * conversion to string supplied by Logger.
- * 
- * It also uses the Level classes from java.util.logging as the logging levels.
- * 
- * @since 1.0.0
- */
-public interface ILogRenderer2 extends ILogRenderer {
-	
-	/**
-	 * When Logger.setLevel(DEFAULT): restore to what the default level was.
-	 * When log(...,DEFAULT): Log at the default level for the type of object.
-	 */
-	static final Level DEFAULT = new Logger.LocalLevel("DEFAULT", Integer.MAX_VALUE-1); //$NON-NLS-1$
-	
-	/**
-	 * When log(...,TRACE) : Log only when in trace mode.
-	 * Don't use in Logger.setLevel(). Has no meaning in that case.
-	 */
-	static final Level TRACE = new Logger.LocalLevel("TRACE", Integer.MAX_VALUE-2);	 //$NON-NLS-1$
-
-	/**
-	 * Log the throwable at the given level (if DEFAULT, use default level for a throwable).
-	 * 
-	 * @param t
-	 * @param level
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	String log(Throwable t, Level level);
-	
-	/**
-	 * Log the object at the given level (if DEFAULT, use default level for an object).
-	 * 
-	 * @param o
-	 * @param level
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	String log(Object o, Level level);
-	
-	/**
-	 * Log the boolean at the given level (if DEFAULT, use default level for a boolean).
-	 * 
-	 * @param b
-	 * @param level
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	String log(boolean b, Level level);	
-
-	/**
-	 * Log the char at the given level (if DEFAULT, use default level for a char).
-	 * 
-	 * @param c
-	 * @param level
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	String log(char c, Level level);	
-	
-	/**
-	 * Log the byte at the given level (if DEFAULT, use default level for a byte).
-	 * 
-	 * @param b
-	 * @param level
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	String log(byte b, Level level);
-	
-	/**
-	 * Log the short at the given level (if DEFAULT, use default level for a short).
-	 * 
-	 * @param s
-	 * @param level
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	String log(short s, Level level);
-	
-	/**
-	 * Log the int at the given level (if DEFAULT, use default level for an int).
-	 * 
-	 * @param i
-	 * @param level
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	String log(int i, Level level);
-
-	/**
-	 * Log the long at the given level (if DEFAULT, use default level for a long).
-	 * 
-	 * @param l
-	 * @param level
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	String log(long l, Level level);
-
-	/**
-	 * Log the float at the given level (if DEFAULT, use default level for a float).
-	 * 
-	 * @param f
-	 * @param level
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	String log(float f, Level level);
-
-	/**
-	 * Log the double at the given level (if DEFAULT, use default level for a double).
-	 * 
-	 * @param d
-	 * @param level
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	String log(double d, Level level);
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/JDKConsoleRenderer.java b/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/JDKConsoleRenderer.java
deleted file mode 100644
index c7c9d75..0000000
--- a/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/JDKConsoleRenderer.java
+++ /dev/null
@@ -1,247 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util.logger.proxy;
-
-import java.util.logging.Level;
-
-/**
- * Default log renderer to use when not running under Eclipse. It logs to sysout and syserr.
- * 
- * @since 1.1.0
- */
-
-public class JDKConsoleRenderer implements ILogRenderer2 {
-
-	private boolean fTraceMode = false; // will we actually punch trace messaged or not
-
-	private boolean fSettingTrace = false;
-
-	private Logger fMyLogger = null;
-
-	/**
-	 * Constructer taking a logger.
-	 * 
-	 * @param logger
-	 * 
-	 * @since 1.1.0
-	 */
-	public JDKConsoleRenderer(Logger logger) {
-		super();
-		fMyLogger = logger;
-		fTraceMode = fMyLogger.getTraceMode();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer#log(java.lang.String, int)
-	 */
-	public String log(String msg, int type) {
-
-		if (type == ILogRenderer.LOG_TRACE && !fTraceMode)
-			return null;
-
-		if (type == ILogRenderer.LOG_ERROR)
-			System.err.println(msg);
-		else
-			System.out.println(msg);
-		return ILogRenderer.CONSOLE_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer#setTraceMode(boolean)
-	 */
-	public void setTraceMode(boolean flag) {
-
-		if (fSettingTrace)
-			return;
-		fSettingTrace = true;
-		fTraceMode = flag;
-		fMyLogger.setTraceMode(flag);
-		fSettingTrace = false;
-	}
-
-	/**
-	 * Log the string at the given level.
-	 * 
-	 * @param msg
-	 * @param level
-	 * @return <code>CONSOLE_DESCRIPTION</code>
-	 * 
-	 * @since 1.1.0
-	 */
-	protected String log(String msg, Level level) {
-		if (level == Level.SEVERE)
-			System.err.println(msg);
-		else
-			System.out.println(msg);
-		return ILogRenderer.CONSOLE_DESCRIPTION;
-	}
-
-	/**
-	 * Answer if logging at the given level
-	 * 
-	 * @param logLevel
-	 * @return <code>true</code> if logging at the given level.
-	 * 
-	 * @since 1.1.0
-	 */
-	protected boolean isLogging(Level logLevel) {
-		return fTraceMode || fMyLogger.isLoggingLevel(logLevel);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(boolean, java.util.logging.Level)
-	 */
-	public String log(boolean b, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return log(fMyLogger.getGenericMsg(String.valueOf(b), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(byte, java.util.logging.Level)
-	 */
-	public String log(byte b, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return log(fMyLogger.getGenericMsg(String.valueOf(b), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(char, java.util.logging.Level)
-	 */
-	public String log(char c, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return log(fMyLogger.getGenericMsg(String.valueOf(c), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(double, java.util.logging.Level)
-	 */
-	public String log(double d, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return log(fMyLogger.getGenericMsg(String.valueOf(d), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(float, java.util.logging.Level)
-	 */
-	public String log(float f, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return log(fMyLogger.getGenericMsg(String.valueOf(f), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(int, java.util.logging.Level)
-	 */
-	public String log(int i, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return log(fMyLogger.getGenericMsg(String.valueOf(i), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(long, java.util.logging.Level)
-	 */
-	public String log(long l, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return log(fMyLogger.getGenericMsg(String.valueOf(l), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(java.lang.Object, java.util.logging.Level)
-	 */
-	public String log(Object o, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return log(fMyLogger.getGenericMsg(String.valueOf(o), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(short, java.util.logging.Level)
-	 */
-	public String log(short s, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return log(fMyLogger.getGenericMsg(String.valueOf(s), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(java.lang.Throwable, java.util.logging.Level)
-	 */
-	public String log(Throwable t, Level level) {
-		if (level == DEFAULT)
-			level = Level.SEVERE;
-		if (isLogging(level))
-			return log(fMyLogger.getGenericMsg(fMyLogger.exceptionToString(t), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/Logger.java b/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/Logger.java
deleted file mode 100644
index b86ad05..0000000
--- a/plugins/org.eclipse.jem.util/jemutil-nonworkbnech/org/eclipse/jem/util/logger/proxy/Logger.java
+++ /dev/null
@@ -1,843 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util.logger.proxy;
-
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.*;
-import java.util.logging.Level;
-
-/**
- * This is a base, UI independent logger.   It will
- * construct a consistent msg. body, and call an enfironment specific ILogRenderer.
- * By default, this logger will use a console based ILogRenderer,
- * and a J2EE Plugin identification.
- * 
- * <p>
- * When running outside of Eclipse, the trace and logging level come from the system properties
- * <ul>
- * 		<li>"debug" (="true") - The default is <code>false</code>. 
- * 		<li>"logLevel" (="level" where "level" is a level string, e.g. SEVERE, WARNING, etc. from the <code>java.util.logging.Level</code> class).
- * 			The default is "WARNING".
- * </ul>
- * 
- * 
- * @since 1.0.0
- */
-public class Logger {
-	
-	// This is used by ILogRenderer2 to define the default level.
-	static class LocalLevel extends Level {
-		/**
-		 * Comment for <code>serialVersionUID</code>
-		 * 
-		 * @since 1.1.0
-		 */
-		private static final long serialVersionUID = -6273357074767854883L;
-
-		public LocalLevel(String name, int level) {
-			super(name, level);
-		}
-	}	
-	
-	private boolean fTraceMode = false; // will we actually punch trace messaged or not              
-	private String fPluginID;
-	private ILogRenderer fRenderer = null;
-	private ILogRenderer2 renderer2 = null;
-	public String fLineSeperator;
-	private Level level;
-	private Level defaultLevel = Level.SEVERE;	// By default only severe or greater are logged.
-	private String logFileName;
-	private final static String DefaultLoggerPlugin = ILogRenderer.DefaultPluginID;
-	static private Hashtable Loggers = new Hashtable(); // Keep track of all the Loggers
-	final protected static String[] LogMark = { "*** ERROR *** ", //$NON-NLS-1$
-		"[Trace] ", //$NON-NLS-1$
-		"+++ Warning +++ ", //$NON-NLS-1$
-		"Info " }; //$NON-NLS-1$
-
-	final protected static String Filler = "    "; // Use this to indent msg. body //$NON-NLS-1$
-	
-	protected Logger() {
-		this(ILogRenderer.DefaultPluginID);
-	}
-	
-	protected Logger(String pluginID) {
-		fPluginID = pluginID;
-		setRenderer(new JDKConsoleRenderer(this));	// Set up default to this. Someone can change it later.
-	}
-
-	/**
-	 * Return the stacktrace as a print formatted string.
-	 * @param e
-	 * @return the stacktrace as a string.
-	 * 
-	 * @since 1.0.0
-	 */
-	public String exceptionToString(Throwable e) {
-		StringWriter stringWriter = new StringWriter();
-		e.printStackTrace(new PrintWriter(stringWriter));
-		return stringWriter.toString();
-	}
-	
-	/**
-	 * Get the system default logger. This is used for clients that don't know if they
-	 * are running in Eclipse or outside of it. This way they have a common logger format
-	 * which switch correctly.
-	 * @return default logger.
-	 * 
-	 * @since 1.0.0
-	 */
-	static public Logger getLogger() {
-		Logger defaultLogger = (Logger) Loggers.get(DefaultLoggerPlugin);
-		if (defaultLogger == null) {
-			defaultLogger = new Logger();
-			defaultLogger.init();
-			Loggers.put(DefaultLoggerPlugin, defaultLogger);
-		}
-		return defaultLogger;
-	}
-	
-	/**
-	 * Get the logger for a specific plugin.
-	 * @param pluginId
-	 * @return logger for a specific pluggin.
-	 * 
-	 * @since 1.0.0
-	 */
-	static public Logger getLogger(String pluginId) {
-		if (pluginId == null)
-			return Logger.getLogger();
-		Logger Logger = (Logger) Loggers.get(pluginId);
-		if (Logger == null) {
-			Logger = new Logger(pluginId);
-			Logger.init();
-			Loggers.put(pluginId, Logger);
-		}
-		return Logger;
-	}
-	
-	/**
-	 * Used by subclass to get a logger if it exists, but not create one.
-	 * @param pluginId
-	 * @return logger.
-	 * 
-	 * @since 1.0.0
-	 */
-	static protected Logger getLoggerIfExists(String pluginId) {
-		if (pluginId == null)
-			return Logger.getLogger();
-		else
-			return (Logger) Loggers.get(pluginId);
-	}
-
-	/**
-	 * Get the plugin id for this logger.
-	 * @return pluginid
-	 * 
-	 * @since 1.0.0
-	 */
-	public String getPluginID() {
-		return fPluginID;
-	}
-	
-	/**
-	 * Get the trace mode for this logger
-	 * @return <code>true</code> if tracing is going on.
-	 * 
-	 * @since 1.0.0
-	 */
-	public boolean getTraceMode() {
-		return fTraceMode;
-	}
-	
-	/*
-	 * Indent the Msg. Body to make it easier to read the log
-	 */
-	private void indentMsg(String msg, StringBuffer logMsg) {
-		// Line seperator is different on different platform, unix = \n, windows \r\n and mac \r
-		String sep = fLineSeperator;
-		if (msg.indexOf("\r\n") != -1) //$NON-NLS-1$
-			sep = "\r\n"; //$NON-NLS-1$
-		else if (msg.indexOf("\n") != -1) //$NON-NLS-1$
-			sep = "\n"; //$NON-NLS-1$
-		else if (msg.indexOf("\r") != -1) //$NON-NLS-1$
-			sep = "\r"; //$NON-NLS-1$
-		StringTokenizer tokenizer = new StringTokenizer(msg, sep);
-		boolean first = true;
-		while (tokenizer.hasMoreTokens()) {
-			if (first) {
-				first = false;
-				logMsg.append(Filler + tokenizer.nextToken());
-			} else
-				logMsg.append(fLineSeperator + Filler + tokenizer.nextToken());
-		}
-	}
-	/*
-	 * If Eclipse is started with the -XDebug or -debug turn traces on for this Logger
-	 * Creation date: (8/23/2001 7:37:04 PM)
-	 */
-	private void init() {
-		if (System.getProperty("debug") != null) //$NON-NLS-1$
-			fTraceMode = true;
-		level = defaultLevel = Level.parse(System.getProperty("logLevel", Level.WARNING.getName())); //$NON-NLS-1$
-		
-		try {
-			fLineSeperator = System.getProperty("line.separator"); // Diff on Win/Unix/Mac //$NON-NLS-1$
-		} catch (Exception e) {
-			fLineSeperator = "\n"; //$NON-NLS-1$
-		}
-	}
-	/*
-	 * Generic log.
-	 * Creation date: (8/24/2001 1:55:34 PM)
-	 * @return java.lang.String
-	 * @param msg java.lang.String
-	 * @param type int
-	 */
-	private String logAny(String msg, int type) {
-		StringBuffer logMsg = new StringBuffer();
-		logMsg.append(fLineSeperator);
-		logMsg.append(LogMark[type]);
-		return punchLog(logRest(msg, logMsg), type);
-	}
-	
-	/**
-	 * This is to be used by renderers that want to put a msg out
-	 * in a generic format. This just returns the string that
-	 * should be logged. It puts things like headers on it.
-	 * 
-	 * @param msg
-	 * @param aLevel
-	 * @return The generic message for the string and level.
-	 * 
-	 * @since 1.0.0
-	 */
-	public String getGenericMsg(String msg, Level aLevel) {
-		StringBuffer genMsg = new StringBuffer(msg.length()+16);
-		genMsg.append(fLineSeperator);
-		genMsg.append(getLevelHeader(aLevel));
-		genMsg.append(": "); //$NON-NLS-1$
-		genMsg.append(new Date());
-		indentMsg(msg, genMsg);
-		return genMsg.toString();
-	}
-	
-	private static final Level[] LEVEL_SEARCH = new Level[] {
-		Level.SEVERE,
-		Level.WARNING,
-		Level.INFO,
-		ILogRenderer2.TRACE
-	};
-	
-	private static final String[] LEVEL_MARK = new String[] {
-		"*** ERROR ***", //$NON-NLS-1$
-		"+++ Warning +++", //$NON-NLS-1$
-		"Info", //$NON-NLS-1$
-		"[Trace]" //$NON-NLS-1$
-	};
-	
-	private String getLevelHeader(Level aLevel) {
-		for (int i=0; i<LEVEL_SEARCH.length; i++)
-			if (LEVEL_SEARCH[i] == aLevel)
-				return LEVEL_MARK[i];
-		return aLevel.getName();	// Not found, just use level string.
-	}
-	
-	// The write's are here for history. Will implement using log(obj, Level) for all of the types.
-
-
-	/**
-	 * deprecated use log(Level, Exception)
-	 * @param aLevel
-	 * @param ex
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 * 
-	 */
-	public String write(Level aLevel, Exception ex) {
-		return log(aLevel, ex);
-	}
-	
-	/**
-	 * deprecated use log(Throwable)
-	 * @param ex
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 * 
-	 */
-	public String write(Throwable ex) {
-		return log(ex);
-	}
-	
-	/**
-	 * deprecated use log(Object, Level)
-	 * @param aLevel
-	 * @param logEntry
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public String write(Level aLevel, Object logEntry) {
-		return log(logEntry, aLevel);
-	}
-	
-	/**
-	 * deprecated use log(String, Level)
-	 * @param aLevel
-	 * @param string
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public String write(Level aLevel, String string) {
-		return log(string, aLevel);
-	}
-	/**
-	 * deprecated use log(Throwable, Level)
-	 * @param aLevel
-	 * @param ex
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public String write(Level aLevel, Throwable ex) {
-		return log(ex, aLevel);
-	}
-	/**
-	 * deprecated use log(Throwable, Level)
-	 * @param aLevel
-	 * @param ex
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(Level aLevel, Exception ex) {
-		return log(ex, aLevel);
-	}
-	/**
-	 * deprecated use log(Throwable, Level)
-	 * @param aLevel
-	 * @param ex
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(Level aLevel, Throwable ex) {
-		return log(ex, aLevel);
-	}
-	
-	/**
-	 * Get the logging level
-	 * @return logging level
-	 * 
-	 * @since 1.0.0
-	 */
-	public Level getLevel() {
-		return level;
-	}
-	
-	/**
-	 * Check if the requested level is being logged. (e.g. if current level is SEVERE, then FINE will not be logged).
-	 * @param requestlevel
-	 * @return <code>true</code> if the level will be logged.
-	 * 
-	 * @since 1.0.0
-	 */
-	public boolean isLoggingLevel(Level requestlevel) {
-		if (requestlevel == ILogRenderer2.TRACE && !getTraceMode())
-			return false;	// We aren't tracing but requested trace.
-		
-		return !(requestlevel.intValue() < getLevel().intValue() || getLevel() == Level.OFF);
-	}
-
-	/**
-	 * Log an error string.
-	 * @param msg
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String logError(String msg) {
-		return log(msg, Level.SEVERE);
-	}
-
-	/**
-	 * Log an error throwable
-	 * @param e
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String logError(Throwable e) {
-		return log(e, Level.SEVERE);
-	}
-
-	/**
-	 * Log an info message.
-	 * @param msg
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String logInfo(String msg) {
-		return log(msg, Level.INFO);
-	}
-	
-/**
- * Log a throwable as a warning.
- * @param e
- * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
- * 
- * @since 1.0.0
- */
-	public String logInfo(Throwable e) {
-		return log(e, Level.INFO);
-	}
-
-	/**
-	 * Append the string to logMsg buffer passed in. Append the date and format the
-	 * string with nice indentation.
-	 * 
-	 * @param msg
-	 * @param logMsg
-	 * @return the string from the logMsg after logging the rest.
-	 * 
-	 * @since 1.0.0
-	 */
-	protected String logRest(String msg, StringBuffer logMsg) {
-		logMsg.append(new Date());
-		indentMsg(msg, logMsg);
-		return logMsg.toString();
-	}
-
-	/**
-	 * Log the msg as trace only.
-	 * @param msg
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String logTrace(String msg) {
-		if (fTraceMode)
-			return log(msg, ILogRenderer2.TRACE);
-		else
-			return ILogRenderer.NOLOG_DESCRIPTION;
-	}
-
-	/**
-	 * Log the throwable as trace only.
-	 * @param e
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String logTrace(Throwable e) {
-		return log(e, ILogRenderer2.TRACE);
-	}
-
-	/**
-	 * Log the message as warning.
-	 * @param msg
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String logWarning(String msg) {
-		return log(msg, Level.WARNING);
-	}
-	/**
-	 * Log the throwable as a warning.
-	 * @param e
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String logWarning(Throwable e) {
-		return log(e, Level.WARNING);
-	}
-	
-	/**
-	 * Ask the Renderer to punch the msg. in the log.. one
-	 * caller at the time
-	 * Creation date: (8/24/2001 9:19:17 AM)
-	 * @return java.lang.String
-	 * @param msg java.lang.String
-	 * @param type int
-	 */
-	protected synchronized String punchLog(String msg, int type) {
-		return fRenderer.log(msg, type);
-	}
-	
-	/**
-	 * Set the renderer to use.
-	 * @param renderer
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setRenderer(ILogRenderer renderer) {
-		fRenderer = renderer;
-		renderer2 = (renderer instanceof ILogRenderer2) ? (ILogRenderer2) renderer : null;
-		renderer.setTraceMode(getTraceMode());
-	}
-	
-	/**
-	 * Set the trace mode.
-	 * @param flag <code>true</code> to turn on tracing.
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setTraceMode(boolean flag) {
-		fTraceMode = flag;
-		if (fRenderer != null)
-			fRenderer.setTraceMode(flag);
-	}
-	
-	/**
-	 * Set the level cutoff for logging. Anything below this level will not log.
-	 * Do not set level to <code>ILogRenderer2.TRACE</code>. It doesn't make sense.
-	 * 
-	 * @param level (Use <code>ILogRenderer2.DEFAULT</code> to restore to default for this logger.
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setLevel(Level level) {
-		this.level = level != ILogRenderer2.DEFAULT ? level : defaultLevel;
-	}
-	
-	/**
-	 * Set the default level for this logger. It won't touch the current level.
-	 * 
-	 * @param level
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setDefaultLevel(Level level) {
-		this.defaultLevel = level;
-	}
-	
-	/**
-	 * Get the log file name.
-	 * @return Returns the logFileName.
-	 */
-	public String getLogFileName() {
-		return logFileName;
-	}
-
-	/**
-	 * Set the log file name.
-	 * @param logFileName The logFileName to set.
-	 */
-	public void setLogFileName(String logFileName) {
-		this.logFileName = logFileName;
-	}
-	
-	// Now all of the log() types that use a Level.
-
-	/**
-	 * Log the throwable at the default level for a throwable. 
-	 * @param e
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(Throwable e) {
-		return log(e, ILogRenderer2.DEFAULT);
-	}
-	
-	/**
-	 * Log the throwable at the given level.
-	 * @param e
-	 * @param logLevel
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(Throwable e, Level logLevel) {
-		if (renderer2 != null) {
-			return renderer2.log(e, logLevel);
-		} else {
-			// Do it the old way.
-			String stackTrace = exceptionToString(e);
-			return logAny(stackTrace, getOldType(logLevel != ILogRenderer2.DEFAULT ? level : Level.SEVERE));
-		}
-	}
-	
-	public String log(Object o) {
-		return log(o, ILogRenderer2.DEFAULT);
-	}
-	
-	/**
-	 * Log the object at the given level.
-	 * @param o
-	 * @param logLevel
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(Object o, Level logLevel) {
-		if (renderer2 != null) {
-			return renderer2.log(o, logLevel);
-		} else {
-			// Do it the old way.
-			return logAny(String.valueOf(o), getOldType(logLevel != ILogRenderer2.DEFAULT ? level : Level.FINEST));
-		}
-	}	
-	
-	// The following are added to match up with Hyades so that primitives can be logged too.
-	
-	/**
-	 * Log a boolean at the default level. 
-	 * @param b
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(boolean b) {
-		return log(b, ILogRenderer2.DEFAULT);
-	}
-	
-	/**
-	 * Log a boolean at the given level.
-	 * @param b
-	 * @param logLevel
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(boolean b, Level logLevel) {
-		if (renderer2 != null) {
-			return renderer2.log(b, logLevel);
-		} else {
-			// Do it the old way.
-			return logAny(String.valueOf(b), getOldType(logLevel != ILogRenderer2.DEFAULT ? level : Level.FINEST));
-		}
-	}	
-	
-	/**
-	 * Log the character at the default level.
-	 * @param c
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(char c) {
-		return log(c, ILogRenderer2.DEFAULT);
-	}
-	
-	/**
-	 * Log the character at the given level.
-	 * @param c
-	 * @param logLevel
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(char c, Level logLevel) {
-		if (renderer2 != null) {
-			return renderer2.log(c, logLevel);
-		} else {
-			// Do it the old way.
-			return logAny(String.valueOf(c), getOldType(logLevel != ILogRenderer2.DEFAULT ? level : Level.FINEST));
-		}
-	}
-	
-	/**
-	 * Log the byte at the default level.
-	 * @param b
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(byte b) {
-		return log(b, ILogRenderer2.DEFAULT);
-	}
-	
-	/**
-	 * Log the byte at the given level.
-	 * @param b
-	 * @param logLevel
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(byte b, Level logLevel) {
-		if (renderer2 != null) {
-			return renderer2.log(b, logLevel);
-		} else {
-			// Do it the old way.
-			return logAny(String.valueOf(b), getOldType(logLevel != ILogRenderer2.DEFAULT ? level : Level.FINEST));
-		}
-	}	
-	
-	/**
-	 * Log the short at the default level.
-	 * @param s
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(short s) {
-		return log(s, ILogRenderer2.DEFAULT);
-	}
-	
-	/**
-	 * Log the short at the given level.
-	 * @param s
-	 * @param logLevel
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(short s, Level logLevel) {
-		if (renderer2 != null) {
-			return renderer2.log(s, logLevel);
-		} else {
-			// Do it the old way.
-			return logAny(String.valueOf(s), getOldType(logLevel != ILogRenderer2.DEFAULT ? level : Level.FINEST));
-		}
-	}
-	
-	/**
-	 * Log the int at the default level.
-	 * @param i
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(int i) {
-		return log(i, ILogRenderer2.DEFAULT);
-	}
-	
-	/**
-	 * Log the int at the default level.
-	 * @param i
-	 * @param logLevel
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(int i, Level logLevel) {
-		if (renderer2 != null) {
-			return renderer2.log(i, logLevel);
-		} else {
-			// Do it the old way.
-			return logAny(String.valueOf(i), getOldType(logLevel != ILogRenderer2.DEFAULT ? level : Level.FINEST));
-		}
-	}
-	
-	/**
-	 * Log the long at the default level.
-	 * @param l
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(long l) {
-		return log(l, ILogRenderer2.DEFAULT);
-	}
-	
-	/**
-	 * Log the long at the given level.
-	 * @param l
-	 * @param logLevel
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(long l, Level logLevel) {
-		if (renderer2 != null) {
-			return renderer2.log(l, logLevel);
-		} else {
-			// Do it the old way.
-			return logAny(String.valueOf(l), getOldType(logLevel != ILogRenderer2.DEFAULT ? level : Level.FINEST));
-		}
-	}	
-	
-	/**
-	 * Log the float at the default level.
-	 * @param f
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(float f) {
-		return log(f, ILogRenderer2.DEFAULT);
-	}
-	
-	/**
-	 * Log the float at the given level.
-	 * @param f
-	 * @param logLevel
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(float f, Level logLevel) {
-		if (renderer2 != null) {
-			return renderer2.log(f, logLevel);
-		} else {
-			// Do it the old way.
-			return logAny(String.valueOf(f), getOldType(logLevel != ILogRenderer2.DEFAULT ? level : Level.FINEST));
-		}
-	}
-	
-	/**
-	 * Log the double at the default level
-	 * @param d
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(double d) {
-		return log(d, ILogRenderer2.DEFAULT);
-	}
-	
-	/**
-	 * Log the double at the given level
-	 * 
-	 * @param d
-	 * @param logLevel
-	 * @return how it was logged. See <code>CONSOLE_DESCRIPTION.</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	public String log(double d, Level logLevel) {
-		if (renderer2 != null) {
-			return renderer2.log(d, logLevel);
-		} else {
-			// Do it the old way.
-			return logAny(String.valueOf(d), getOldType(logLevel != ILogRenderer2.DEFAULT ? level : Level.FINEST));
-		}
-	}	
-	
-	/*
-	 * Turn new type into old type. The defaultLevel is the
-	 * level to use if the incoming level is marked as default.
-	 */
-	private int getOldType(Level aLevel) {
-		if (aLevel == Level.SEVERE)
-			return ILogRenderer.LOG_ERROR;
-		else if (aLevel == Level.WARNING)
-			return ILogRenderer.LOG_WARNING;
-		else if (aLevel == Level.INFO)
-			return ILogRenderer.LOG_INFO;
-		else if (aLevel == ILogRenderer2.TRACE)
-			return ILogRenderer.LOG_TRACE;
-		else
-			return ILogRenderer.LOG_INFO;		
-	}
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/EMFWorkbenchContextFactory.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/EMFWorkbenchContextFactory.java
deleted file mode 100644
index 698a435..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/EMFWorkbenchContextFactory.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: EMFWorkbenchContextFactory.java,v $$
- *  $$Revision: 1.4 $$  $$Date: 2005/06/16 20:14:27 $$ 
- */
-package org.eclipse.jem.internal.util.emf.workbench;
-
-import java.util.*;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectNature;
-import org.eclipse.core.runtime.*;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-
-import org.eclipse.jem.internal.util.emf.workbench.nls.EMFWorkbenchResourceHandler;
-import org.eclipse.jem.util.RegistryReader;
-import org.eclipse.jem.util.emf.workbench.*;
-import org.eclipse.jem.util.emf.workbench.nature.EMFNature;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
-
-
-public class EMFWorkbenchContextFactory  {
-	public static final EMFWorkbenchContextFactory INSTANCE;
-	
-	static {
-		INSTANCE = createFactoryInstance();
-	}
-	private final Class CONTRIBUTOR_CLASS = IEMFContextContributor.class;
-	protected Map emfContextCache = new WeakHashMap();
-
-	
-	private static EMFWorkbenchContextFactory createFactoryInstance() {
-		EMFWorkbenchContextFactory factory = createFactoryInstanceFromExtension();
-		if (factory == null)
-			factory = new EMFWorkbenchContextFactory();
-		return factory;
-	}
-	
-	private static EMFWorkbenchContextFactory createFactoryInstanceFromExtension() {
-		final EMFWorkbenchContextFactory[] factoryHolder = new EMFWorkbenchContextFactory[1];
-		RegistryReader reader = new RegistryReader(JEMUtilPlugin.ID, "internalWorkbenchContextFactory") { //$NON-NLS-1$
-			public boolean readElement(IConfigurationElement element) {
-				if (element.getName().equals("factoryClass")) //$NON-NLS-1$
-					try {
-						factoryHolder[0] = (EMFWorkbenchContextFactory)element.createExecutableExtension("name"); //$NON-NLS-1$
-						return true;
-					} catch (CoreException e) {
-						Logger.getLogger().logError(e);
-					}				
-				return false;
-			}
-		};
-		reader.readRegistry();
-		return factoryHolder[0];
-	}
-
-	/**
-	 * Constructor for EMFNatureFactory.
-	 */
-	protected EMFWorkbenchContextFactory() {
-		super();
-
-	}
-
-
-	protected void cacheEMFContext(IProject aProject, EMFWorkbenchContextBase emfContext) {
-		if (aProject != null && emfContext != null)
-			emfContextCache.put(aProject, emfContext);
-	}
-
-	protected EMFWorkbenchContextBase getCachedEMFContext(IProject aProject) {
-		if (aProject != null)
-			return (EMFWorkbenchContextBase) emfContextCache.get(aProject);
-		return null;
-	}
-
-	/**
-	 * <code>aProject</code> is either being closed or deleted so we need to cleanup our cache.
-	 */
-	public void removeCachedProject(IProject aProject) {
-		if (aProject != null) 
-			emfContextCache.remove(aProject); 
-		
-	}
-	/**
-	 * Return a new or existing EMFNature on <code>aProject</code>. Allow the <code>contributor</code>
-	 * to contribute to the new or existing nature prior to returning.
-	 */
-	public EMFWorkbenchContextBase createEMFContext(IProject aProject, IEMFContextContributor contributor) {
-		if (aProject == null)
-			throw new IllegalStateException("[EMFWorkbenchContextBase]" + EMFWorkbenchResourceHandler.getString("EMFWorkbenchContextFactory_UI_0")); //$NON-NLS-1$ //$NON-NLS-2$
-		if (!aProject.isAccessible())
-			throw new IllegalStateException("[EMFWorkbenchContextBase]" + EMFWorkbenchResourceHandler.getString("EMFWorkbenchContextFactory_UI_1", new Object[]{aProject.getName()})); //$NON-NLS-1$ //$NON-NLS-2$
-		EMFWorkbenchContextBase context = getCachedEMFContext(aProject);
-		boolean contributorFound = false;
-		if (context == null) {
-			context = primCreateEMFContext(aProject);
-			cacheEMFContext(aProject, context);
-			contributorFound = initializeEMFContextFromContributors(aProject, context, contributor);
-		}
-		if (contributor != null && context != null && !contributorFound)
-			contributor.primaryContributeToContext(context);
-		return context;
-	}
-	
-	protected boolean initializeEMFContextFromContributors(IProject aProject, EMFWorkbenchContextBase emfContext, IEMFContextContributor contributor) {
-		boolean contributorFound = false;
-		if (aProject == null || emfContext == null)
-			return contributorFound;
-		List runtimes = EMFNature.getRegisteredRuntimes(aProject);
-		for (int i = 0; i < runtimes.size(); i++) {
-			IProjectNature nature = (IProjectNature) runtimes.get(i);
-			if (nature != null && CONTRIBUTOR_CLASS.isInstance(nature)) {
-				if (nature == contributor)
-					contributorFound = true;
-				((IEMFContextContributor) nature).primaryContributeToContext(emfContext);
-			}
-		}
-		return contributorFound;
-	}
-
-	protected boolean isNatureEnabled(IProject aProject, String natureId) {
-		try {
-			return aProject.isNatureEnabled(natureId);
-		} catch (CoreException e) {
-			return false;
-		}
-	}
-
-	protected String[] getNatureIds(IProject aProject) {
-		try {
-			if (aProject.isAccessible())
-				return aProject.getDescription().getNatureIds();
-		} catch (CoreException e) {
-		}
-		return null;
-	}
-
-	protected IProjectNature getNature(IProject aProject, String natureId) {
-		try {
-			return aProject.getNature(natureId);
-		} catch (CoreException e) {
-			return null;
-		}
-	}
-
-	protected EMFWorkbenchContextBase primCreateEMFContext(IProject aProject) {
-		return new EMFWorkbenchContextBase(aProject);
-	}
-	/**
-	 * Return an existing EMFNature on <code>aProject</code>.
-	 */
-	public EMFWorkbenchContextBase getEMFContext(IProject aProject) {
-		return getCachedEMFContext(aProject);
-	}
-
-	public ResourceSetWorkbenchSynchronizer createSynchronizer(ResourceSet aResourceSet, IProject aProject) {
-		return new ResourceSetWorkbenchSynchronizer(aResourceSet, aProject);
-	}
-
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/ProjectResourceSetImpl.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/ProjectResourceSetImpl.java
deleted file mode 100644
index d6473fc..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/ProjectResourceSetImpl.java
+++ /dev/null
@@ -1,784 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: ProjectResourceSetImpl.java,v $$
- *  $$Revision: 1.21.2.1 $$  $$Date: 2009/05/14 00:17:56 $$ 
- */
-package org.eclipse.jem.internal.util.emf.workbench;
-
-import java.io.IOException;
-import java.util.*;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.NotificationImpl;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.*;
-import org.eclipse.emf.ecore.resource.Resource.Factory;
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
-import org.eclipse.emf.ecore.resource.impl.URIConverterImpl;
-import org.eclipse.emf.ecore.xmi.XMLResource;
-
-import org.eclipse.jem.util.emf.workbench.*;
-import org.eclipse.jem.util.emf.workbench.nature.EMFNature;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
-public class ProjectResourceSetImpl extends ResourceSetImpl implements FlexibleProjectResourceSet {
-	public static interface ModuleURI {
-		public static final int SUB_PROTOCOL_INDX = 0;
-		public static final int PROJECT_NAME_INDX = 1;
-		public static final int MODULE_NAME_INDX = 2;
-		public static final int CONTENT_TYPE_INDX = 3;
-	}
-	
-	public class SynchronizedResourcesEList<E extends Object & Resource> extends ResourcesEList<E> implements EList<E> {
-
-		/**
-		 * 
-		 */
-		private static final long serialVersionUID = 1L;
-		private final Object lock = new Object();
-
-		public void move(int newPosition, E object) {
-			
-			synchronized(lock) {
-				super.move(newPosition, object);
-			}
-
-		}
-
-		public E move(int newPosition, int oldPosition) {
-
-			synchronized(lock) {
-				return super.move(newPosition, oldPosition);
-			}
-		}
-
-		public boolean add(E o) {
-			
-			synchronized(lock) {
-				return super.add(o);
-			}
-		}
-
-		public void add(int index, E element) {
-			
-			synchronized(lock) {
-				super.add(index, element);
-			}
-
-		}
-
-		public boolean addAll(Collection<? extends E> c) {
-			
-			synchronized(lock) {
-				return super.addAll(c);
-			}
-		}
-
-		public boolean addAll(int index, Collection<? extends E> c) {
-			
-			synchronized(lock) {
-				return super.addAll(index, c);
-			}
-		}
-
-		public void clear() {
-			
-			synchronized(lock) {
-				super.clear();
-			}
-
-		}
-
-		public boolean contains(Object o) {
-			
-			synchronized(lock) {
-				return super.contains(o);
-			}
-		}
-
-		public boolean containsAll(Collection<?> c) {
-			
-			synchronized(lock) {
-				return super.containsAll(c);
-			}
-		}
-
-		public boolean equals(Object o) {
-			
-			synchronized(lock) {
-				return super.equals(o);
-			}
-		}
-
-		public E get(int index) {
-			
-			synchronized(lock) {
-				return super.get(index);
-			}
-		}
-
-		public int hashCode() {
-			
-			synchronized(lock) {
-				return super.hashCode();
-			}
-		}
-
-		public int indexOf(Object o) {
-			
-			synchronized(lock) {
-				return super.indexOf(o);
-			}
-		}
-
-		public boolean isEmpty() {
-			
-			synchronized(lock) {
-				return super.isEmpty();
-			}
-		}
-
-		public Iterator<E> iterator() {
-			
-			synchronized(lock) {
-				return super.iterator();
-			}
-		}
-
-		public int lastIndexOf(Object o) {
-			
-			synchronized(lock) {
-				return super.lastIndexOf(o);
-			}
-		}
-
-		public ListIterator<E> listIterator() {
-			
-			synchronized(lock) {
-				return super.listIterator();
-			}
-		}
-
-		public ListIterator<E> listIterator(int index) {
-			
-			synchronized(lock) {
-				return super.listIterator(index);
-			}
-		}
-
-		public boolean remove(Object o) {
-			
-			synchronized(lock) {
-				return super.remove(o);
-			}
-		}
-
-		public E remove(int index) {
-			
-			synchronized(lock) {
-				return super.remove(index);
-			}
-		}
-
-		public boolean removeAll(Collection<?> c) {
-			
-			synchronized(lock) {
-				return super.removeAll(c);
-			}
-		}
-
-		public boolean retainAll(Collection<?> c) {
-			
-			synchronized(lock) {
-				return super.retainAll(c);
-			}
-		}
-
-		public E set(int index, E element) {
-			
-			synchronized(lock) {
-				return super.set(index, element);
-			}
-		}
-
-		public int size() {
-			
-			synchronized(lock) {
-				return super.size();
-			}
-		}
-
-		public List<E> subList(int fromIndex, int toIndex) {
-			
-			synchronized(lock) {
-				return super.subList(fromIndex, toIndex);
-			}
-		}
-
-		public Object[] toArray() {
-			
-			synchronized(lock) {
-				return super.toArray();
-			}
-		}
-
-		public <T> T[] toArray(T[] a) {
-			
-			synchronized(lock) {
-				return super.toArray(a);
-			}
-		}
-
-	}
-
-	private boolean isReleasing = false;
-	private IProject project;
-	protected List resourceHandlers = new ArrayList();
-	protected ResourceSetWorkbenchSynchronizer synchronizer;
-	protected ProjectResourceSetImpl() {
-		setURIResourceMap(new HashMap(10));	// Tell it to cache uri->resource access.
-		getLoadOptions().put(XMLResource.OPTION_USE_PARSER_POOL, EMFNature.SHARED_PARSER_POOL);
-	}
-	public ProjectResourceSetImpl(IProject aProject) {
-		this();
-		setProject(aProject);
-		initializeSharedCacheListener();
-	}
-	protected void initializeSharedCacheListener() {
-		JEMUtilPlugin.getSharedCache().beginListening(this);
-	}
-	protected boolean isReleasing() {
-		return isReleasing;
-	}
-	/**
-	 * @see org.eclipse.emf.ecore.resource.impl.ResourceSetImpl#delegatedGetResource(URI, boolean)
-	 */
-	protected Resource delegatedGetResource(URI uri, boolean loadOnDemand) {
-		Resource res = super.delegatedGetResource(uri, loadOnDemand);
-		if (res == null)
-			res = getResourceFromHandlers(uri);
-		return res;
-	}
-
-	public Resource createResource(URI uri, String contentType) {
-		if (isReleasing) return null;
-		//Check the map first when creating the resource and do not
-		//normalize if a value is found.
-		boolean isMapped = detectURIMapping(uri);
-		boolean hasContentType = (getContentTypeName(uri) != null);
-		URI converted = uri;
-		if (!isMapped)
-			converted = getURIConverter().normalize(uri);
-		else if (hasContentType)
-			converted = getURIConverter().normalize(uri);
-		
-		Resource result = createResourceFromHandlers(converted);
-		if (result == null) {
-		    Resource.Factory resourceFactory = getResourceFactoryRegistry().getFactory(uri);
-		    if (resourceFactory != null)
-		    {//We got the right factory, now use the right URI
-		      result = resourceFactory.createResource(converted);
-		      getResources().add(result);
-		    }
-		}
-			
-		
-		return result;
-	}
-
-	public Resource createResource(URI uri) {
-		return createResource(uri, ContentHandler.UNSPECIFIED_CONTENT_TYPE);
-	}
-
-	private boolean detectURIMapping(URI uri) {
-		if (uri == null) return false;
-		return !(((URIConverterImpl.URIMap)getURIConverter().getURIMap()).getURI(uri).equals(uri));
-	}
-	/**
-	 * Return the IFile for the <code>uri</code> within the Workspace. This URI is assumed to be
-	 * absolute in the following format: platform:/resource/....
-	 */
-	private IFile getPlatformFile(URI uri) {
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(uri)) {
-			String fileString = URI.decode(uri.path());
-			fileString = fileString.substring(JEMUtilPlugin.PLATFORM_RESOURCE.length() + 1);
-			return ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(fileString));
-		}
-		return null;
-	}
-	public Resource createResource(URI uri, Resource.Factory resourceFactory) {
-		if (isReleasing) return null;
-		//Check the map first when creating the resource and do not
-		//normalize if a value is found.
-		boolean isMapped = detectURIMapping(uri);
-		boolean hasContentType = (getContentTypeName(uri) != null);
-		URI converted = uri;
-		if (!isMapped)
-			converted = getURIConverter().normalize(uri);
-		else if (hasContentType)
-			converted = getURIConverter().normalize(uri);
-		Resource result = createResourceFromHandlers(converted);
-		if (result == null) {
-
-		    if (resourceFactory != null)
-		    {
-		      result = resourceFactory.createResource(converted);
-		      getResources().add(result);
-		      getURIResourceMap().put(uri, result);
-		      return result;
-		    }
-		    else
-		    {
-		      return null;
-		    }
-		  
-		}
-		return result;
-	}
-	/**
-	 * @see org.eclipse.emf.ecore.resource.impl.ResourceSetImpl#demandLoad(Resource)
-	 */
-	protected void demandLoad(Resource resource) throws IOException {
-		if (!isReleasing)
-			super.demandLoad(resource);
-	}
-	
-	/**
-	 * See if any resource handlers from the WorkbenchContext
-	 * decide to create the Resource in another manner.
-	 */
-	protected Resource createResourceFromHandlers(URI uri) {
-		Resource resource = null;
-		ResourceHandler handler = null;
-		for (int i = 0; i < resourceHandlers.size(); i++) {
-			handler = (ResourceHandler) resourceHandlers.get(i);
-			resource = handler.createResource(this, uri);
-			if (resource != null)
-				return resource;
-		}
-		return null;
-	}
-	/**
-	 * See if any resource handlers from the WorkbenchContext
-	 * can return a Resource from a <code>uri</code>.
-	 */
-	protected Resource getResourceFromHandlers(URI uri) {
-		if (isReleasing) return null;
-		for (int i = 0; i < resourceHandlers.size(); i++) {
-			Resource resource = ((ResourceHandler) resourceHandlers.get(i)).getResource(this, uri);
-			if (resource != null)
-				return resource;
-		}
-		return null;
-	}
-	
-	public void release() {
-		// Send out notification of release.
-		if (eNotificationRequired()) {
-			eNotify(new NotificationImpl(SPECIAL_NOTIFICATION_TYPE, null, null, Notification.NO_INDEX, false) {
-				/* (non-Javadoc)
-				 * @see org.eclipse.emf.common.notify.impl.NotificationImpl#getFeatureID(java.lang.Class)
-				 */
-				public int getFeatureID(Class expectedClass) {
-					return PROJECTRESOURCESET_ABOUT_TO_RELEASE_ID;
-				}
-				
-				/* (non-Javadoc)
-				 * @see org.eclipse.emf.common.notify.impl.NotificationImpl#getNotifier()
-				 */
-				public Object getNotifier() {
-					return ProjectResourceSetImpl.this;
-				}
-			});
-		}
-		setIsReleasing(true);
-		if (synchronizer != null)
-			synchronizer.dispose();
-		synchronizer = null;
-		removeAndUnloadAllResources();
-		resourceHandlers = null;
-		eAdapters().clear();
-		setProject(null);
-		JEMUtilPlugin.getSharedCache().stopListening(this);
-	}
-	protected void removeAndUnloadAllResources() {
-		boolean caughtException = false;
-		if (getResources().isEmpty()) return;
-		List list = new ArrayList(getResources());
-		getResources().clear();
-		Resource res;
-		int size = list.size();
-		for (int i = 0; i < size; i++) {
-			res = (Resource) list.get(i);
-			try {
-				res.unload();
-			} catch (RuntimeException ex) {
-				Logger.getLogger().logError(ex);
-				caughtException = true;
-			}
-		}
-		if (caughtException)
-			throw new RuntimeException("Exception(s) unloading resources - check log files"); //$NON-NLS-1$
-	}
-	protected void setIsReleasing(boolean aBoolean) {
-		isReleasing = aBoolean;
-	}
-	/**
-	 * Gets the project.
-	 * @return Returns a IProject
-	 */
-	public IProject getProject() {
-		return project;
-	}
-	/**
-	 * Sets the project.
-	 * @param project The project to set
-	 */
-	protected void setProject(IProject project) {
-		this.project = project;
-	}
-	/*
-	 * Javadoc copied from interface.
-	 */
-	public EObject getEObject(URI uri, boolean loadOnDemand) {
-		if (isReleasing) return null;
-		Resource resource = getResource(uri.trimFragment(), loadOnDemand);
-		EObject result = null;
-		if (resource != null && resource.isLoaded())
-			result = resource.getEObject(uri.fragment());
-		if (result == null)
-			result = getEObjectFromHandlers(uri, loadOnDemand);
-		return result;
-	}
-	/**
-	 * See if any resource handlers from the WorkbenchContext
-	 * can return a EObject from a <code>uri</code> after
-	 * failing to find it using the normal mechanisms.
-	 */
-	protected EObject getEObjectFromHandlers(URI uri, boolean loadOnDemand) {
-		EObject obj = null;
-		ResourceHandler handler = null;
-		for (int i = 0; i < resourceHandlers.size(); i++) {
-			handler = (ResourceHandler) resourceHandlers.get(i);
-			obj = handler.getEObjectFailed(this, uri, loadOnDemand);
-			if (obj != null)
-				return obj;
-		}
-		return null;
-	}
-	
-	public boolean add(ResourceHandler resourceHandler) {
-		return resourceHandlers.add(resourceHandler);
-	}
-	public void addFirst(ResourceHandler resourceHandler) {
-		resourceHandlers.add(0, resourceHandler);
-	}
-	public boolean remove(ResourceHandler resourceHandler) {
-		return resourceHandlers.remove(resourceHandler);
-	}
-	/**
-	 * Returns the synchronizer.
-	 * @return ResourceSetWorkbenchSynchronizer
-	 */
-	public ResourceSetWorkbenchSynchronizer getSynchronizer() {
-		return synchronizer;
-	}
-	/**
-	 * Sets the synchronizer.
-	 * @param synchronizer The synchronizer to set
-	 */
-	public void setSynchronizer(ResourceSetWorkbenchSynchronizer synchronizer) {
-		this.synchronizer = synchronizer;
-	}
-	/**
-	 * @see org.eclipse.emf.ecore.resource.ResourceSet#setResourceFactoryRegistry(Resource.Factory.Registry)
-	 */
-	public void setResourceFactoryRegistry(Resource.Factory.Registry factoryReg) {
-		if (resourceFactoryRegistry != null && factoryReg != null) {
-			preserveEntries(factoryReg.getExtensionToFactoryMap(), resourceFactoryRegistry.getExtensionToFactoryMap());
-			preserveEntries(factoryReg.getProtocolToFactoryMap(), resourceFactoryRegistry.getProtocolToFactoryMap());
-		}
-		super.setResourceFactoryRegistry(factoryReg);
-	}
-	/*
-	 * Preserve the entries from map2 in map1 if no collision.
-	 */
-	protected void preserveEntries(Map map1, Map map2) {
-		if (map2.isEmpty())
-			return;
-		Iterator it = map2.entrySet().iterator();
-		Map.Entry entry;
-		while (it.hasNext()) {
-			entry = (Map.Entry) it.next();
-			if (!map1.containsKey(entry.getKey()))
-				map1.put(entry.getKey(), entry.getValue());
-		}
-	}
-	/*
-	 * Javadoc copied from interface.
-	 */
-	public Resource getResource(URI uri, boolean loadOnDemand) {
-		if (isReleasing) return null;
-
-	    Map<URI, Resource> map = getURIResourceMap();
-	    if (map != null)
-	    {
-	      Resource resource = map.get(uri);
-	      if (resource != null)
-	      {
-	        if (loadOnDemand && !resource.isLoaded())
-	        {
-	          demandLoadHelper(resource);
-	        }        
-	        return resource;
-	      }
-	    }
-	    
-	    URIConverter theURIConverter = getURIConverter();
-	    URI normalizedURI = theURIConverter.normalize(uri);
-	    List resourcesToRemove = new ArrayList();
-	    for (Resource resource : getResources())
-	    {
-	      if (theURIConverter.normalize(resource.getURI()).equals(normalizedURI)) {
-	    		  
-	    	if (getContentTypeName(uri) == null) { // loading from legacy archive api or non-typed resource
-		        if (loadOnDemand && !resource.isLoaded())
-		        {
-		          demandLoadHelper(resource);
-		        }
-		        
-		        if (map != null)
-		        {
-		          map.put(uri, resource);
-		        } 
-		        return resource;
-	    	} else  {// content type is known
-	    		boolean resourceExists = false;
-	    		IFile file = getPlatformFile(resource);
-	    		if (file != null)
-	    			resourceExists = file.exists();
-	    		String resourceContentTypeID = getContentTypeID(resource);
-	    		String uriContentTypeID = getContentTypeName(uri);
-	    		String existingMapKeyType = (findKey(resource) != null) ? getContentTypeName(findKey(resource)) : null;
-	    		if((!map.containsValue(resource) || ((map.get(uri) != null) && map.get(uri).equals(resource))) // existing resource  with alternate mapping doesn't exist in map
-	    			||  ((resourceContentTypeID != null && resourceContentTypeID.equals(uriContentTypeID)))) {
-						if (loadOnDemand && !resource.isLoaded()) {
-							demandLoadHelper(resource);
-						} // if embedded uri content type is different than resource content type, continue searching
-						if (resourceContentTypeID != null
-								&& uriContentTypeID != null) {
-							if ((resourceContentTypeID.equals(uriContentTypeID)) && existingMapKeyType == null) continue;
-							if ((!resourceContentTypeID.equals(uriContentTypeID)) || (existingMapKeyType != null && !existingMapKeyType
-									.equals(uriContentTypeID)))
-								continue;
-							else if (existingMapKeyType == null && !resourceExists) {
-								resourcesToRemove.add(resource);
-								continue;
-							}
-						} else if (uriContentTypeID != null && resourceContentTypeID == null && !resourceExists) {
-							resourcesToRemove.add(resource);
-							continue;
-						}
-								
-						if (map != null && (map.get(uri) == null)) {
-							map.put(uri, resource);
-						}
-						return resource;
-					}
-	    	}
-	      }
-	    }
-	    // Cleanup invalid resources
-	    getResources().removeAll(resourcesToRemove);
-	    Resource delegatedResource = delegatedGetResource(uri, loadOnDemand);
-	    if (delegatedResource != null)
-	    {
-	      if (map != null)
-	      {
-	        map.put(uri, delegatedResource);
-	      }
-	      return delegatedResource;
-	    }
-
-	    if (loadOnDemand)
-	    {
-	      Resource resource = demandCreateResource(uri);
-	      if (resource == null)
-	      {
-	        throw new RuntimeException("Cannot create a resource for '" + uri + "'; a registered resource factory is needed");
-	      }
-	      
-	      if (map != null)
-	      {
-	        map.put(uri, resource);
-	      }  
-
-	      demandLoadHelper(resource);
-
-	          
-	      return resource;
-	    }
-
-	    return null;
-	  
-	}
-	private IFile getPlatformFile(Resource res) {
-		IFile file = null;
-		file = getPlatformFile(res.getURI());
-		if (file == null) {
-			if (res.getResourceSet() != null) {
-				URIConverter converter = res.getResourceSet().getURIConverter();
-				URI convertedUri = converter.normalize(res.getURI());
-				if (!res.getURI().equals(convertedUri))
-					file = getPlatformFile(convertedUri);
-			}
-		}
-		return file;
-	}
-	
-	private String getContentTypeID(Resource resource) {
-		IFile file = getPlatformFile(resource);
-		IContentDescription desc = null;
-		try {
-			desc = file.getContentDescription();
-		} catch (CoreException e) {
-		}
-		if (desc != null && desc.getContentType() != null)
-			return desc.getContentType().getId();
-		return null;
-	}
-	private URI findKey(Resource resource) {
-		Map aMap = getURIResourceMap();
-		Set keys = aMap.keySet();
-		for (Iterator iterator = keys.iterator(); iterator.hasNext();) {
-			URI name = (URI) iterator.next();
-			if (aMap.get(name).equals(resource))
-				return name;
-		}
-		return null;
-	}
-	protected static String getContentTypeName(URI uri) {
-		
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(uri) || !isValidFullyQualifiedModuleURI(uri))
-			return null;
-		String contentTypeIdentifier = (uri.segmentCount() > 3 ? uri.segment(ModuleURI.CONTENT_TYPE_INDX) : null);
-		if (contentTypeIdentifier != null && Platform.getContentTypeManager().getContentType(uri.segment(ModuleURI.CONTENT_TYPE_INDX)) != null)
-			return contentTypeIdentifier;
-		else
-			return null;
-	}
-	public static boolean isValidFullyQualifiedModuleURI(URI aModuleURI) {
-		if (aModuleURI.segmentCount() < 3) {
-			return false;
-		}
-		return true;
-	}
-	/*
-	 * Javadoc copied from interface.
-	 */
-	public Resource getResource(URI uri, boolean loadOnDemand, Resource.Factory resourceFactory) {
-		if (isReleasing) return null;
-		
-
-	    Map<URI, Resource> map = getURIResourceMap();
-	    if (map != null)
-	    {
-	      Resource resource = map.get(uri);
-	      if (resource != null)
-	      {
-	        if (loadOnDemand && !resource.isLoaded())
-	        {
-	          demandLoadHelper(resource);
-	        }        
-	        return resource;
-	      }
-	    }
-	    
-	    URIConverter theURIConverter = getURIConverter();
-	    URI normalizedURI = theURIConverter.normalize(uri);
-	    for (Resource resource : getResources())
-	    {
-	      if (theURIConverter.normalize(resource.getURI()).equals(normalizedURI))
-	      {
-	        if (loadOnDemand && !resource.isLoaded())
-	        {
-	          demandLoadHelper(resource);
-	        }
-	        
-	        if (map != null)
-	        {
-	          map.put(uri, resource);
-	        } 
-	        return resource;
-	      }
-	    }
-	    
-	    Resource delegatedResource = delegatedGetResource(uri, loadOnDemand);
-	    if (delegatedResource != null)
-	    {
-	      if (map != null)
-	      {
-	        map.put(uri, delegatedResource);
-	      }
-	      return delegatedResource;
-	    }
-
-	    if (loadOnDemand)
-	    {
-	      Resource resource = demandCreateResource(uri,resourceFactory);
-	      if (resource == null)
-	      {
-	        throw new RuntimeException("Cannot create a resource for '" + uri + "'; a registered resource factory is needed");
-	      }
-
-	      demandLoadHelper(resource);
-
-	      if (map != null)
-	      {
-	        map.put(uri, resource);
-	      }      
-	      return resource;
-	    }
-
-	    return null;
-	  
-	}
-
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jem.util.emf.workbench.ProjectResourceSet#resetNormalizedURICache()
-	 */
-	public void resetNormalizedURICache() {
-		if (getURIResourceMap() != null)
-			getURIResourceMap().clear();
-	}
-	
-	protected Resource demandCreateResource(URI uri, Factory resourceFactory) {
-		// TODO Auto-generated method stub
-		return createResource(uri,resourceFactory);
-	}
-	
-	public EList<Resource> getResources() {
-		 if (resources == null)
-		    {
-		      resources = new SynchronizedResourcesEList<Resource>();
-		    }
-		    return resources;
-	}
-
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/WorkspaceResourceHandler.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/WorkspaceResourceHandler.java
deleted file mode 100644
index 9234123..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/WorkspaceResourceHandler.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: WorkspaceResourceHandler.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-package org.eclipse.jem.internal.util.emf.workbench;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.impl.URIConverterImpl;
-
-import org.eclipse.jem.util.emf.workbench.ResourceHandler;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
-/**
- * The main purpose of this class is to redirect, if necessary, to another 
- * ResourceSet.  This class should be used in conjunction with the WorkbenchURIConverter
- * so that the URIs passed will use the platform protocol.  Anything else will be considered
- * to be ambiguous and we will not be able to redirect.
- */
-public class WorkspaceResourceHandler implements ResourceHandler {
-	/**
-	 * Constructor for WorkspaceResourceHandler.
-	 */
-	public WorkspaceResourceHandler() {
-		super();
-	}
-	/*
-	* @see IResourceHandler#getResource(ResourceSet, URI)
-	*/
-	public Resource getResource(ResourceSet originatingResourceSet, URI uri) {
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(uri))
-			return getResourceForPlatformProtocol(originatingResourceSet, uri);
-		URI mappedURI = ((URIConverterImpl.URIMap)originatingResourceSet.getURIConverter().getURIMap()).getURI(uri);
-		if (isGlobalPluginLoad(mappedURI))
-			return getResourceForPlatformPluginProtocol(originatingResourceSet, uri);
-		return null;
-	}
-	/**
-	 * Redirect to the correct project based on the project name in the <code>uri</code>.
-	 * The <code>uri</code> will be in the following format:   platform:/resource/[project name].
-	 */
-	protected Resource createResourceForPlatformProtocol(ResourceSet originatingResourceSet, URI uri) {
-		String projectName = uri.segment(1);
-		IProject project = getProject(projectName);
-		if (project != null && project.isAccessible()) {
-			ResourceSet set = WorkbenchResourceHelperBase.getResourceSet(project);
-			if (originatingResourceSet != set)
-				return createResource(uri, set);
-		}
-		return null;
-	}
-	/**
-		 * Redirect to the correct project based on the project name in the <code>uri</code>.
-		 * The <code>uri</code> will be in the following format:   platform:/resource/[project name].
-		 */
-	protected Resource createResourceForPlatformPluginProtocol(ResourceSet originatingResourceSet, URI uri) {
-			
-		ResourceSet set = JEMUtilPlugin.getPluginResourceSet();
-		return createResource(uri, set);
-		}
-	protected Resource createResource(URI uri, ResourceSet redirectedResourceSet) {
-		return redirectedResourceSet.createResource(uri);
-	}
-	/**
-	 * Redirect to the correct project based on the first segment in the file name.
-	 * This is for compatability purposes for people using the platform:/resource protocol.
-	 */
-	protected Resource getResourceForPlatformProtocol(ResourceSet originatingResourceSet, URI uri) {
-		String projectName = uri.segment(1);
-		IProject project = getProject(projectName);
-		if (project != null && project.isAccessible()) {
-			ResourceSet set = WorkbenchResourceHelperBase.getResourceSet(project);
-			if (originatingResourceSet != set)
-				return getResource(uri, set);
-		}
-		return null;
-	}
-	/**
-		 * Redirect to the correct project based on the first segment in the file name.
-		 * This is for compatability purposes for people using the platform:/resource protocol.
-		 */
-	protected Resource getResourceForPlatformPluginProtocol(ResourceSet originatingResourceSet, URI uri) {
-			
-		ResourceSet set = JEMUtilPlugin.getPluginResourceSet();
-		return getResource(uri, set);
-			
-	}
-	protected Resource getResource(URI uri, ResourceSet redirectedResourceSet) {
-		return redirectedResourceSet.getResource(uri, false);
-	}
-	
-	protected IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-	protected IProject getProject(String projectName) {
-		IWorkspace ws = getWorkspace();
-		if (ws == null)
-			return null;
-		return ws.getRoot().getProject(projectName);
-	}
-	protected IProject getProject(ResourceSet resourceSet) {
-		return WorkbenchResourceHelperBase.getProject(resourceSet);
-	}
-	/**
-	 * @see org.eclipse.jem.util.ResourceHandler#createResource(ResourceSet, URI)
-	 */
-	public Resource createResource(ResourceSet originatingResourceSet, URI uri) {
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(uri))
-			return createResourceForPlatformProtocol(originatingResourceSet, uri);
-		URI mappedURI = ((URIConverterImpl.URIMap)originatingResourceSet.getURIConverter().getURIMap()).getURI(uri);
-		if (isGlobalPluginLoad(mappedURI))
-			return createResourceForPlatformPluginProtocol(originatingResourceSet, uri);
-		return null;
-	}
-	/**
-	 * @see org.eclipse.jem.util.ResourceHandler#getEObjectFailed(ResourceSet, URI, boolean)
-	 * Subclasses may override.
-	 */
-	public EObject getEObjectFailed(ResourceSet originatingResourceSet, URI uri, boolean loadOnDemand) {
-		return null;
-	}
-	
-	protected boolean isGlobalPluginLoad(URI aURI) {
-		if (WorkbenchResourceHelperBase.isPlatformPluginResourceURI(aURI)) {
-			String[] globalPlugins = JEMUtilPlugin.getGlobalLoadingPluginNames();
-			for (int i=0;i<globalPlugins.length;i++) {
-				if (aURI.segment(1).startsWith(globalPlugins[i]))
-					return true;
-			}
-		}
-		return false;
-	}
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/WorkspaceResourceNotifier.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/WorkspaceResourceNotifier.java
deleted file mode 100644
index 6c10afe..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/WorkspaceResourceNotifier.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: WorkspaceResourceNotifier.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-package org.eclipse.jem.internal.util.emf.workbench;
-
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.common.notify.impl.NotifierImpl;
-
-import org.eclipse.jem.util.emf.workbench.ProjectResourceSet;
-
-/**
- * This class is used to capture all ADD and REMOVE notifications from each ProjectResourceSet
- * and forward it on to any interrested listeners.  This is to allow you to listen to one object
- * to gain all ADD and REMOVE notifications for each ResourceSet within the system.
- */
-public class WorkspaceResourceNotifier extends NotifierImpl {
-	protected Adapter projectAdapter = new WorkspaceResourceCacheAdapter();
-
-	class WorkspaceResourceCacheAdapter extends AdapterImpl {
-		/**
-		 * Forward ADD and REMOVE notification.
-		 */
-		public void notifyChanged(Notification msg) {
-			switch (msg.getEventType()) {
-				case Notification.ADD :
-				case Notification.ADD_MANY :
-				case Notification.REMOVE :
-				case Notification.REMOVE_MANY :
-					eNotify(msg);
-					break;
-			}
-		}
-	}
-
-	/**
-	 * Constructor for WorkspaceResourceCache.
-	 */
-	public WorkspaceResourceNotifier() {
-		super();
-	}
-
-	/**
-	 * Begin listening to a ProjectResourceSet.
-	 */
-	public void beginListening(ProjectResourceSet aResourceSet) {
-		if (aResourceSet != null) { 
-			if (aResourceSet.eAdapters() == null ||  
-			!aResourceSet.eAdapters().contains(projectAdapter))
-			aResourceSet.eAdapters().add(projectAdapter);
-		}
-	}
-	/**
-	 * Stop listening to a ProjectResourceSet.
-	 */
-	public void stopListening(ProjectResourceSet aResourceSet) {
-		if (aResourceSet != null)
-			aResourceSet.eAdapters().remove(projectAdapter);
-	}
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/nature/EMFNatureRegistry.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/nature/EMFNatureRegistry.java
deleted file mode 100644
index f85f7b0..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/nature/EMFNatureRegistry.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: EMFNatureRegistry.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-package org.eclipse.jem.internal.util.emf.workbench.nature;
-
-import java.util.HashSet;
-import java.util.Set;
-
-
-import org.eclipse.core.runtime.*;
-
-import org.eclipse.jem.internal.util.emf.workbench.nls.EMFWorkbenchResourceHandler;
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-public class EMFNatureRegistry {
-
-	private static final String NATURE_REGISTRATION_POINT = "org.eclipse.jem.util.nature_registration"; //$NON-NLS-1$
-	private static final String NATURE  = "nature"; //$NON-NLS-1$
-	private static final String STATIC_ID = "id"; //$NON-NLS-1$
-
-	/**
-	 * Constructor
-	 */
-	private EMFNatureRegistry() {
-		super();
-		readRegistry();
-	}
-	
-	private static EMFNatureRegistry singleton;
-	
-	public final Set REGISTERED_NATURE_IDS = new HashSet();
-	
-	public static EMFNatureRegistry singleton() {
-		if (singleton == null)
-			singleton = new EMFNatureRegistry();
-		return singleton;
-	}
-	
-	protected void readRegistry() {
-	// register Nature IDs for the J2EENatures
-		IExtensionRegistry r = Platform.getExtensionRegistry();
-		IConfigurationElement[] ce = r.getConfigurationElementsFor(NATURE_REGISTRATION_POINT);
-		String natureId;
-		for (int i=0; i<ce.length; i++) {
-			if (ce[i].getName().equals(NATURE)) {
-				natureId = ce[i].getAttribute(STATIC_ID);
-				if (natureId != null)
-					registerNatureID(natureId);
-			}
-		}
-	}
-
-	/**
-	 * @param natureId
-	 */
-	private void registerNatureID(String natureId) {
-		if (!REGISTERED_NATURE_IDS.contains(natureId))
-			REGISTERED_NATURE_IDS.add(natureId);
-		else
-			Logger.getLogger().logError(EMFWorkbenchResourceHandler.getString("EMFNatureRegistry_ERROR_0", new Object[] {natureId})); //$NON-NLS-1$
-	}
-
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/nls/EMFWorkbenchResourceHandler.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/nls/EMFWorkbenchResourceHandler.java
deleted file mode 100644
index 31a8e45..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/internal/util/emf/workbench/nls/EMFWorkbenchResourceHandler.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: EMFWorkbenchResourceHandler.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-package org.eclipse.jem.internal.util.emf.workbench.nls;
-
-import java.text.MessageFormat;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class EMFWorkbenchResourceHandler {
-
-	private static ResourceBundle fgResourceBundle;
-
-	/**
-	 * Returns the resource bundle used by all classes in this Project
-	 */
-	public static ResourceBundle getResourceBundle() {
-		try {
-			return ResourceBundle.getBundle("emfworkbench");//$NON-NLS-1$
-		} catch (MissingResourceException e) {
-			// does nothing - this method will return null and
-			// getString(String, String) will return the key
-			// it was called with
-		}
-		return null;
-	}
-	public static String getString(String key) {
-		if (fgResourceBundle == null) {
-			fgResourceBundle= getResourceBundle();
-		}
-		
-		if (fgResourceBundle != null) {
-			try {
-				return fgResourceBundle.getString(key);
-			} catch (MissingResourceException e) {
-				return "!" + key + "!";//$NON-NLS-2$//$NON-NLS-1$
-			}
-		} else {
-			return "!" + key + "!";//$NON-NLS-2$//$NON-NLS-1$
-		}
-	}
-public static String getString(String key, Object[] args) {
-
-	try {return MessageFormat.format(getString(key), args);}
-	catch (IllegalArgumentException e) {return getString(key);}
-
-}
-public static String getString(String key, Object[] args, int x) {
-
-		return getString(key);
-	}
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/CharacterUtil.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/CharacterUtil.java
deleted file mode 100644
index d452b01..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/CharacterUtil.java
+++ /dev/null
@@ -1,279 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-import com.ibm.icu.text.UTF16;
- 
-
-/**
- * Static helper to handle characters in the new UTF multi-char format.
- * It is needed because ICU4J currently doesn't handle some correctly yet that we
- * need to have working. As ICU4J gets them working, the methods here will become
- * deprecated.
- * 
- * @since 1.2.0
- */
-public class CharacterUtil {
-
-	private CharacterUtil() {
-		
-	}
-	
-	
-	/**
-	 * TODO So until ICU4J does work correctly this util will be needed. It will
-	 * stay around because it is API, but at that time it will be marked deprecated. It should
-	 * also then reroute to ICU4J instead of doing the method reflections.
-	 */
-	private static Method METHOD_JAVA_IDENTIFIER_START, METHOD_JAVA_IDENTIFIER_PART;
-	
-	static {
-		// Try to get the Character.isJavaIdentifier(int) method. If there, then we are in 1.5 or above. Else use the char form.
-		try {
-			METHOD_JAVA_IDENTIFIER_START = Character.class.getMethod("isJavaIdentifierStart", new Class[] {Integer.TYPE});
-		} catch (SecurityException e) {
-			// Default to use (char) type instead.
-			METHOD_JAVA_IDENTIFIER_START = null;
-		} catch (NoSuchMethodException e) {
-			// Default to use (char) type instead.
-			METHOD_JAVA_IDENTIFIER_START = null;
-		}
-		try {
-			METHOD_JAVA_IDENTIFIER_PART = Character.class.getMethod("isJavaIdentifierPart", new Class[] {Integer.TYPE});
-		} catch (SecurityException e) {
-			// Default to use (char) type instead.
-			METHOD_JAVA_IDENTIFIER_PART = null;
-		} catch (NoSuchMethodException e) {
-			// Default to use (char) type instead.
-			METHOD_JAVA_IDENTIFIER_PART = null;
-		}		
-	}
-
-	/**
-	 * Is start of java identifier
-	 * @param intChar int character (UTF multi-char is valid)
-	 * @return <code>true</code> if start of java identifier.
-	 * 
-	 * @see Character#isJavaIdentifierStart(char)
-	 * @since 1.2.0
-	 */
-	public static boolean isJavaIdentifierStart(int intChar) {
-		if (METHOD_JAVA_IDENTIFIER_START != null) {
-			try {
-				return ((Boolean) METHOD_JAVA_IDENTIFIER_START.invoke(null, new Object[] {new Integer(intChar)})).booleanValue();
-			} catch (IllegalArgumentException e) {
-			} catch (IllegalAccessException e) {
-			} catch (InvocationTargetException e) {
-			}
-		}
-		return Character.isJavaIdentifierStart((char) intChar);
-	}
-	
-	/**
-	 * Is start of java identifier
-	 * @param intChar int character (UTF multi-char is valid)
-	 * @return <code>true</code> if start of java identifier.
-	 * 
-	 * @see Character#isJavaIdentifierStart(char)
-	 * @since 1.2.0
-	 */
-	public static boolean isJavaIdentifierPart(int intChar) {
-		if (METHOD_JAVA_IDENTIFIER_PART != null) {
-			try {
-				return ((Boolean) METHOD_JAVA_IDENTIFIER_PART.invoke(null, new Object[] {new Integer(intChar)})).booleanValue();
-			} catch (IllegalArgumentException e) {
-			} catch (IllegalAccessException e) {
-			} catch (InvocationTargetException e) {
-			}
-		}
-		return Character.isJavaIdentifierPart((char) intChar);
-	}
-	
-	public static abstract class AbstractCharIterator {
-
-		
-		protected final CharSequence charSeq;
-		private int pos = 0;
-		private int lastCharIndex = 0;
-
-		/**
-		 * Create with a string.
-		 * @param charSeq
-		 * 
-		 * @since 1.2.0
-		 */
-		public AbstractCharIterator(CharSequence charSeq) {
-			this.charSeq = charSeq;
-		}
-		
-		/**
-		 * Set the next char index.
-		 * @param index
-		 * 
-		 * @since 1.2.0
-		 */
-		public void setIndex(int index) {
-			pos = index;
-		}
-
-		/**
-		 * Has another char.
-		 * @return <code>true</code> if there is another char to return.
-		 * 
-		 * @since 1.2.0
-		 */
-		public boolean hasNext() {
-			return pos < charSeq.length();
-		}
-		
-		/**
-		 * Has another char before the current position. Doing previous
-		 * will return the char that was just returned.
-		 * @return
-		 * 
-		 * @since 1.2.0
-		 */
-		public boolean hasPrevious() {
-			return pos > 0;
-		}
-		
-		/**
-		 * Return next char from the one that was just returned.
-		 * @return next char.
-		 * 
-		 * @since 1.2.0
-		 */
-		public int next() {
-			if (!hasNext())
-				throw new IllegalStateException();
-			
-			int next = utfCharAt(pos);
-			lastCharIndex = pos;
-			pos += UTF16.getCharCount(next);
-			return next;
-		}
-		
-		/**
-		 * Return the UTF-32 char at the given position.
-		 * @param pos
-		 * @return
-		 * 
-		 * @since 1.2.0
-		 */
-		protected abstract int utfCharAt(int pos);
-		
-		/**
-		 * Return the previous character from the one that was just returned.
-		 * @return
-		 * 
-		 * @since 1.2.0
-		 */
-		public int previous() {
-			if (!hasPrevious())
-				throw new IllegalStateException();
-
-			int next;
-			if (UTF16.isTrailSurrogate(charSeq.charAt(--pos))) {
-				if (pos > 0)
-					next = utfCharAt(--pos);
-				else
-					next = charSeq.charAt(pos);
-			} else {
-				next = charSeq.charAt(pos);
-			}
-			lastCharIndex = pos;
-			return next;
-		}
-		
-		/**
-		 * Return the UTF16 character position of the char that was just returned from either
-		 * previous or next.
-		 * This is the (char) position not the
-		 * position of logical int chars returned. For example a standard string of
-		 * <code>"abc"</code> the position of the char 'b' is 1. But take the string
-		 * <code>"ab1b2c"</code> where "b1b2" is one UTF-32 char, then the position
-		 * of 'c' is 3. It would not be 2, which is what the logical char position
-		 * would be if taking UFT32 into account.
-		 * @return
-		 * 
-		 * @since 1.2.0
-		 */
-		public int getPosition() {
-			return lastCharIndex;
-		}
-	
-	}
-	
-	/**
-	 * Special char iterator that returns ints instead of chars for
-	 * walking strings that can contain UTF multi-chars. This is
-	 * a limited version of {@link java.text.CharacterIterator}.
-	 * 
-	 * @since 1.2.0
-	 */
-	public static class StringIterator extends AbstractCharIterator {
-		
-
-		/**
-		 * Create with a string.
-		 * @param str
-		 * 
-		 * @since 1.2.0
-		 */
-		public StringIterator(String str) {
-			super(str);
-		}
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jem.util.CharacterUtil.AbstractCharIterator#utfCharAt(int)
-		 */
-		protected int utfCharAt(int pos) {
-			return UTF16.charAt((String) charSeq, pos);
-		}
-		
-	}
-	
-	/**
-	 * Special char iterator that returns ints instead of chars for
-	 * walking strings that can contain UTF multi-chars. This is
-	 * a limited version of {@link java.text.CharacterIterator}.
-	 * 
-	 * @since 1.2.0
-	 */
-	public static class StringBufferIterator extends AbstractCharIterator {
-		
-
-		/**
-		 * Create with a string.
-		 * @param strBuffer
-		 * 
-		 * @since 1.2.0
-		 */
-		public StringBufferIterator(StringBuffer strBuffer) {
-			super(strBuffer);
-		}
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jem.util.CharacterUtil.AbstractCharIterator#utfCharAt(int)
-		 */
-		protected int utfCharAt(int pos) {
-			return UTF16.charAt((StringBuffer) charSeq, pos);
-		}
-		
-	}	
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/NotPresentPerformanceMonitor.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/NotPresentPerformanceMonitor.java
deleted file mode 100644
index 54af2bd..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/NotPresentPerformanceMonitor.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.eclipse.jem.util;
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: NotPresentPerformanceMonitor.java,v $$
- *  $$Revision: 1.3 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-/**
- * This is the instantiation to use if the performance monitor plugin is not installed. It basically does nothing.
- * 
- * <p>
- * This class is not intended to be instantiated by clients.
- * </p>
- * 
- * @since 1.0.0
- */
-public class NotPresentPerformanceMonitor extends PerformanceMonitorUtil {
-
-	/*
-	 * Only instantiated from this package.
-	 */
-	NotPresentPerformanceMonitor() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.PerformanceMonitorUtil#setVar(java.lang.String)
-	 */
-	public void setVar(String var) {
-	}
-
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jem.util.PerformanceMonitorUtil#doSnapshot(int, int)
-	 */
-	protected void doSnapshot(int step, int types) {
-	}
-
-
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jem.util.PerformanceMonitorUtil#doSnapshot(int)
-	 */
-	protected void doSnapshot(int step) {
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/PerformanceMonitorUtil.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/PerformanceMonitorUtil.java
deleted file mode 100644
index e6f3a1b..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/PerformanceMonitorUtil.java
+++ /dev/null
@@ -1,280 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util;
-import java.util.EventObject;
-
-import org.eclipse.perfmsr.core.IPerformanceMonitor;
-
-/**
- * This is a simplified wrapper to the IPerformanceMonitor that hides it so that the actual plugin can be optional and not required.
- * 
- * <p>
- * This class is not meant to be subclassed by clients.
- * </p>
- * 
- * @since 1.0.0
- */
-public abstract class PerformanceMonitorUtil {
-	/**
-	 * Event for PerformanceListener notification.
-	 * 
-	 * @since 1.1.0
-	 */
-	public static class PerformanceEvent extends EventObject {
-		
-		/**
-		 * Comment for <code>serialVersionUID</code>
-		 * 
-		 * @since 1.1.0
-		 */
-		private static final long serialVersionUID = -4680071462750180339L;
-
-		PerformanceEvent(Object source, int step) {
-			super(source);
-			snapshowWithTypes = false;
-			this.step = step;
-			this.types = 0;	// Not set.
-		}
-		
-		PerformanceEvent(Object source, int step, int types) {
-			super(source);
-			snapshowWithTypes = true;
-			this.step = step;
-			this.types = types;
-		}
-
-		
-		/**
-		 * Snapshot with types if <code>true</code>.
-		 * @since 1.1.0
-		 */
-		public final boolean snapshowWithTypes;
-
-		/**
-		 * Step of snapshot
-		 * @since 1.1.0
-		 */
-		public final int step;
-		
-		/**
-		 * types of snapshot.
-		 * @since 1.1.0
-		 */
-		public final int types;
-	}
-	
-	/**
-	 * Performance Listener interface
-	 * 
-	 * @since 1.1.0
-	 */
-	public interface PerformanceListener {
-		/**
-		 * Snapshot was called.
-		 * @param event
-		 * 
-		 * @since 1.1.0
-		 */
-		public void snapshot(PerformanceEvent event);
-	}
-	
-	private PerformanceListener[] listeners;
-
-	public interface Types {
-
-		/**
-		 * 1 - Write out the performance counters from the operating system. These include working set, peak working set, elapsed time, user time, and
-		 * kernel time.
-		 */
-		int OperatingSystemCounters = IPerformanceMonitor.Types.OperatingSystemCounters;
-
-		/**
-		 * 2 - Write out the global performance info. This includes things like the total committed memory for the entire system.
-		 * 
-		 * This function depends on the GetPerformanceInfo() function being available in the Windows psapi.dll. This is available in XP but is usually
-		 * not available in Win/2000. If it is not available then this function throws an UnsupportedOperationException.
-		 */
-		int GlobalSystemCounters = IPerformanceMonitor.Types.GlobalSystemCounters;
-
-		/**
-		 * 4 - Write out the size of the Java Heap.
-		 */
-		int JavaHeapSize = IPerformanceMonitor.Types.JavaHeapSize;
-
-		/**
-		 * 8 - Write out how much of the Java heap is being used. This calls the garbage collector so it may skew timing results.
-		 */
-		int JavaHeapUsed = IPerformanceMonitor.Types.JavaHeapUsed;
-
-		/**
-		 * 16 - The plugin startup and size information.
-		 */
-		int PluginInfo = IPerformanceMonitor.Types.PluginInfo;
-
-		/** 0xffff - Everything. */
-		int All = IPerformanceMonitor.Types.All;
-	}
-
-	private static PerformanceMonitorUtil sharedMonitor;
-
-	public static PerformanceMonitorUtil getMonitor() {
-		if (sharedMonitor == null) {
-			try {
-				Class.forName("org.eclipse.perfmsr.core.PerfMsrCorePlugin"); // This just tests if the performance plugin is available. Throws //$NON-NLS-1$
-																			 // exception otherwise.
-				Class presentClass = Class.forName("org.eclipse.jem.util.PresentPerformanceMonitor"); // Get the class we use wrapper it. //$NON-NLS-1$
-				sharedMonitor = (PerformanceMonitorUtil) presentClass.newInstance();
-				if (!sharedMonitor.isValid())
-					sharedMonitor = null;
-			} catch (RuntimeException e) {
-				// If any runtime exception, just use the not present one.
-			} catch (ClassNotFoundException e) {
-				// If class not found, then plugin not available, so just use the not present one.
-			} catch (InstantiationException e) {
-				// Problem instantiating, so just use the not present one.
-			} catch (IllegalAccessException e) {
-				// Some illegal access, so just use the not present one.
-			}
-			if (sharedMonitor == null) {
-				// Couldn't get the performance one for some reason. Use not present one instead.
-				sharedMonitor = new NotPresentPerformanceMonitor();
-			}
-		}
-		return sharedMonitor;
-	}
-	
-	protected boolean isValid() {
-		return true;
-	}
-
-	/**
-	 * Set the variations that are in effect.
-	 * 
-	 * @param var
-	 *            a comma delimited string of variation numbers
-	 */
-	public abstract void setVar(String var);
-
-	/**
-	 * Take a snapshot of some default performance measurements.
-	 * 
-	 * @param step
-	 *            this identifies the step that the snapshot is for
-	 */
-	public final void snapshot(int step) {
-		doSnapshot(step);
-		if (listeners != null)
-			notifySnapshot(new PerformanceEvent(this, step));
-	}
-	
-	private void notifySnapshot(PerformanceEvent event) {
-		PerformanceListener[] list = listeners;
-		for (int i = 0; i < list.length; i++) {
-			list[i].snapshot(event);
-		}
-	}
-	
-	/**
-	 * Do the actual snapshot
-	 * @param step
-	 * 
-	 * @see #snapshot(int)
-	 * @since 1.1.0
-	 */
-	protected abstract void doSnapshot(int step);
-
-	/**
-	 * Take a snapshot of the selected performance measurements.
-	 * 
-	 * @param step
-	 *            this identifies the step that the snapshot is for
-	 * 
-	 * @param types
-	 *            This controls which measurements are selected. It is an or'd together list of the IPerformanceMonitor.Types constants.
-	 * 
-	 * @see IPerformanceMonitor.Types
-	 */
-	public void snapshot(int step, int types) {
-		doSnapshot(step, types);
-		if (listeners != null)
-			notifySnapshot(new PerformanceEvent(this, step, types));		
-	}
-	
-	/**
-	 * Do the actual snapshot
-	 * @param step
-	 * 
-	 * @see #snapshot(int, int)
-	 * @since 1.1.0
-	 */
-	protected abstract void doSnapshot(int step, int types);	
-	
-	/**
-	 * Add listener to list.
-	 * @param listener
-	 * 
-	 * @since 1.1.0
-	 */
-	public void addPerformanceListener(PerformanceListener listener) {
-		if (findListener(listener) != -1)
-			return;
-		PerformanceListener[] newList = new PerformanceListener[listeners != null ? listeners.length+1 : 1];
-		if (listeners != null)
-			System.arraycopy(listeners, 0, newList, 0, listeners.length);
-		newList[newList.length-1] = listener;
-		listeners = newList;
-	}
-	
-	private int findListener(PerformanceListener listener) {
-		if (listeners != null) {
-			for (int i = 0; i < listeners.length; i++) {
-				if (listeners[i] == listener)
-					return i;
-			}
-		}
-		return -1;
-	}
-	
-	/**
-	 * Remove the listener from the list.
-	 * @param listener
-	 * 
-	 * @since 1.1.0
-	 */
-	public void removePerformanceListener(PerformanceListener listener) {
-		int index = findListener(listener);
-		if (index != -1) {
-			if (listeners.length == 1) {
-				listeners = null;
-				return;
-			}
-			PerformanceListener[] newList = new PerformanceListener[listeners.length-1];
-			System.arraycopy(listeners, 0, newList, 0, index);
-			System.arraycopy(listeners, index+1, newList, index, newList.length-index);
-			listeners = newList;
-		}
-	}
-	/**
-	 * Upload the results to the server. This causes the file to be
-	 * closed, and the monitor to be placed into the finished state.
-	 * 
-	 * This method can only be called if the uploadhost, uploadport and uploaduserid
-	 * have been configured before hand.
-	 * 
-	 * @param description an optional description (it can be null)
-	 * 
-	 */
-	public boolean upload(String description){return false;}
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/PresentPerformanceMonitor.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/PresentPerformanceMonitor.java
deleted file mode 100644
index d021cd5..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/PresentPerformanceMonitor.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util;
-import org.eclipse.perfmsr.core.IPerformanceMonitor;
-import org.eclipse.perfmsr.core.PerfMsrCorePlugin;
-
-/**
- * This is the version used when the performance plugin is available.
- * 
- * <p>
- * This class is not meant to be instantiated by clients.
- * </p>
- * 
- * @since 1.0.0
- */
-public class PresentPerformanceMonitor extends PerformanceMonitorUtil {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jem.util.PerformanceMonitorUtil#upload(java.lang.String)
-	 */
-	public boolean upload(String description) {
-		return monitor.upload(description).success;
-	}
-	
-	private IPerformanceMonitor monitor;
-
-	/*
-	 * So that only instantiated by this package.
-	 */
-	PresentPerformanceMonitor() {
-		monitor = PerfMsrCorePlugin.getPerformanceMonitor(true);
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jem.util.PerformanceMonitorUtil#isValid()
-	 */
-	protected boolean isValid() {
-		return monitor != null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.PerformanceMonitorUtil#setVar(java.lang.String)
-	 */
-	public void setVar(String var) {
-		monitor.setVar(var);
-	}
-
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jem.util.PerformanceMonitorUtil#doSnapshot(int)
-	 */
-	protected void doSnapshot(int step) {
-		monitor.snapshot(step);
-	}
-
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jem.util.PerformanceMonitorUtil#doSnapshot(int, int)
-	 */
-	protected void doSnapshot(int step, int types) {
-		monitor.snapshot(step, types);
-	}
-
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/RegistryReader.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/RegistryReader.java
deleted file mode 100644
index 37e8277..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/RegistryReader.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: RegistryReader.java,v $$
- *  $$Revision: 1.5 $$  $$Date: 2006/05/17 20:13:45 $$ 
- */
-package org.eclipse.jem.util;
-import org.eclipse.core.runtime.*;
-import org.osgi.framework.Bundle;
-
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-
-/**
- * Class to read a registry. It is meant to be subclassed to provide specific function.
- * 
- * @since 1.0.0
- */
-public abstract class RegistryReader {
-
-	String pluginId;
-
-	String extensionPointId;
-
-	private static Bundle systemBundle;
-
-	/**
-	 * Utility method to get the plugin id of a configuation element
-	 * 
-	 * @param configurationElement
-	 * @return plugin id of configuration element
-	 * @since 1.0.0
-	 */
-	public static String getPluginId(IConfigurationElement configurationElement) {
-		String pluginId = null;
-
-		if (configurationElement != null) {
-			IExtension extension = configurationElement.getDeclaringExtension();
-
-			if (extension != null)
-				pluginId = extension.getContributor().getName();
-		}
-
-		return pluginId;
-	}
-
-	/**
-	 * Constructor for RegistryReader taking a registry, plugin id, and extension point id.
-	 * 
-	 * @param registry
-	 * @param pluginID
-	 * @param extensionPoint
-	 * 
-	 * @deprecated Use RegistryReader(plugin, extensionPoint) instead. The registry passed in is ignored.
-	 * @since 1.0.0
-	 */
-	public RegistryReader(IPluginRegistry registry, String pluginID, String extensionPoint) {
-		this(pluginID, extensionPoint);
-	}
-
-	/**
-	 * Constructor for RegistryReader taking the plugin id and extension point id.
-	 * 
-	 * @param pluginID
-	 * @param extensionPoint
-	 * 
-	 * @since 1.0.0
-	 */
-	public RegistryReader(String pluginID, String extensionPoint) {
-		super();
-		this.pluginId = pluginID;
-		extensionPointId = extensionPoint;
-	}
-
-	private void internalReadElement(IConfigurationElement element) {
-		boolean recognized = this.readElement(element);
-		if (!recognized) {
-			logError(element, "Error processing extension: " + element); //$NON-NLS-1$
-		}
-	}
-
-	/*
-	 * Logs the error in the desktop log using the provided text and the information in the configuration element.
-	 */
-	protected void logError(IConfigurationElement element, String text) {
-		IExtension extension = element.getDeclaringExtension();
-		StringBuffer buf = new StringBuffer();
-		buf.append("Plugin " + extension.getContributor().getName() + ", extension " + extension.getExtensionPointUniqueIdentifier()); //$NON-NLS-1$ //$NON-NLS-2$
-		buf.append("\n" + text); //$NON-NLS-1$
-		Logger.getLogger().logError(buf.toString());
-	}
-
-	/*
-	 * Logs a very common registry error when a required attribute is missing.
-	 */
-	protected void logMissingAttribute(IConfigurationElement element, String attributeName) {
-		logError(element, "Required attribute '" + attributeName + "' not defined"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-
-	/*
-	 * Implement this method to read element attributes. If this element has subelements, the reader will recursively cycle through them and call this
-	 * method so don't do it here.
-	 */
-	public abstract boolean readElement(IConfigurationElement element);
-
-	/**
-	 * Read the extension point and parse it.
-	 * 
-	 * @since 1.0.0
-	 */
-	public void readRegistry() {
-		IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(pluginId, extensionPointId);
-		if (point == null)
-			return;
-		IConfigurationElement[] elements = point.getConfigurationElements();
-		for (int i = 0; i < elements.length; i++) {
-			internalReadElement(elements[i]);
-		}
-	}
-
-	/**
-	 * Tests to see if it is valid at this point in time to create an executable extension. A valid reason not to would be that the workspace is
-	 * shutting donw.
-	 * 
-	 * @param element
-	 * @return <code>true</code> if it is valid point to create an executable extension.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean canCreateExecutableExtension(IConfigurationElement element) {
-		if (Platform.isRunning() && getSystemBundle().getState() != Bundle.STOPPING)
-			return true;
-		return false;
-	}
-
-	/**
-	 * Get the system bundle
-	 * 
-	 * @return system bundle.
-	 * 
-	 * @since 1.0.0
-	 */
-	protected static Bundle getSystemBundle() {
-		if (systemBundle == null)
-			systemBundle = Platform.getBundle("org.eclipse.osgi"); //$NON-NLS-1$
-		return systemBundle;
-	}
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/TimerTests.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/TimerTests.java
deleted file mode 100644
index 7524f78..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/TimerTests.java
+++ /dev/null
@@ -1,352 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util;
-
-import java.text.NumberFormat;
-import java.util.*;
-
-/**
- * 
- * @since 1.0.2
- */
-public class TimerTests {
-
-	/**
-	 * Default TimerTests class to use when not using your own. It's a global.
-	 */
-	public static TimerTests basicTest = new TimerTests();
-
-	public static final String CURRENT_PARENT_ID = "current parent"; //$NON-NLS-1$
-	protected String currentParentId = null;
-
-
-	protected static class TimerStep {
-		static final int START = 0;
-		static final int STOP = 1;
-		static final int START_CUMULATIVE = 2;
-		static final int STOP_CUMULATIVE = 3;
-		static final int START_ACCUMULATING = 4;
-		static final int STOP_ACCUMULATING = 5;
-		protected String id;
-		protected int type;
-		protected long currentTime;
-		protected int threadId;
-}
-
-	protected boolean testOn = false;
-	protected List steps;
-
-	public synchronized boolean startStep(String id) {
-		if (!testOn)
-			return true;
-
-		TimerStep step = createTimerStep(id, TimerStep.START);
-		return step != null;
-	}
-
-	protected TimerStep createTimerStep(String id, int stepType) {
-		TimerStep newStep = new TimerStep();
-		newStep.threadId = Thread.currentThread().hashCode();
-		newStep.id = id;
-		newStep.type = stepType;
-		newStep.currentTime = System.currentTimeMillis();
-		steps.add(newStep);
-
-		return newStep;
-	}
-
-	public synchronized boolean stopStep(String id) {
-		if (!testOn)
-			return true;
-		TimerStep step = createTimerStep(id, TimerStep.STOP);
-		return step != null;
-	}
-
-	public synchronized boolean startAccumulating(String id) {
-		if (!testOn)
-			return true;
-
-		return createTimerStep(id, TimerStep.START_ACCUMULATING) != null;
-	}
-
-	public synchronized boolean stopAccumulating(String id) {
-		if (!testOn)
-			return true;
-
-		return createTimerStep(id, TimerStep.STOP_ACCUMULATING) != null;
-	}
-	public synchronized boolean startCumulativeStep(String id) {
-		if (!testOn)
-			return true;
-
-		return createTimerStep(id, TimerStep.START_CUMULATIVE) != null;
-	}
-
-	public synchronized boolean stopCumulativeStep(String id) {
-		if (!testOn)
-			return true;
-		return createTimerStep(id, TimerStep.STOP_CUMULATIVE) != null;
-	}
-
-	/**
-	 * Clear the tests so that you can restart and do some more tests.
-	 * 
-	 * 
-	 * @since 1.0.2
-	 */
-	public synchronized void clearTests() {
-		if (!testOn)
-			return;
-		steps.clear();
-		currentParentId = null;
-	}
-
-	/**
-	 * Turn this test on. If not turned on then all calls will quickly return with no errors. This allows the code to stay in place even when not
-	 * debugging.
-	 * <p>
-	 * When turned off, it will clear the test.
-	 * 
-	 * @param on
-	 * 
-	 * @since 1.0.2
-	 */
-	public synchronized void testState(boolean on) {
-		if (on == testOn)
-			return;
-		if (on) {
-			testOn = true;
-			if (steps == null)
-				steps = new ArrayList();
-		} else {
-			testOn = false;
-			steps = null;
-		}
-		currentParentId = null;
-	}
-	private static class CumulativeInformation {
-		public TimerStep currentCumulativeStep;
-		public long cumTime;
-		public int cumCount;
-		public int cumCountNonZero;
-		public long maxTime;
-		public long minTime = Integer.MAX_VALUE;
-		public long minTimeNonZero = Integer.MAX_VALUE;
-	}
-	public synchronized void printIt() {
-		if (!testOn)
-			return;
-		if (steps == null)
-			return;
-		Map stepInfoByThreadId = new HashMap();
-		Map indentsByThreadId = new HashMap();
-		Map cumSteps;
-		TimerStep prevStep = null;
-		TimerStep startStep;
-		NumberFormat percentFormatter = NumberFormat.getPercentInstance();
-		double totalTime = 0;
-		StringBuffer strb = new StringBuffer(150);
-		if (steps.size() > 2){
-			totalTime = ((TimerStep)steps.get(steps.size()-1)).currentTime - ((TimerStep)steps.get(0)).currentTime;
-		}
-		for (int i = 0; i < steps.size(); i++) {
-			TimerStep step = (TimerStep) steps.get(i);
-			Integer threadId = new Integer(step.threadId);
-			switch (step.type) {
-				case TimerStep.START:
-				case TimerStep.STOP:
-					Integer threadIndent = (Integer) indentsByThreadId.get(threadId);
-					int indent = 0;
-					if (step.type == TimerStep.START) {
-						if (threadIndent != null)
-							indent = threadIndent.intValue() + 1;
-						indentsByThreadId.put(threadId, new Integer(indent));
-					} else {
-						if (threadIndent != null)
-							indent = threadIndent.intValue();
-						if (indent > 0)
-							indentsByThreadId.put(threadId, new Integer(indent - 1));
-						else {
-							indentsByThreadId.remove(threadId);
-							indent = 0;
-						}
-					}
-					strb.setLength(0);
-					strb.append(step.currentTime);
-					strb.append("\t"); //$NON-NLS-1$
-					for (int j = 0; j < indent; j++) {
-						strb.append("     "); //$NON-NLS-1$
-					}
-					switch (step.type) {
-						case TimerStep.START:
-							strb.append("Start"); //$NON-NLS-1$
-							break;
-
-						case TimerStep.STOP:
-							strb.append("Stop "); //$NON-NLS-1$
-							break;
-						default:
-							break;
-					}
-					;
-					strb.append(" \""); //$NON-NLS-1$
-					strb.append(step.id);
-					strb.append("\"   id("); //$NON-NLS-1$
-					strb.append(step.threadId);
-					strb.append(")"); //$NON-NLS-1$
-					Map startSteps = (Map) stepInfoByThreadId.get(threadId);
-					if (startSteps == null)
-						stepInfoByThreadId.put(threadId, startSteps = new HashMap());
-					if (step.type == TimerStep.START) {
-						// Store the start step for later lookup when calulating the total time
-						startSteps.put(step.id, step);
-					} else {
-						// This is the stop time for a step. We need to find
-						// the corresponding start time and calculate the total time.
-						Object item = startSteps.remove(step.id);
-						if (item instanceof TimerStep) {
-							startStep = (TimerStep) item;
-							if (startStep != null) {
-								int addchars = 100 - strb.length();
-								for (int j = 0; j < addchars; j++) {
-									strb.append(" "); //$NON-NLS-1$
-								}
-								long delta = step.currentTime - startStep.currentTime;
-								strb.append("    Total = " + delta + " ms"); //$NON-NLS-1$ //$NON-NLS-2$
-								if (totalTime > 0)
-									strb.append("   " + percentFormatter.format(delta/totalTime)); //$NON-NLS-1$
-							}
-						} else
-							strb.append("    ---> Couldn't find Starting point for \"" + step.id + "\""); //$NON-NLS-1$ //$NON-NLS-2$
-					}
-					if (i > 0 && (step.currentTime - prevStep.currentTime) > 0)
-						System.out.println("-- " + (step.currentTime - prevStep.currentTime) + " ms --"); //$NON-NLS-1$ //$NON-NLS-2$
-					prevStep = step;
-					System.out.println(strb);
-					break;
-
-				case TimerStep.START_ACCUMULATING:
-					cumSteps = (Map) stepInfoByThreadId.get(threadId);
-					if (cumSteps == null)
-						stepInfoByThreadId.put(threadId, cumSteps = new HashMap());
-					cumSteps.put(step.id, new CumulativeInformation());
-					threadIndent = (Integer) indentsByThreadId.get(threadId);
-					indent = 0;
-					if (threadIndent != null)
-						indent = threadIndent.intValue();
-					strb.setLength(0);
-					strb.append(step.currentTime);
-					strb.append("\t"); //$NON-NLS-1$
-					for (int j = 0; j < indent; j++) {
-						strb.append("     "); //$NON-NLS-1$
-					}
-					strb.append("Start Accumulating"); //$NON-NLS-1$
-					strb.append(" \""); //$NON-NLS-1$
-					strb.append(step.id);
-					strb.append("\"   id("); //$NON-NLS-1$
-					strb.append(step.threadId);
-					strb.append(")"); //$NON-NLS-1$
-					if (i > 0 && (step.currentTime - prevStep.currentTime) > 0)
-						System.out.println("-- " + (step.currentTime - prevStep.currentTime) + " ms --"); //$NON-NLS-1$ //$NON-NLS-2$
-					prevStep = step;
-					System.out.println(strb);
-					break;
-
-				case TimerStep.START_CUMULATIVE:
-					cumSteps = (Map) stepInfoByThreadId.get(threadId);
-					if (cumSteps != null) {
-						Object info = cumSteps.get(step.id);
-						if (info instanceof CumulativeInformation)
-							((CumulativeInformation) info).currentCumulativeStep = step;
-					}
-					break;
-					
-				case TimerStep.STOP_CUMULATIVE:
-					cumSteps = (Map) stepInfoByThreadId.get(threadId);
-					if (cumSteps != null) {
-						Object info = cumSteps.get(step.id);
-						if (info instanceof CumulativeInformation) {
-							CumulativeInformation cumInfo = (CumulativeInformation) info;
-							if (cumInfo.currentCumulativeStep != null) {
-								cumInfo.cumCount++;
-								long delta = step.currentTime - cumInfo.currentCumulativeStep.currentTime;
-								cumInfo.cumTime += delta;
-								if (cumInfo.maxTime < delta)
-									cumInfo.maxTime = delta;
-								if (delta < cumInfo.minTime)
-									cumInfo.minTime = delta;
-								if (delta != 0) {
-									cumInfo.cumCountNonZero++;
-									if (delta < cumInfo.minTimeNonZero)
-										cumInfo.minTimeNonZero = delta;
-								}
-							}
-						}
-					}
-					break;
-					
-				case TimerStep.STOP_ACCUMULATING:
-					threadIndent = (Integer) indentsByThreadId.get(threadId);
-					indent = 0;
-					if (threadIndent != null)
-						indent = threadIndent.intValue();
-					strb.setLength(0);
-					strb.append(step.currentTime);
-					strb.append("\t"); //$NON-NLS-1$
-					for (int j = 0; j < indent; j++) {
-						strb.append("     "); //$NON-NLS-1$
-					}
-					strb.append("Stop  Accumulating"); //$NON-NLS-1$
-					strb.append(" \""); //$NON-NLS-1$
-					strb.append(step.id);
-					strb.append("\"   id("); //$NON-NLS-1$
-					strb.append(step.threadId);
-					strb.append(")"); //$NON-NLS-1$
-					cumSteps = (Map) stepInfoByThreadId.get(threadId);
-					if (cumSteps != null) {
-						Object info = cumSteps.get(step.id);
-						if (info instanceof CumulativeInformation) {
-							CumulativeInformation cumInfo = (CumulativeInformation) info;
-							if (cumInfo.currentCumulativeStep != null) {
-								strb.append("   cumulative time="); //$NON-NLS-1$
-								strb.append(cumInfo.cumTime);
-								strb.append("   cumulative count="); //$NON-NLS-1$
-								strb.append(cumInfo.cumCount);
-								strb.append("   max time="); //$NON-NLS-1$
-								strb.append(cumInfo.maxTime);
-								strb.append("   min time="); //$NON-NLS-1$
-								strb.append(cumInfo.minTime);
-								strb.append("   avg time="); //$NON-NLS-1$
-								strb.append(((double) cumInfo.cumTime)/cumInfo.cumCount);
-								strb.append("   NonZero times: cumulative ~0 count="); //$NON-NLS-1$
-								strb.append(cumInfo.cumCountNonZero);
-								if (cumInfo.cumCountNonZero != 0) {
-									strb.append("   min ~0 time="); //$NON-NLS-1$
-									strb.append(cumInfo.minTimeNonZero);
-									strb.append("   avg ~0 time="); //$NON-NLS-1$
-									strb.append(((double) cumInfo.cumTime) / cumInfo.cumCountNonZero);
-								}
-							}
-						}
-					}
-					if (i > 0 && (step.currentTime - prevStep.currentTime) > 0)
-						System.out.println("-- " + (step.currentTime - prevStep.currentTime) + " ms --"); //$NON-NLS-1$ //$NON-NLS-2$
-					prevStep = step;
-					System.out.println(strb);
-					break;
-			}
-		}
-	}
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/UIContextDetermination.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/UIContextDetermination.java
deleted file mode 100644
index 8955882..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/UIContextDetermination.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: UIContextDetermination.java,v $$
- *  $$Revision: 1.5 $$  $$Date: 2007/04/10 01:09:36 $$ 
- */
-package org.eclipse.jem.util;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.*;
-
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
-
-/**
- * Static utility class for UIContext determination.
- * 
- * @since 1.0.0
- */
-public class UIContextDetermination {
-
-	private static final int UNKNOWN = 100;
-
-	public static final String HEADLESS_CONTEXT_LITERAL = "Headless"; //$NON-NLS-1$
-
-	public static final String UI_CONTEXT_LITERAL = "UI"; //$NON-NLS-1$
-
-	public static final int HEADLESS_CONTEXT = 102;
-
-	public static final int UI_CONTEXT = 101;
-
-	private static Map cachedExtensions = null;
-
-	private static int currentContext = UNKNOWN;
-
-	private UIContextDetermination() {
-	}
-
-	/**
-	 * Returns an instance of a given class based on the UI or Headless context.
-	 * 
-	 * @param key
-	 * @return new class instance for the given key.
-	 * @throws IllegalArgumentException
-	 *             If the key is invalid (e.g. no extension is found for the key)
-	 */
-	public static Object createInstance(String key) {
-		Object result = null;
-		if (cachedExtensions == null)
-			initExtensions();
-		IConfigurationElement contextSensitiveClass = (IConfigurationElement) cachedExtensions.get(key);
-		try {
-			if (contextSensitiveClass != null)
-				result = contextSensitiveClass
-						.createExecutableExtension(UIContextDeterminationRegistryReader.UI_CONTEXT_SENSTIVE_CLASS_CLASSNAME_ATTR);
-		} catch (CoreException e) {
-			Logger.getLogger().logError("Problem loading extension not found for key \"" + key + "\"."); //$NON-NLS-1$ //$NON-NLS-2$
-			Logger.getLogger().logError(e);
-		}
-		if (result == null)
-			Logger.getLogger().logError("Extension not found for key \"" + key + "\"."); //$NON-NLS-1$ //$NON-NLS-2$
-		return result;
-	}
-
-	/**
-	 * Returns the current context -- determines the value if necessary.
-	 * 
-	 * @return current context
-	 * @see #HEADLESS_CONTEXT
-	 * @see #UI_CONTEXT
-	 */
-	public static int getCurrentContext() {
-		if (currentContext == UNKNOWN) {
-			currentContext = HEADLESS_CONTEXT;
-			new UITesterRegistryReader().readRegistry();
-		}
-		return currentContext;
-	}
-
-	/*
-	 * Invokes the UIContextDeterminationRegistryReader to cache all of the extensions, if necessary.
-	 *  
-	 */
-	private static void initExtensions() {
-		if (cachedExtensions == null) {
-			cachedExtensions = new HashMap();
-			new UIContextDeterminationRegistryReader().readRegistry();
-		}
-	}
-
-	/*
-	 * Converts the input to one of UI_CONTEXT or HEADLESS_CONTEXT. Defaults to HEADLESS on invalid input
-	 * 
-	 * @param literal @return
-	 */
-	private static int convertLiteral(String literal) {
-		return (UI_CONTEXT_LITERAL.equals(literal)) ? UI_CONTEXT : HEADLESS_CONTEXT;
-	}
-
-	/*
-	 * Reads the registration of UI Context-sensitive class extensions and initializes the cache of the UIContextDetermination object.
-	 * 
-	 * @author mdelder
-	 */
-	private static class UIContextDeterminationRegistryReader extends RegistryReader {
-
-		public static final String UI_CONTEXT_SENSTIVE_CLASS_ELEMENT = "uiContextSensitiveClass"; //$NON-NLS-1$
-
-		public static final String UI_CONTEXT_SENSTIVE_CLASS_KEY_ATTR = "key"; //$NON-NLS-1$
-
-		public static final String UI_CONTEXT_SENSTIVE_CLASS_CLASSNAME_ATTR = "className"; //$NON-NLS-1$
-
-		public static final String UI_CONTEXT_SENSTIVE_CLASS_CONTEXT_ATTR = "context"; //$NON-NLS-1$
-
-		public UIContextDeterminationRegistryReader() {
-			super(JEMUtilPlugin.PLUGIN_ID, JEMUtilPlugin.UI_CONTEXT_EXTENSION_POINT);
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.jem.util.RegistryReader#readElement(org.eclipse.core.runtime.IConfigurationElement)
-		 */
-		public boolean readElement(IConfigurationElement element) {
-			boolean result = false;
-			if (element.getName().equals(UI_CONTEXT_SENSTIVE_CLASS_ELEMENT)) {
-
-				String key = element.getAttribute(UI_CONTEXT_SENSTIVE_CLASS_KEY_ATTR);
-				String context = element.getAttribute(UI_CONTEXT_SENSTIVE_CLASS_CONTEXT_ATTR);
-
-				if (!cachedExtensions.containsKey(key) || getCurrentContext() == convertLiteral(context))
-					cachedExtensions.put(key, element);
-				result = true;
-			}
-			return result;
-		}
-	}
-
-	/*
-	 * Reads the uiTester extension and instantiate the any of the UITester classes it finds.
-	 * 
-	 * The implementation has the side effect that if multiple UITesters are registered, any of them can trip the currentContext into the UI_CONTEXT
-	 * state.
-	 * 
-	 * @author mdelder
-	 */
-	private static class UITesterRegistryReader extends RegistryReader {
-
-		public static final String UI_TESTER_ELEMENT = "uiTester"; //$NON-NLS-1$
-
-		public static final String UI_TESTER_CLASSNAME_ATTR = "className"; //$NON-NLS-1$
-
-		public UITesterRegistryReader() {
-			super(JEMUtilPlugin.PLUGIN_ID, JEMUtilPlugin.UI_TESTER_EXTENSION_POINT);
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see com.ibm.etools.emf.workbench.RegistryReader#readElement(org.eclipse.core.runtime.IConfigurationElement)
-		 */
-		public boolean readElement(IConfigurationElement element) {
-			boolean result = false;
-			if (element.getName().equals(UI_TESTER_ELEMENT)) {
-				result = true;
-				try {
-					// Don't bother running tester it if we already processed one extension that returned true.
-					if (currentContext != UI_CONTEXT && canCreateExecutableExtension(element)) {
-						UITester tester = (UITester) element.createExecutableExtension(UI_TESTER_CLASSNAME_ATTR);
-						if (tester.isCurrentContextUI())
-							currentContext = UI_CONTEXT;
-					}
-				} catch (Exception t) {
-					Logger.getLogger().log("UIContextDetermination is proceeding in HEADLESS mode"); //$NON-NLS-1$
-				}
-			}
-			return result;
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/UITester.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/UITester.java
deleted file mode 100644
index 54517e8..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/UITester.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.eclipse.jem.util;
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: UITester.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-/**
- * Interface for a UITester. The "classname" attribute on the "uiTester" extension point should implement this class.
- * 
- * @since 1.0.0
- */
-public interface UITester {
-
-	/**
-	 * Answer if the current context is an UI context.
-	 * 
-	 * @return <code>true</code> if an UI context.
-	 * 
-	 * @since 1.0.0
-	 */
-	public boolean isCurrentContextUI();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/EMFWorkbenchContextBase.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/EMFWorkbenchContextBase.java
deleted file mode 100644
index bedff60..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/EMFWorkbenchContextBase.java
+++ /dev/null
@@ -1,193 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: EMFWorkbenchContextBase.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-package org.eclipse.jem.util.emf.workbench;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-
-import org.eclipse.jem.internal.util.emf.workbench.*;
-import org.eclipse.jem.internal.util.emf.workbench.nls.EMFWorkbenchResourceHandler;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
-
-/**
- * ContextBase for EMFWorkbench.
- * 
- * <p>
- * This is meant to be subclassed as needed for additional or override function. It will be instantiated by default.
- * </p>
- * 
- * @since 1.0.0
- */
-public class EMFWorkbenchContextBase {
-
-	protected IProject project;
-
-	protected ProjectResourceSet resourceSet;
-
-	/**
-	 * Construct with a project.
-	 * 
-	 * @param aProject
-	 * 
-	 * @since 1.0.0
-	 */
-	public EMFWorkbenchContextBase(IProject aProject) {
-		if (aProject == null)
-			throw new IllegalArgumentException(EMFWorkbenchResourceHandler.getString("EMFWorkbenchContextBase_ERROR_1")); //$NON-NLS-1$
-		project = aProject;
-	}
-
-	/**
-	 * Dispose of the context base.
-	 * 
-	 * 
-	 * @since 1.0.0
-	 */
-	public void dispose() {
-		if (resourceSet != null)
-			resourceSet.release();
-		resourceSet = null;
-		project = null;
-	}
-
-	/**
-	 * Get the project this context is associated with.
-	 * 
-	 * @return project
-	 * 
-	 * @since 1.0.0
-	 */
-	public IProject getProject() {
-		return project;
-	}
-
-	/**
-	 * Return the resource set (creating if needed) for context.
-	 * 
-	 * @return resource set
-	 * 
-	 * @since 1.0.0
-	 */
-	public ProjectResourceSet getResourceSet() {
-		if (resourceSet == null) {
-			resourceSet = createResourceSet();
-			initializeResourceSet(resourceSet);
-		}
-		return resourceSet;
-	}
-
-	/**
-	 * Used for optimization; answer whether a resourceSet has been created
-	 * 
-	 * @return <code>true</code> if a resource set has been created.
-	 * 
-	 * @since 1.0.0
-	 */
-	public boolean hasResourceSet() {
-		return resourceSet != null;
-	}
-
-	/**
-	 * Initialize the resource set.
-	 * 
-	 * @param aResourceSet
-	 * 
-	 * @since 1.0.0
-	 */
-	protected void initializeResourceSet(ProjectResourceSet aResourceSet) {
-		createResourceSetSynchronizer(aResourceSet);
-		aResourceSet.setURIConverter(createURIConverter(aResourceSet));
-		aResourceSet.add(new WorkspaceResourceHandler());
-		JEMUtilPlugin.getDefault().addExtendedResourceHandlers(aResourceSet);
-
-	}
-
-	/**
-	 * Create the resource set. By default it is a ProjectResourceSetImpl.
-	 * 
-	 * @return project's new resource set.
-	 * 
-	 * @since 1.0.0
-	 */
-	protected ProjectResourceSet createResourceSet() {
-		if (project == null)
-			throw new IllegalStateException(EMFWorkbenchResourceHandler.getString("EMFWorkbenchContextBase_ERROR_2")); //$NON-NLS-1$
-		return new ProjectResourceSetImpl(project);
-	}
-
-	/**
-	 * Create a URIConverter for the resource set.
-	 * 
-	 * @param aResourceSet
-	 * @return a uri converter.
-	 * 
-	 * @since 1.0.0
-	 */
-	protected WorkbenchURIConverter createURIConverter(ProjectResourceSet aResourceSet) {
-		return new WorkbenchURIConverterImpl(getProject(), aResourceSet.getSynchronizer());
-	}
-
-	/**
-	 * Create a resource set workbench synchronizer.
-	 * 
-	 * @param aResourceSet
-	 * @return a resource set workbench synchronizer.
-	 * 
-	 * @since 1.0.0
-	 */
-	protected ResourceSetWorkbenchSynchronizer createResourceSetSynchronizer(ProjectResourceSet aResourceSet) {
-		return EMFWorkbenchContextFactory.INSTANCE.createSynchronizer(aResourceSet, getProject());
-	}
-
-	/**
-	 * Delete the resource from the workspace.
-	 * 
-	 * @param aResource
-	 * @throws CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	public void deleteResource(Resource aResource) throws CoreException {
-		if (aResource != null)
-			deleteFile(aResource);
-	}
-
-	/**
-	 * Delete the file associated with the resource.
-	 * 
-	 * @param resource
-	 * 
-	 * @since 1.0.0
-	 */
-	public void deleteFile(Resource resource) {
-		throw new UnsupportedOperationException(EMFWorkbenchResourceHandler.getString("EMFWorkbenchContextBase_ERROR_0")); //$NON-NLS-1$
-	}
-
-	/**
-	 * Get resource (with the given URI) from the project resource set. Load it if not already loaded.
-	 * 
-	 * @param uri
-	 * @return resource for the uri, or <code>null</code> if not found.
-	 * 
-	 * @since 1.0.0
-	 */
-	public Resource getResource(URI uri) {
-		return this.resourceSet.getResource(uri, true);
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/FlexibleProjectResourceSet.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/FlexibleProjectResourceSet.java
deleted file mode 100644
index 1e231f0..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/FlexibleProjectResourceSet.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package org.eclipse.jem.util.emf.workbench;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.Resource.Factory;
-
-
-public interface FlexibleProjectResourceSet extends ProjectResourceSet {
-	
-	
-	/**
-	   * Returns the resource resolved by the URI.
-	   * <p>
-	   * A resource set is expected to implement the following strategy 
-	   * in order to resolve the given URI to a resource.
-	   * First it uses it's {@link #getURIConverter URI converter} to {@link URIConverter#normalize normalize} the URI 
-	   * and then to compare it with the normalized URI of each resource;
-	   * if it finds a match, 
-	   * that resource becomes the result.
-	   * Failing that,
-	   * it {@link org.eclipse.emf.ecore.resource.impl.ResourceSetImpl#delegatedGetResource delegates} 
-	   * to allow the URI to be resolved elsewhere.
-	   * For example, 
-	   * the {@link org.eclipse.emf.ecore.EPackage.Registry#INSTANCE package registry}
-	   * is used to {@link org.eclipse.emf.ecore.EPackage.Registry#getEPackage resolve} 
-	   * the {@link org.eclipse.emf.ecore.EPackage namespace URI} of a package
-	   * to the static instance of that package.
-	   * So the important point is that an arbitrary implementation may resolve the URI to any resource,
-	   * not necessarily to one contained by this particular resource set.
-	   * If the delegation step fails to provide a result,
-	   * and if <code>loadOnDemand</code> is <code>true</code>,
-	   * a resource is {@link org.eclipse.emf.ecore.resource.impl.ResourceSetImpl#demandCreateResource created} 
-	   * and that resource becomes the result.
-	   * If <code>loadOnDemand</code> is <code>true</code>
-	   * and the result resource is not {@link Resource#isLoaded loaded}, 
-	   * it will be {@link org.eclipse.emf.ecore.resource.impl.ResourceSetImpl#demandLoad loaded} before it is returned.
-	   * </p>
-	   * @param uri the URI to resolve.
-	   * @param loadOnDemand whether to create and load the resource, if it doesn't already exists.
-	   * @param registeredFactory that is used to create resource if needed 
-	   * @return the resource resolved by the URI, or <code>null</code> if there isn't one and it's not being demand loaded.
-	   * @throws RuntimeException if a resource can't be demand created.
-	   * @throws org.eclipse.emf.common.util.WrappedException if a problem occurs during demand load.
-	   * @since 2.1
-	   */
-	
-	Resource getResource(URI uri, boolean loadOnDemand, Factory registeredFactory);
-	
-	/**
-	   * Creates a new resource, of the appropriate type, and returns it.
-	   * <p>
-	   * It delegates to the resource factory {@link #getResourceFactoryRegistry registry} 
-	   * to determine the {@link Resource.Factory.Registry#getFactory correct} factory,
-	   * and then it uses that factory to {@link Resource.Factory#createResource create} the resource
-	   * and add it to the {@link #getResources contents}.
-	   * If there is no registered factory, <code>null</code> will be returned;
-	   * when running within Eclipse,
-	   * a default XMI factory will be registered,
-	   * and this will never return <code>null</code>.
-	   * </p>
-	   * @param uri the URI of the resource to create.
-	   * @param resourceFactory 
-	   * @return a new resource, or <code>null</code> if no factory is registered.
-	   */
-	
-	public Resource createResource(URI uri, Resource.Factory resourceFactory);
-
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/IEMFContextContributor.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/IEMFContextContributor.java
deleted file mode 100644
index 465d7fa..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/IEMFContextContributor.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: IEMFContextContributor.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-
-package org.eclipse.jem.util.emf.workbench;
-
-/**
- * EMF Context Contributor interface. Implimenters are called to contribute to the context.
- * 
- * @see org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase#createEMFContext(IProject, IEMFContextContributor)
- * @since 1.0.0
- */
-public interface IEMFContextContributor {
-
-	/**
-	 * This is your opportunity to add a primary EMFNature. Typically you would add to the WorkbenchContext held by <code>aNature</code> in order to
-	 * change the container for the WorkbenchURIConverter or add adapter factories to the ResourceSet or anything else that is needed.
-	 * 
-	 * @param aNature
-	 * 
-	 * @since 1.0.0
-	 */
-	void primaryContributeToContext(EMFWorkbenchContextBase aNature);
-
-	/**
-	 * This is your opportunity to add a secondary EMFNature. Typically you would add to the WorkbenchContext held by <code>aNature</code> in order
-	 * to change the container for the WorkbenchURIConverter or add adapter factories to the ResourceSet or anything else that is needed.
-	 * 
-	 * @param aNature
-	 * 
-	 * @since 1.0.0
-	 */
-	void secondaryContributeToContext(EMFWorkbenchContextBase aNature);
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ISynchronizerExtender.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ISynchronizerExtender.java
deleted file mode 100644
index f70dd1e..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ISynchronizerExtender.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: ISynchronizerExtender.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-package org.eclipse.jem.util.emf.workbench;
-
-import org.eclipse.core.resources.IResourceDelta;
-
-/**
- * Implimenters allows clients, eg {@link org.eclipse.jem.util.emf.workbench.EMFNatureContributor}, to extend the behavior of the
- * ResourceSetWorkbenchSynchronizer.
- * 
- * @see org.eclipse.jem.util.emf.workbench.ResourceSetWorkbenchSynchronizer#addExtender(ISynchronizerExtender)
- * @since 1.0.0
- */
-public interface ISynchronizerExtender {
-
-	/**
-	 * Notification that project has changed.
-	 * 
-	 * @param delta
-	 * 
-	 * @since 1.0.0
-	 */
-	void projectChanged(IResourceDelta delta);
-
-	/**
-	 * Notification that project has been closed.
-	 * 
-	 * 
-	 * @since 1.0.0
-	 */
-	void projectClosed();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ProjectResourceSet.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ProjectResourceSet.java
deleted file mode 100644
index 2c97699..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ProjectResourceSet.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: ProjectResourceSet.java,v $$
- *  $$Revision: 1.5 $$  $$Date: 2007/08/30 02:37:05 $$ 
- */
-package org.eclipse.jem.util.emf.workbench;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-
-/**
- * A ResourceSet for an entire project. It allows sharing of resources from multiple editors/viewers for a project.
- * <p>
- * An additional Notification type is sent out by ProjectResourceSet's of project resource set about to be released. A release is
- * called when projects are about to be closed. They release all of the resources and unload them. This notification can be used 
- * to know that this is about to happen and to do something before the resources become invalid. It will be sent out just before the
- * resource set will be released. 
- * 
- * @see ProjectResourceSet#SPECIAL_NOTIFICATION_TYPE
- * @see ProjectResourceSet#PROJECTRESOURCESET_ABOUT_TO_RELEASE_ID 
- * @since 1.0.0
- */
-
-public interface ProjectResourceSet extends ResourceSet {
-
-	IProject getProject();
-	
-	/**
-	 * Notification type in notifications from the ProjectResourceSet for
-	 * special notifications, and not the standard ones from ResourceSet.
-	 * 
-	 * @see org.eclipse.emf.common.notify.Notification#getEventType()
-	 * @since 1.1.0
-	 */
-	static int SPECIAL_NOTIFICATION_TYPE = Notification.EVENT_TYPE_COUNT+4;
-	
-	/**
-	 * Notification Feature ID for resource set about to be released.
-	 * Use {@link org.eclipse.emf.common.notify.Notification#getFeatureID(java.lang.Class)} to
-	 * get this id. The getFeature() on notification will return null.
-	 * 
-	 * @since 1.1.0
-	 */
-	static int PROJECTRESOURCESET_ABOUT_TO_RELEASE_ID = 1000;
-
-	/**
-	 * Call when the ResourceSet is no longer to be used.
-	 * 
-	 * 
-	 * @since 1.0.0
-	 */
-	void release();
-
-	/**
-	 * Add the <code>resourceHandler</code> to the end of the list of resourceHandlers.
-	 * 
-	 * @param resourceHandler
-	 *            IResourceHandler
-	 * @return boolean Return <code>true</code> if it was added.
-	 * @since 1.0.0
-	 */
-	boolean add(ResourceHandler resourceHandler);
-
-	/**
-	 * Add the <code>resourceHandler</code> to the front of the list of resourceHandlers.
-	 * 
-	 * @param resourceHandler
-	 *            IResourceHandler
-	 * @since 1.0.0
-	 */
-	void addFirst(ResourceHandler resourceHandler);
-
-	/**
-	 * Remove the <code>resourceHandler</code> from the list of resourceHandlers.
-	 * 
-	 * @param resourceHandler
-	 *            IResourceHandler
-	 * @return boolean Return true if it was removed.
-	 * @since 1.0.0
-	 */
-	boolean remove(ResourceHandler resourceHandler);
-
-	/**
-	 * Return the ResourceSet synchronizer that will synchronize the ResourceSet with changes from the Workbench.
-	 * 
-	 * @return ResourceSetWorkbenchSynchronizer
-	 * @since 1.0.0
-	 */
-	ResourceSetWorkbenchSynchronizer getSynchronizer();
-
-	/**
-	 * Set the ResourceSet synchronizer that will synchronize the ResourceSet with changes from the Workbench.
-	 * 
-	 * @param aSynchronizer
-	 * @return ResourceSetWorkbenchSynchronizer
-	 * @since 1.0.0
-	 */
-	void setSynchronizer(ResourceSetWorkbenchSynchronizer aSynchronizer);
-
-	/**
-	 * This should be called by clients whenever the structure of the project changes such that any cached URIs will be invalid. For example, if the
-	 * source folders within the URIConverter change.
-	 * 
-	 * @since 1.0.0
-	 */
-	void resetNormalizedURICache();
-
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ProjectUtilities.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ProjectUtilities.java
deleted file mode 100644
index eae2e81..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ProjectUtilities.java
+++ /dev/null
@@ -1,775 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: ProjectUtilities.java,v $$
- *  $$Revision: 1.6 $$  $$Date: 2008/03/05 19:43:18 $$ 
- */
-
-package org.eclipse.jem.util.emf.workbench;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.logging.Level;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.*;
-
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
-
-/**
- * EMF Workbench Project Utilities.
- * 
- * @since 1.0.0
- */
-
-public class ProjectUtilities {
-
-	/**
-	 * Project control file name in project.
-	 * 
-	 * @since 1.0.0
-	 */
-	public final static String DOT_PROJECT = ".project"; //$NON-NLS-1$
-
-	/**
-	 * Classpath control file name in project.
-	 * 
-	 * @since 1.0.0
-	 */
-	public final static String DOT_CLASSPATH = ".classpath"; //$NON-NLS-1$
-
-	public ProjectUtilities() {
-	}
-
-	/**
-	 * Add the nature id to the project ahead of all other nature ids.
-	 * 
-	 * @param proj
-	 * @param natureId
-	 * @throws CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void addNatureToProject(IProject proj, String natureId) throws CoreException {
-		IProjectDescription description = proj.getDescription();
-		String[] prevNatures = description.getNatureIds();
-		String[] newNatures = new String[prevNatures.length + 1];
-		System.arraycopy(prevNatures, 0, newNatures, 1, prevNatures.length);
-		newNatures[0] = natureId;
-		description.setNatureIds(newNatures);
-		proj.setDescription(description, null);
-	}
-
-	/**
-	 * Add the nature id after all of the other nature ids for the project.
-	 * 
-	 * @param proj
-	 * @param natureId
-	 * @throws CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void addNatureToProjectLast(IProject proj, String natureId) throws CoreException {
-		IProjectDescription description = proj.getDescription();
-		String[] prevNatures = description.getNatureIds();
-		String[] newNatures = new String[prevNatures.length + 1];
-		System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
-		newNatures[prevNatures.length] = natureId;
-		description.setNatureIds(newNatures);
-		proj.setDescription(description, null);
-	}
-
-	/**
-	 * Remove the nature id from the project.
-	 * 
-	 * @param project
-	 * @param natureId
-	 * @throws CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void removeNatureFromProject(IProject project, String natureId) throws CoreException {
-		IProjectDescription description = project.getDescription();
-		String[] prevNatures = description.getNatureIds();
-		int size = prevNatures.length;
-		int newsize = 0;
-		String[] newNatures = new String[size];
-		boolean matchfound = false;
-		for (int i = 0; i < size; i++) {
-			if (prevNatures[i].equals(natureId)) {
-				matchfound = true;
-				continue;
-			} else
-				newNatures[newsize++] = prevNatures[i];
-		}
-		if (!matchfound)
-			throw new CoreException(new Status(IStatus.ERROR, JEMUtilPlugin.ID, 0,
-					"The nature id " + natureId + " does not exist on the project " + project.getName(), null)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		else {
-			String[] temp = newNatures;
-			newNatures = new String[newsize];
-			System.arraycopy(temp, 0, newNatures, 0, newsize);
-			description.setNatureIds(newNatures);
-			project.setDescription(description, null);
-		}
-	}
-
-	/**
-	 * Add the list of projects to end of the "referenced projects" list from the project's description.
-	 * 
-	 * @param project
-	 * @param toBeAddedProjectsList
-	 * @throws CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void addReferenceProjects(IProject project, List toBeAddedProjectsList) throws CoreException {
-
-		IProjectDescription description = project.getDescription();
-		IProject[] projects = description.getReferencedProjects();
-
-		ArrayList projectsList = new ArrayList();
-
-		for (int i = 0; i < projects.length; i++) {
-			projectsList.add(projects[i]);
-		}
-
-		for (int i = 0; i < toBeAddedProjectsList.size(); i++) {
-			projectsList.add(toBeAddedProjectsList.get(i));
-		}
-
-		IProject[] refProjects = new IProject[projectsList.size()];
-
-		for (int i = 0; i < refProjects.length; i++) {
-			refProjects[i] = (IProject) (projectsList.get(i));
-		}
-
-		description.setReferencedProjects(refProjects);
-		project.setDescription(description, null);
-	}
-
-	/**
-	 * Add the single project to the end of the "referenced projects" list from the project's description.
-	 * 
-	 * @param project
-	 * @param projectToBeAdded
-	 * @throws CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void addReferenceProjects(IProject project, IProject projectToBeAdded) throws CoreException {
-		IProjectDescription description = project.getDescription();
-		IProject[] projects = description.getReferencedProjects();
-
-		ArrayList projectsList = new ArrayList();
-
-		for (int i = 0; i < projects.length; i++) {
-			projectsList.add(projects[i]);
-		}
-
-		projectsList.add(projectToBeAdded);
-
-		IProject[] refProjects = new IProject[projectsList.size()];
-
-		for (int i = 0; i < refProjects.length; i++) {
-			refProjects[i] = (IProject) (projectsList.get(i));
-		}
-
-		description.setReferencedProjects(refProjects);
-		project.setDescription(description, null);
-	}
-
-	/**
-	 * Force a an immediate build of the project.
-	 * 
-	 * @param project
-	 * @param progressMonitor
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void forceAutoBuild(IProject project, IProgressMonitor progressMonitor) {
-		try {
-			project.build(IncrementalProjectBuilder.FULL_BUILD, progressMonitor);
-		} catch (CoreException ce) {
-			//Revisit: Need to use a Logger
-			//Logger.getLogger().logError(ce);
-		}
-	}
-
-	/**
-	 * Return if auto build is turned on.
-	 * 
-	 * @return <code>true</code> if auto build is turned on.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean getCurrentAutoBuildSetting() {
-
-		IWorkspace workspace = ResourcesPlugin.getWorkspace();
-		IWorkspaceDescription wd = workspace.getDescription();
-		return wd.isAutoBuilding();
-	}
-
-	/**
-	 * Get the project associated with the given object.
-	 * 
-	 * @param object
-	 *            may be an <code>IProject, IResource, IAdaptable (to an IProject), EObject (gets IProject if object is in a ProjectResourceSet</code>.
-	 * @param natureId
-	 *            if <code>null</code> then returns project. If not <code>null</code> then returns project only if project has this nature id.
-	 * @return project associated with the object or <code>null</code> if not found.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IProject getProject(Object object, String natureId) {
-		IProject result = getProject(object);
-		if (natureId == null)
-			return result;
-		if (result != null && result.isAccessible() && natureId != null)
-			try {
-				if (result.hasNature(natureId))
-					return result;
-			} catch (CoreException e) {
-				Logger.getLogger().logError(e);
-			}
-		return null;
-	}
-
-	/**
-	 * Get the project associated with the given object.
-	 * 
-	 * @param object
-	 *            may be an <code>IProject, IResource, IAdaptable (to an IProject), EObject (gets IProject if object is in a ProjectResourceSet</code>.
-	 * @return project associated with the object or <code>null</code> if not found.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IProject getProject(Object object) {
-		IProject result = null;
-
-		if (object instanceof IProject)
-			result = (IProject) object;
-		else if (object instanceof IResource)
-			result = ((IResource) object).getProject();
-		else if (object instanceof IAdaptable)
-			result = (IProject) ((IAdaptable) object).getAdapter(IProject.class);
-		else if (object instanceof EObject)
-			result = getProject((EObject) object);
-
-		return result;
-	}
-
-	/**
-	 * Get the project associated with the given EObject. (If in a ProjectResourceSet, then the project from that resource set).
-	 * 
-	 * @param aRefObject
-	 * @return project if associated or <code>null</code> if not found.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IProject getProject(EObject aRefObject) {
-		if (aRefObject != null) {
-			Resource resource = aRefObject.eResource();
-			if (resource != null)
-				return getProject(resource);
-		}
-		return null;
-	}
-	
-	public static IFile getPlatformFile(URI uri) {
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(uri)) {
-			String fileString = URI.decode(uri.path());
-			fileString = fileString.substring(JEMUtilPlugin.PLATFORM_RESOURCE.length() + 1);
-			return WorkbenchResourceHelperBase.getWorkspace().getRoot().getFile(new Path(fileString));
-		}
-		return null;
-	}
-
-	/**
-	 * Get the project associated with the given Resource. (If in a ProjectResourceSet, then the project from that resource set).
-	 * 
-	 * @param resource
-	 * @return project if associated or <code>null</code> if not found.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IProject getProject(Resource resource) {
-		ResourceSet set = resource == null ? null : resource.getResourceSet();
-		if (set == null) {
-			URI uri = resource.getURI();
-			if (uri == null) return null;
-			IFile file = getPlatformFile(resource.getURI());
-			if (file == null) 
-				return null;
-			return file.getProject();
-		}
-			
-		if (set instanceof ProjectResourceSet)
-			return ((ProjectResourceSet) set).getProject();
-		URIConverter converter = set == null ? null : set.getURIConverter();
-		if (converter != null && converter instanceof WorkbenchURIConverter && ((WorkbenchURIConverter) converter).getOutputContainer() != null)
-			return ((WorkbenchURIConverter) converter).getOutputContainer().getProject();
-		else
-			return null;
-	}
-
-	/**
-	 * Remove the list of projects from the list of "referenced projects" in the project's description.
-	 * 
-	 * @param project
-	 * @param toBeRemovedProjectList
-	 * @throws org.eclipse.core.runtime.CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void removeReferenceProjects(IProject project, List toBeRemovedProjectList) throws org.eclipse.core.runtime.CoreException {
-		IProjectDescription description = project.getDescription();
-		IProject[] projects = description.getReferencedProjects();
-
-		ArrayList projectsList = new ArrayList();
-
-		for (int i = 0; i < projects.length; i++) {
-			projectsList.add(projects[i]);
-		}
-
-		for (int i = 0; i < toBeRemovedProjectList.size(); i++) {
-			projectsList.remove(toBeRemovedProjectList.get(i));
-		}
-
-		IProject[] refProjects = new IProject[projectsList.size()];
-
-		for (int i = 0; i < refProjects.length; i++) {
-			refProjects[i] = (IProject) (projectsList.get(i));
-		}
-
-		description.setReferencedProjects(refProjects);
-		project.setDescription(description, null);
-	}
-
-	/**
-	 * Remove the project from the list of "referenced projects" in the description for the given project.
-	 * 
-	 * @param project
-	 * @param toBeRemovedProject
-	 * @throws org.eclipse.core.runtime.CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void removeReferenceProjects(IProject project, IProject toBeRemovedProject) throws org.eclipse.core.runtime.CoreException {
-		IProjectDescription description = project.getDescription();
-		IProject[] projects = description.getReferencedProjects();
-
-		ArrayList projectsList = new ArrayList();
-
-		for (int i = 0; i < projects.length; i++) {
-			projectsList.add((projects[i]));
-		}
-
-		projectsList.remove(toBeRemovedProject);
-
-		IProject[] refProjects = new IProject[projectsList.size()];
-
-		for (int i = 0; i < refProjects.length; i++) {
-			refProjects[i] = (IProject) (projectsList.get(i));
-		}
-
-		description.setReferencedProjects(refProjects);
-		project.setDescription(description, null);
-	}
-
-	/**
-	 * Turn auto-building off.
-	 * 
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void turnAutoBuildOff() {
-		try {
-			IWorkspace workspace = ResourcesPlugin.getWorkspace();
-			IWorkspaceDescription wd = workspace.getDescription();
-			wd.setAutoBuilding(false);
-			workspace.setDescription(wd);
-		} catch (CoreException ce) {
-			//Logger.getLogger().logError(ce);
-		}
-	}
-
-	/**
-	 * Turn auto-building on.
-	 * 
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void turnAutoBuildOn() {
-		try {
-			IWorkspace workspace = ResourcesPlugin.getWorkspace();
-			IWorkspaceDescription wd = workspace.getDescription();
-			wd.setAutoBuilding(true);
-			workspace.setDescription(wd);
-		} catch (CoreException ce) {
-			//Logger.getLogger().logError(ce);
-		}
-	}
-
-	/**
-	 * Set the auto-building state.
-	 * 
-	 * @param aBoolean
-	 *            <code>true</code> to turn auto-building on.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void turnAutoBuildOn(boolean aBoolean) {
-		try {
-			IWorkspace workspace = ResourcesPlugin.getWorkspace();
-			IWorkspaceDescription wd = workspace.getDescription();
-			wd.setAutoBuilding(aBoolean);
-			workspace.setDescription(wd);
-		} catch (CoreException ce) {
-			//Logger.getLogger().logError(ce);
-
-		}
-	}
-
-	/**
-	 * Adds a builder to the build spec for the given project.
-	 * 
-	 * @param builderID
-	 *            The id of the builder.
-	 * @param project
-	 *            Project to add to.
-	 * @return whether the builder id was actually added (it may have already existed)
-	 * @throws CoreException
-	 * @since 1.0.0
-	 */
-	public static boolean addToBuildSpec(String builderID, IProject project) throws CoreException {
-		return addToBuildSpecBefore(builderID, null, project);
-	}
-
-	/**
-	 * Adds a builder to the build spec for the given project, immediately before the specified successor builder.
-	 * 
-	 * @param builderID
-	 *            The id of the builder.
-	 * @param successorID
-	 *            The id to put the builder before.
-	 * @return whether the builder id was actually added (it may have already existed)
-	 * @throws CoreException
-	 * @since 1.0.0
-	 */
-	public static boolean addToBuildSpecBefore(String builderID, String successorID, IProject project) throws CoreException {
-		IProjectDescription description = project.getDescription();
-		ICommand[] commands = description.getBuildSpec();
-		boolean found = false;
-		for (int i = 0; i < commands.length; ++i) {
-			if (commands[i].getBuilderName().equals(builderID)) {
-				found = true;
-				break;
-			}
-		}
-		if (!found) {
-			boolean successorFound = false;
-			ICommand command = description.newCommand();
-			command.setBuilderName(builderID);
-			ICommand[] newCommands = new ICommand[commands.length + 1];
-			for (int j = 0, index = 0; j < commands.length; j++, index++) {
-				if (successorID != null && commands[j].getBuilderName().equals(successorID)) {
-					successorFound = true;
-					newCommands[index++] = command;
-				}
-				newCommands[index] = commands[j];
-			}
-			if (!successorFound)
-				newCommands[newCommands.length - 1] = command;
-			description.setBuildSpec(newCommands);
-			project.setDescription(description, null);
-		}
-		return !found;
-	}
-
-	/**
-	 * Remove the builder from the build spec.
-	 * 
-	 * @param builderID
-	 *            The id of the builder.
-	 * @param project
-	 *            Project to remove from.
-	 * @return boolean if the builder id was found and removed
-	 * @throws CoreException
-	 * @since 1.0.0
-	 */
-	public static boolean removeFromBuildSpec(String builderID, IProject project) throws CoreException {
-		IProjectDescription description = project.getDescription();
-		ICommand[] commands = description.getBuildSpec();
-		boolean found = false;
-		for (int i = 0; i < commands.length; ++i) {
-			if (commands[i].getBuilderName().equals(builderID)) {
-				found = true;
-				break;
-			}
-		}
-		if (found) {
-			ICommand[] newCommands = new ICommand[commands.length - 1];
-			int newCount = 0;
-			for (int i = 0; i < commands.length; ++i) {
-				if (!(commands[i].getBuilderName().equals(builderID))) {
-					//Add the existng to the new array
-					newCommands[newCount] = commands[i];
-					newCount++;
-				}
-			}
-
-			description.setBuildSpec(newCommands);
-			project.setDescription(description, null);
-
-		}
-		return found;
-
-	}
-
-	/**
-	 * Ensure the container is not read-only.
-	 * <p>
-	 * For Linux, a Resource cannot be created in a ReadOnly folder. This is only necessary for new files.
-	 * 
-	 * @param resource
-	 *            workspace resource to make read/write
-	 * @since 1.0.0
-	 */
-	public static void ensureContainerNotReadOnly(IResource resource) {
-		if (resource != null && !resource.exists()) { //it must be new
-			IContainer container = resource.getParent();
-			ResourceAttributes attr = container.getResourceAttributes();
-			while (attr != null && !attr.isReadOnly()) {
-				container = container.getParent();
-				if (container == null)
-					break;
-				attr = container.getResourceAttributes();
-			}
-			if (container != null && attr != null)
-				attr.setReadOnly(false);
-		}
-	}
-
-	/**
-	 * Get projects from primary nature.
-	 * 
-	 * @param natureID
-	 * @return All projects that have the given nature id as the first nature id.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IProject[] getProjectsForPrimaryNature(String natureID) {
-		IProject[] projectsWithNature = new IProject[] {};
-		List result = new ArrayList();
-		IProject[] projects = getAllProjects();
-		for (int i = 0; i < projects.length; i++) {
-			if (isProjectPrimaryNature(projects[i], natureID))
-				result.add(projects[i]);
-		}
-		return (IProject[]) result.toArray(projectsWithNature);
-	}
-
-	/**
-	 * Get all projects in the workspace
-	 * 
-	 * @return all workspace projects
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IProject[] getAllProjects() {
-		return ResourcesPlugin.getWorkspace().getRoot().getProjects();
-	}
-
-	/**
-	 * Is this nature id the primary nature id for the project
-	 * 
-	 * @param project
-	 * @param natureID
-	 * @return <code>true</code> if first nature id for the project.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean isProjectPrimaryNature(IProject project, String natureID) {
-		String[] natures = null;
-		try {
-			natures = project.getDescription().getNatureIds();
-		} catch (Exception e1) {
-		}
-		return (natures != null && natures.length > 0 && natures[0].equals(natureID));
-	}
-
-	protected static IPath createPath(IProject p, String defaultSourceName) {
-		IPath path = new Path(p.getName());
-		path = path.append(defaultSourceName);
-		path = path.makeAbsolute();
-		return path;
-	}
-
-	/**
-	 * Returns a list of existing files which will be modified if the classpath changes for the given proeject.
-	 * 
-	 * @param p
-	 *            project
-	 * @return list of affected files.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static List getFilesAffectedByClasspathChange(IProject p) {
-		List result = new ArrayList(2);
-		addFileIfExists(p, result, DOT_CLASSPATH);
-		addFileIfExists(p, result, DOT_PROJECT);
-		return result;
-	}
-
-	protected static void addFileIfExists(IProject p, List aList, String filename) {
-		IFile aFile = p.getFile(filename);
-		if (aFile != null && aFile.exists())
-			aList.add(aFile);
-	}
-
-	/**
-	 * Strip off a leading "/" from each project name in the array, if it has one.
-	 * 
-	 * @param projecNames
-	 * @return array of project names with all leading '/' removed.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static String[] getProjectNamesWithoutForwardSlash(String[] projecNames) {
-		String[] projNames = new String[projecNames.length];
-		List temp = java.util.Arrays.asList(projecNames);
-		for (int i = 0; i < temp.size(); i++) {
-			String name = (String) (temp.get(i));
-			if (name.startsWith("/")) { //$NON-NLS-1$
-				projNames[i] = name.substring(1, name.length());
-			} else {
-				projNames[i] = name;
-			}
-		}
-		return projNames;
-	}
-
-	protected static URL createFileURL(IPath path) {
-		try {
-			return path.toFile().toURL();
-		} catch (MalformedURLException e) {
-			Logger.getLogger().log(e, Level.WARNING);
-			return null;
-		}
-	}
-
-	/**
-	 * Find first newObject that is not in the oldObjects array (using "==").
-	 * 
-	 * @param oldObjects
-	 * @param newObjects
-	 * @return first newObject not found in oldObjects, or <code>null</code> if all found.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static Object getNewObject(Object[] oldObjects, Object[] newObjects) {
-		if (oldObjects != null && newObjects != null && oldObjects.length < newObjects.length) {
-			for (int i = 0; i < newObjects.length; i++) {
-				boolean found = false;
-				Object object = newObjects[i];
-				for (int j = 0; j < oldObjects.length; j++) {
-					if (oldObjects[j] == object) {
-						found = true;
-						break;
-					}
-				}
-				if (!found)
-					return object;
-			}
-		}
-		if (oldObjects == null && newObjects != null && newObjects.length == 1)
-			return newObjects[0];
-		return null;
-	}
-
-	/**
-	 * List of all files in the project.
-	 * <p>
-	 * Note: A more efficient way to do this is to use {@link IResource#accept(org.eclipse.core.resources.IResourceProxyVisitor, int)}
-	 * 
-	 * @param 1.0.0
-	 * @return list of files in the project
-	 * 
-	 * @see IResource#accept(org.eclipse.core.resources.IResourceProxyVisitor, int)
-	 * @since 1.0.0
-	 */
-	public static List getAllProjectFiles(IProject project) {
-		List result = new ArrayList();
-		if (project == null)
-			return result;
-		try {
-			result = collectFiles(project.members(), result);
-		} catch (CoreException e) {
-		}
-		return result;
-	}
-
-	private static List collectFiles(IResource[] members, List result) throws CoreException {
-		// recursively collect files for the given members
-		for (int i = 0; i < members.length; i++) {
-			IResource res = members[i];
-			if (res instanceof IFolder) {
-				collectFiles(((IFolder) res).members(), result);
-			} else if (res instanceof IFile) {
-				result.add(res);
-			}
-		}
-		return result;
-	}
-
-	/**
-	 * Get the project.
-	 * 
-	 * @param projectName
-	 * @return a IProject given the projectName
-	 * @since 1.0.0
-	 */
-	public static IProject getProject(String projectName) {
-		return ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
-	}
-
-	/**
-	 * Return whether the given builder name is attached to the project.
-	 * 
-	 * @param project
-	 * @param builderName
-	 * @return <code>true</code> if builder name is attached to the project.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean hasBuilder(IProject project, String builderName) {
-		try {
-			ICommand[] builders = project.getDescription().getBuildSpec();
-			for (int i = 0; i < builders.length; i++) {
-				ICommand builder = builders[i];
-				if (builder != null) {
-					if (builder.getBuilderName().equals(builderName))
-						return true;
-				}
-			}
-		} catch (Exception e) {
-		}
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ResourceHandler.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ResourceHandler.java
deleted file mode 100644
index 0170780..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ResourceHandler.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: ResourceHandler.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-package org.eclipse.jem.util.emf.workbench;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-
-/**
- * Implementers of this interface are provide extension capabilities on resource set. Such as looking or creating in other resource sets for a
- * resource or an EObject.
- * 
- * @see org.eclipse.jem.util.emf.workbench.ProjectResourceSet#add(ResourceHandler)
- * @since 1.0.0
- */
-public interface ResourceHandler {
-
-	/**
-	 * Each ResourceHandler for a WorkbenchContext (which holds a ProjectResourceSet) will get an oportunity to get the Resource given the uriString
-	 * prior to the originatingResourceSet getting it in the normal manner.
-	 * 
-	 * If this handler loaded a Resource in its create(ResourceSet, uriString) then this method should be able to return it as well.
-	 * 
-	 * @param originatingResourceSet
-	 * @param uri
-	 * @return resource if found or <code>nulll/code> if this handler didn't find it.
-	 * 
-	 * @since 1.0.0
-	 */
-	Resource getResource(ResourceSet originatingResourceSet, URI uri);
-
-	/**
-	 * Get the EObject for the given URI, if it can. Load the resource if loadOnDemand is <code>true</code>.
-	 * 
-	 * @param originatingResourceSet
-	 * @param uri
-	 *            uri of EObject being requested
-	 * @param loadOnDemand
-	 *            <code>true</code> if resource should be loaded
-	 * @return eobject if found or <code>null</code> if not.
-	 */
-	EObject getEObjectFailed(ResourceSet originatingResourceSet, URI uri, boolean loadOnDemand);
-
-	/**
-	 * Create the resource pointed to be the URI if this handler will handle it.
-	 * 
-	 * @param originatingResourceSet
-	 * @param uri
-	 * @return resource if created, or <code>null</code> if handler doesn't handle this type.
-	 */
-	Resource createResource(ResourceSet originatingResourceSet, URI uri);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ResourceSetWorkbenchSynchronizer.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ResourceSetWorkbenchSynchronizer.java
deleted file mode 100644
index 1cec597..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/ResourceSetWorkbenchSynchronizer.java
+++ /dev/null
@@ -1,192 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: ResourceSetWorkbenchSynchronizer.java,v $$
- *  $$Revision: 1.4 $$  $$Date: 2006/05/17 20:13:45 $$ 
- */
-
-package org.eclipse.jem.util.emf.workbench;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-
-import org.eclipse.jem.internal.util.emf.workbench.EMFWorkbenchContextFactory;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
-
-/**
- * Synchronizer on the workbench. It listens for the project to see if it is closed or deleted. If it does it notifies this out.
- * 
- * @since 1.0.0
- */
-public class ResourceSetWorkbenchSynchronizer implements IResourceChangeListener {
-
-	protected IProject project;
-
-	protected ResourceSet resourceSet;
-
-	/** Extenders that will be notified after a pre build resource change */
-	protected List extenders;
-
-	/** The delta for this project that will be broadcast to the extenders */
-	protected IResourceDelta currentProjectDelta;
-
-	private int currentEventType = -1;
-
-	/**
-	 * Constructor taking a resource set and project.
-	 * 
-	 * @param aResourceSet
-	 * @param aProject
-	 * 
-	 * @since 1.0.0
-	 */
-	public ResourceSetWorkbenchSynchronizer(ResourceSet aResourceSet, IProject aProject) {
-		resourceSet = aResourceSet;
-		project = aProject;
-		if (aResourceSet != null && aResourceSet instanceof ProjectResourceSet)
-			((ProjectResourceSet) aResourceSet).setSynchronizer(this);
-		initialize();
-	}
-
-	/**
-	 * Get the project for this synchronizer
-	 * 
-	 * @return project
-	 * 
-	 * @since 1.0.0
-	 */
-	public IProject getProject() {
-		return project;
-	}
-
-	/*
-	 * @see IResourceChangeListener#resourceChanged(IResourceChangeEvent)
-	 */
-	public void resourceChanged(IResourceChangeEvent event) {
-		currentEventType = event.getType();
-		currentProjectDelta = null;
-		if ((currentEventType == IResourceChangeEvent.PRE_CLOSE || currentEventType == IResourceChangeEvent.PRE_DELETE)
-				&& event.getResource().equals(getProject())) {
-			notifyExtendersOfClose();
-			release();
-		}
-	}
-
-
-	protected void notifyExtendersIfNecessary() {
-		if (currentEventType != IResourceChangeEvent.POST_CHANGE || extenders == null || currentProjectDelta == null)
-			return;
-		for (int i = 0; i < extenders.size(); i++) {
-			ISynchronizerExtender extender = (ISynchronizerExtender) extenders.get(i);
-			extender.projectChanged(currentProjectDelta);
-		}
-	}
-
-	protected void notifyExtendersOfClose() {
-		if (extenders != null && !extenders.isEmpty()) {
-			for (int i = 0; i < extenders.size(); i++) {
-				ISynchronizerExtender extender = (ISynchronizerExtender) extenders.get(i);
-				extender.projectClosed();
-			}
-		}
-	}
-
-	protected IWorkspace getWorkspace() {
-		if (getProject() == null)
-			return ResourcesPlugin.getWorkspace();
-		return getProject().getWorkspace();
-	}
-
-	protected void initialize() {
-		getWorkspace().addResourceChangeListener(this,
-				IResourceChangeEvent.PRE_CLOSE | IResourceChangeEvent.PRE_DELETE | IResourceChangeEvent.POST_CHANGE | IResourceChangeEvent.PRE_BUILD);
-	}
-
-	/**
-	 * Dispose of the synchronizer. Called when no longer needed.
-	 * 
-	 * 
-	 * @since 1.0.0
-	 */
-	public void dispose() {
-		getWorkspace().removeResourceChangeListener(this);
-	}
-
-	/**
-	 * The project is going away so we need to cleanup ourself and the ResourceSet.
-	 */
-	protected void release() {
-		if (JEMUtilPlugin.isActivated()) {
-			try {
-				if (resourceSet instanceof ProjectResourceSet)
-					((ProjectResourceSet) resourceSet).release();
-			} finally {
-				EMFWorkbenchContextFactory.INSTANCE.removeCachedProject(getProject());
-				dispose();
-			}
-		}
-	}
-
-	/**
-	 * Add an extender to be notified of events.
-	 * 
-	 * @param extender
-	 * 
-	 * @since 1.0.0
-	 */
-	public void addExtender(ISynchronizerExtender extender) {
-		if (extenders == null)
-			extenders = new ArrayList(3);
-		extenders.add(extender);
-	}
-
-	/**
-	 * Remove extender from notification of events.
-	 * 
-	 * @param extender
-	 * 
-	 * @since 1.0.0
-	 */
-	public void removeExtender(ISynchronizerExtender extender) {
-		if (extenders == null)
-			return;
-		extenders.remove(extender);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString() {
-		return getClass().getName() + '(' + ((getProject() != null) ? getProject().getName() : "null") + ')'; //$NON-NLS-1$
-	}
-
-	/**
-	 * Tell Synchronizer that a file is about to be saved. This method should be called prior to writing to an IFile from an EMF resource.
-	 * <p>
-	 * Default does nothing, but subclasses can do something.
-	 * </p>
-	 * 
-	 * @param aFile
-	 *            file about to be saved.
-	 * 
-	 * @since 1.0.0
-	 */
-	public void preSave(IFile aFile) {
-		//Default is do nothing
-	}
-
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchByteArrayOutputStream.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchByteArrayOutputStream.java
deleted file mode 100644
index 9d72f51..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchByteArrayOutputStream.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: WorkbenchByteArrayOutputStream.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-package org.eclipse.jem.util.emf.workbench;
-
-import java.io.IOException;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.emf.ecore.resource.impl.URIConverterImpl;
-
-/**
- * ByteArray OutputStream for the Workbench. It works with the synchronizer {@link org.eclipse.jem.util.emf.workbench.ResourceSetWorkbenchSynchronizer}to
- * notify of a save. It also changes all of the line separators to the current system line separator, i.e. if there are some '\r' and we are on
- * Windows(R) then they will be converted to '\n\r'), if the setting for the stream is to do eol conversion.
- * 
- * @since 1.0.0
- */
-public class WorkbenchByteArrayOutputStream extends URIConverterImpl.PlatformResourceOutputStream {
-
-	private boolean fConvertEOL = false;
-
-	protected ResourceSetWorkbenchSynchronizer synchronizer;
-
-	/**
-	 * Construct with an IFile
-	 * 
-	 * @param aFile
-	 * 
-	 * @since 1.0.0
-	 */
-	public WorkbenchByteArrayOutputStream(IFile aFile) {
-		this(aFile, null);
-	}
-
-	/**
-	 * Construct with a IFile and a synchronizer. This way synchronizer will know when file is about to be saved.
-	 * 
-	 * @param aFile
-	 * @param aSynchronizer
-	 * 
-	 * @since 1.0.0
-	 */
-	public WorkbenchByteArrayOutputStream(IFile aFile, ResourceSetWorkbenchSynchronizer aSynchronizer) {
-		super(aFile, false, true, null);
-		synchronizer = aSynchronizer;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.io.OutputStream#close()
-	 */
-	public void close() throws IOException {
-		if (synchronizer != null)
-			synchronizer.preSave(file);
-		super.close();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.resource.impl.URIConverterImpl.PlatformResourceOutputStream#flush()
-	 */
-	public void flush() throws IOException {
-		if (synchronizer != null)
-			synchronizer.preSave(file);
-		super.flush();
-	}
-
-	/*
-	 * Convert the end of line characters.
-	 */
-	private int convertEOL(byte[] data) {
-		// Algorithm:
-		// Remove all '\r' chars
-		// Replace all '\n' chars with line seperator chars
-
-		String EOL = System.getProperties().getProperty("line.separator"); //$NON-NLS-1$
-		byte[] EOLBytes = EOL.getBytes();
-
-		int out = 0;
-
-		for (int in = 0; in < data.length; in++) {
-			if (data[in] == '\r') {
-				// don't output (ie, throw the char away)
-			} else if (data[in] == '\n') {
-				// The code does not currently handle expanding the array
-				if ((in - out + 1) < EOLBytes.length)
-					throw new UnsupportedOperationException("WorkbenchByteArrayOutputStream: Expanding EOL chars not implemented"); //$NON-NLS-1$
-
-				for (int i = 0; i < EOLBytes.length; i++) {
-					data[out++] = EOLBytes[i];
-				}
-			} else {
-				// Just copy the data
-				data[out++] = data[in];
-			}
-		}
-
-		return out;
-	}
-
-	/**
-	 * Is EOL conversion turned on.
-	 * 
-	 * @return <code>true</code> if EOL conversion is turned on.
-	 * 
-	 * @since 1.0.0
-	 */
-	public boolean isConvertEOLChars() {
-		return fConvertEOL;
-	}
-
-	/**
-	 * Set the EOL conversion flag.
-	 * 
-	 * @param set
-	 *            <code>true</code> if EOL should be converted to current line separator.
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setConvertEOLChars(boolean set) {
-		fConvertEOL = set;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.io.ByteArrayOutputStream#toByteArray()
-	 */
-	public synchronized byte[] toByteArray() {
-		byte[] contents = super.toByteArray();
-		if (isConvertEOLChars())
-			convertEOL(contents);
-		return contents;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchResourceHelperBase.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchResourceHelperBase.java
deleted file mode 100644
index f526237..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchResourceHelperBase.java
+++ /dev/null
@@ -1,695 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: WorkbenchResourceHelperBase.java,v $$
- *  $$Revision: 1.6 $$  $$Date: 2008/03/12 14:21:39 $$ 
- */
-package org.eclipse.jem.util.emf.workbench;
-
-import java.util.*;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.common.util.WrappedException;
-import org.eclipse.emf.ecore.*;
-import org.eclipse.emf.ecore.resource.*;
-import org.eclipse.emf.ecore.util.InternalEList;
-
-import org.eclipse.jem.internal.util.emf.workbench.EMFWorkbenchContextFactory;
-import org.eclipse.jem.internal.util.emf.workbench.WorkspaceResourceHandler;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
-
-/**
- * Workbench resource helper
- * 
- * @since 1.0.0
- */
-public class WorkbenchResourceHelperBase {
-
-	/**
-	 * Everything is static, don't know why there is an instance here.
-	 */
-	public static final WorkbenchResourceHelperBase INSTANCE = new WorkbenchResourceHelperBase();
-
-	protected static WorkspaceResourceHandler workspaceURILoader = new WorkspaceResourceHandler();
-
-	protected static void resolveContainedProxies(EObject refObject) {
-		List contained = refObject.eContents();
-		EObject mofObject;
-		for (int i = 0; i < contained.size(); i++) {
-			mofObject = (EObject) contained.get(i);
-			resolveProxies(mofObject);
-		}
-	}
-
-	protected static void resolveNonContainedProxies(EObject refObject) {
-		List references = refObject.eClass().getEAllReferences();
-		EReference reference;
-		for (int i = 0; i < references.size(); i++) {
-			reference = (EReference) references.get(i);
-			if (!reference.isContainment()) {
-				if (reference.isMany()) {
-					List value = (List) refObject.eGet(reference);
-					for (int j = 0; j < value.size(); j++)
-						value.get(j);
-				} else {
-					refObject.eGet(reference);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Force all of the proxies with <code>resource</code> to be resolved.
-	 * 
-	 * @param resource
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void resolveProxies(Resource resource) {
-		if (resource != null) {
-			List topLevels = resource.getContents();
-			EObject mofObject;
-			for (int i = 0; i < topLevels.size(); i++) {
-				mofObject = (EObject) topLevels.get(i);
-				resolveProxies(mofObject);
-			}
-		}
-	}
-
-	/**
-	 * Return a List of proxies that are contained by the <code>resource</code>.
-	 * 
-	 * @param resource
-	 * @return list of proxies.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static List gatherProxies(Resource resource) {
-		if (resource == null)
-			return Collections.EMPTY_LIST;
-		List list = new ArrayList();
-		List topLevels = resource.getContents();
-		int size = topLevels.size();
-		EObject mofObject;
-		for (int i = 0; i < size; i++) {
-			mofObject = (EObject) topLevels.get(i);
-			gatherProxies((InternalEObject) mofObject, list);
-		}
-		return list;
-	}
-
-	protected static void gatherProxies(InternalEObject refObject, List proxies) {
-		if (refObject == null)
-			return;
-		List contains = refObject.eClass().getEAllContainments();
-		if (contains != null) {
-			int size = contains.size();
-			EStructuralFeature sf = null;
-			for (int i = 0; i < size; i++) {
-				sf = (EStructuralFeature) contains.get(i);
-				gatherProxies(refObject, sf, proxies);
-			}
-		}
-	}
-
-	protected static void gatherProxies(InternalEObject refObject, EStructuralFeature sf, List proxies) {
-		Object value = null;
-		InternalEObject proxy = null;
-		if (sf.isMany() || refObject.eIsSet(sf)) {
-			value = refObject.eGet(sf, false);
-			if (value != null) {
-				if (sf.isMany()) {
-					Iterator j = ((InternalEList) value).basicIterator();
-					while (j.hasNext()) {
-						proxy = (InternalEObject) j.next();
-						if (proxy.eIsProxy())
-							proxies.add(proxy);
-					}
-				} else if (((InternalEObject) value).eIsProxy())
-					proxies.add(value);
-			}
-		}
-	}
-
-	protected static void resolveProxies(EObject refObject) {
-		if (refObject != null) {
-			resolveNonContainedProxies(refObject);
-			resolveContainedProxies(refObject);
-		}
-	}
-
-	/**
-	 * Return an existing context base on <code>aProject</code>.
-	 * 
-	 * @param aProject
-	 * @return the context base for the project or <code>null</code> if none.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static EMFWorkbenchContextBase getEMFContext(IProject aProject) {
-		return EMFWorkbenchContextFactory.INSTANCE.getEMFContext(aProject);
-	}
-
-	/**
-	 * Create a resource from the URI. The URI must contain the project name, either as the first segment, or if in platform resource url protocol.
-	 * {@link #getResourceSet(URI)}
-	 * 
-	 * @param uri
-	 * @return a new resource for the uri or <code>null</code> if not a project uri
-	 * 
-	 * @since 1.0.0
-	 */
-	public static Resource createResource(URI uri) {
-		ResourceSet set = getResourceSet(uri);
-		if (set != null)
-			return set.createResource(uri);
-		return null;
-	}
-
-	/**
-	 * Check for a cached Resource for the given URI, if none is found, create a new Resource for with the URI against the proper ResourceSet.
-	 * 
-	 * @param uri The URI MUST be either a "<b>platform:/resource/</b>project-name/...." type URI or it
-	 * must be of type "project-name/...". This method will only return resources that are workbench project resources.
-	 * Any other type of URI will cause <code>null</code> to be returned.
-	 * @return resource or <code>null</code> if not a project uri.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static Resource getExistingOrCreateResource(URI uri) {
-		return getExistingOrCreateResource(uri, getResourceSet(uri));
-	}
-	
-	/**
-	 * Get the IFile for the URI. The URI must be a workbench project style URI. 
-	 * @param uri The URI MUST be either a "<b>platform:/resource/</b>project-name/...." type URI or it
-	 * must be of type "project-name/...". This method will only return resources that are workbench project resources.
-	 * Any other type of URI will cause <code>null</code> to be returned.
-	 * @return the IFile if the URI is a project form, <code>null</code> if not a project form, OR the project doesn't exist. The IFile returned doesn't necessarily exist. Use {@link IFile#exists()} to test that.
-	 * 
-	 * @since 1.2.0
-	 */
-	public static IFile getIFile(URI uri) {
-		IProject project = getProject(uri);
-		if (project != null) {
-			IPath path;
-			if (isPlatformResourceURI(uri)) {
-				// Need to get the path and remove the first two segments (/resource/project name/).
-				path = new Path(URI.decode(uri.path())).removeFirstSegments(2);
-			} else {
-				// Need to get the path and remove the first segment (/project name/).
-				path = new Path(URI.decode(uri.path())).removeFirstSegments(1);
-			}
-			return project.getFile(path);
-		} else
-			return null;
-	}
-
-	/**
-	 * Check for a cached Resource for the given URI, if none is found, create a new Resource for with the URI against the given ResourceSet.
-	 * 
-	 * @param uri 
-	 * @param set
-	 * @return resource or <code>null</code> if set was <code>null</code>.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static Resource getExistingOrCreateResource(URI uri, ResourceSet set) {
-		if (set != null) {
-			Resource res = set.getResource(uri, false);
-			if (res == null)
-				res = set.createResource(uri);
-			return res;
-		} else
-			return null;
-	}
-
-	/**
-	 * Return a new or existing context base on <code>aProject</code>. Allow the <code>contributor</code> to contribute to the new or existing
-	 * nature prior to returning.
-	 * 
-	 * @param aProject
-	 * @param contributor
-	 * @return the context base for the project.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static EMFWorkbenchContextBase createEMFContext(IProject aProject, IEMFContextContributor contributor) {
-		return EMFWorkbenchContextFactory.INSTANCE.createEMFContext(aProject, contributor);
-	}
-
-	/**
-	 * Does the passed URI have the form platform:/resource/... ?
-	 * 
-	 * @param uri
-	 * @return <code>true</code> if it is a platform resource protocol.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean isPlatformResourceURI(URI uri) {
-		return JEMUtilPlugin.PLATFORM_PROTOCOL.equals(uri.scheme()) && JEMUtilPlugin.PLATFORM_RESOURCE.equals(uri.segment(0));
-	}
-
-	/**
-	 * This api may be used to cache a Resource if it has a URI that is Workspace relative. Return true if it is cached.
-	 * 
-	 * @param aResource
-	 * @return <code>true</code> if it was successful to cache.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean cacheResource(Resource aResource) {
-		if (aResource != null) {
-			ResourceSet set = getResourceSet(aResource.getURI());
-			if (set != null)
-				return set.getResources().add(aResource);
-		}
-		return false;
-	}
-
-	/**
-	 * This api is used if you create a new MOF resource and you want to add it to the correct ResourceSet. In order to do that, we need the IProject
-	 * that you want aResource to be cached within as well as the IPath which is the full path of the location of the new Resource.
-	 * 
-	 * @param aProject
-	 * @param aResource
-	 * @param fullPath
-	 * @return <code>true</code> if resource was cached.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean cacheResource(IProject aProject, Resource aResource, IPath fullPath) {
-		if (aProject == null || aResource == null || !aProject.isAccessible())
-			return false;
-		ResourceSet set = getResourceSet(aProject);
-		if (set != null) {
-			URI converted = set.getURIConverter().normalize(aResource.getURI());
-			if (converted != aResource.getURI())
-				aResource.setURI(converted);
-			return set.getResources().add(aResource);
-		}
-		return false;
-	}
-
-	/**
-	 * Get the path of the project resource relative to the workspace or relative to the list of containers in this project.
-	 * 
-	 * @param aResource
-	 * @return path
-	 * 
-	 * @since 1.0.0
-	 */
-	public static String getActualProjectRelativeURI(IResource aResource) {
-		if (aResource == null || !aResource.isAccessible())
-			return null;
-		IProject project = aResource.getProject();
-		IPath path = getPathInProject(project, aResource.getFullPath());
-		return path.makeRelative().toString();
-	}
-
-	/**
-	 * Return an IPath that can be used to load a Resource using the <code>fullPath</code>. This will be a project relative path.
-	 * 
-	 * @param project
-	 * @param fullPath
-	 * @return path
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IPath getPathInProject(IProject project, IPath fullPath) {
-		List containers = getProjectURIConverterContainers(project);
-		if (!containers.isEmpty())
-			return getPathFromContainers(containers, fullPath);
-		return fullPath;
-	}
-
-	protected static List getProjectURIConverterContainers(IProject project) {
-		EMFWorkbenchContextBase nature = createEMFContext(project, null);
-		if (nature != null) {
-			WorkbenchURIConverter conv = (WorkbenchURIConverter) nature.getResourceSet().getURIConverter();
-			if (conv != null)
-				return conv.getInputContainers();
-		}
-		return Collections.EMPTY_LIST;
-	}
-
-	/**
-	 * If this path is contained within one of the listed containers, then return the path relative to the container.
-	 * 
-	 * @param containers
-	 * @param fullPath
-	 * @return path relative to a container, or unchanged path if not in a container.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IPath getPathFromContainers(List containers, IPath fullPath) {
-		IContainer container = null;
-		IPath result;
-		int size = containers.size();
-		int matching = -1;
-		IPath containerPath;
-		for (int i = 0; i < size; i++) {
-			container = (IContainer) containers.get(i);
-			containerPath = container.getFullPath();
-			matching = fullPath.matchingFirstSegments(containerPath);
-			if (matching > 0 && matching == containerPath.segmentCount()) {
-				result = fullPath.removeFirstSegments(matching);
-				result = result.makeRelative();
-				return result;
-			}
-		}
-		return fullPath;
-	}
-
-	/**
-	 * Return true if the <code>uri</code> has its container segments visible from the input containers for the <code>project</code>.
-	 * 
-	 * @param project
-	 * @param uri
-	 * @return <code>true</code> if the uri is visible from the input containers.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean hasContainerStructure(IProject project, URI uri) {
-		if (project != null && uri != null) {
-			IPath path = new Path(uri.toString());
-			List containers = getProjectURIConverterContainers(project);
-			int segmentCount = path.segmentCount();
-			IPath containerPath = segmentCount > 1 ? path.removeLastSegments(1) : null;
-			IContainer container = null;
-			for (int i = 0; i < containers.size(); i++) {
-				container = (IContainer) containers.get(i);
-				if (!container.isAccessible())
-					continue;
-				if (segmentCount == 1) {
-					if (container == project)
-						return true;
-				} else if (containerPath != null) {
-					IFolder folder = container.getFolder(containerPath);
-					if (folder != null && folder.isAccessible())
-						return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Get the resource for the uri. The URI MUST be either a "<b>platform:/resource/</b>project-name/...." type URI or it
-	 * must be of type "project-name/...". This method will only return resources that are workbench project resources.
-	 * Any other type of URI will cause <code>null</code> to be returned. It will be loaded if not already loaded. If it is not to
-	 * be loaded if not loaded use {@link #getResource(URI, boolean)} instead.
-	 * 
-	 * @param uri must be either a "<b>platform:/resource/</b>project-name/..." form or it must be "project-name/...". Any other form will be invalid.
-	 * @return resource if uri is for a valid workbench project resource or <code>null</code> if project not found or not a valid project resource.
-	 * 
-	 * @throws WrappedException if valid project format URI but file not found or some other error on load.
-	 * @since 1.0.0
-	 */
-	public static Resource getResource(URI uri) {
-		return getResource(uri, true);
-	}
-
-	/**
-	 * Return the Resource for the passed IFile without forcing a load.
-	 * 
-	 * @param aFile
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public static Resource getResource(IFile aFile) {
-		return getResource(aFile, false);
-	}
-
-	/**
-	 * Return the Resource for the passed IFile, forcing a load if <code>loadOnDemand</code> says so.
-	 * 
-	 * @param aFile
-	 * @param loadOnDemand
-	 *            <code>true</code> will force a load of resource if not loaded.
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public static Resource getResource(IFile aFile, boolean loadOnDemand) {
-		if (aFile != null)
-			return getResource(URI.createPlatformResourceURI(aFile.getFullPath().toString()), loadOnDemand);
-		return null;
-	}
-
-	/**
-	 * Return the Resource for the passed IFile without a load if not loaded.
-	 * 
-	 * @param aFile
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public static Resource load(IFile aFile) {
-		return getResource(aFile, true);
-	}
-
-	/**
-	 * Get the resource for the uri. The URI MUST be either a "<b>platform:/resource/</b>project-name/...." type URI or it
-	 * must be of type "project-name/...". This method will only return resources that are workbench project resources.
-	 * Any other type of URI will cause <code>null</code> to be returned.
-	 * 
-	 * @param uri must be either a "<b>platform:/resource/</b>project-name/..." form or it must be "project-name/...". Any other form will be invalid.
-	 * @param loadOnDemand <code>true</code> will cause resource to be loaded if not already loaded.
-	 * @return resource if uri is for a valid workbench project resource, or <code>null</code> if project not found, or not a valid project resource uri.
-	 * 
-	 * @throws WrappedException if valid project format URI but file not found or some other error on load if loadOnDemand is true.
-	 * @since 1.0.0
-	 */
-	public static Resource getResource(URI uri, boolean loadOnDemand) {
-		ResourceSet set = getResourceSet(uri);
-		if (set != null)
-			return set.getResource(uri, loadOnDemand);
-		return null;
-	}
-
-	/**
-	 * Return a ResourceSet for the passed URI. The URI should be in the format platform:/resource/{project name}/... or {project name}/... for this
-	 * api to work.
-	 * 
-	 * @param uri
-	 * @return the resource set or <code>null</code> if not of correct form or project doesn't have a resource set.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static ResourceSet getResourceSet(URI uri) {
-		IProject project = getProject(uri);
-		if (project != null && project.isAccessible())
-			return getResourceSet(project);
-		else
-			return null;
-	}
-	
-	/*
-	 * Get the project for the uri if the uri is a valid workbench project format uri. null otherwise.
-	 */
-	private static IProject getProject(URI uri) {
-		String projectName;
-		if (isPlatformResourceURI(uri))
-			projectName = uri.segment(1);
-		else if (uri.scheme() == null) {
-			projectName = new Path(uri.path()).segment(0); //assume project name is first in the URI
-		} else
-			return null;
-		IProject project = getWorkspace().getRoot().getProject(URI.decode(projectName));
-		if (project != null && project.isAccessible())
-			return project;
-		else
-			return null;
-	}
-
-	/**
-	 * Return the ResourceSet for the passed IProject.
-	 * 
-	 * @param project
-	 * @return resource set
-	 */
-	public static ResourceSet getResourceSet(IProject project) {
-		EMFWorkbenchContextBase nat = createEMFContext(project, null);
-		if (nat != null)
-			return nat.getResourceSet();
-		return null;
-	}
-
-	/**
-	 * Get the workspace. (just use {@link ResourcesPlugin#getWorkspace()}).
-	 * 
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-
-	/**
-	 * Get the project associated with the resource set.
-	 * 
-	 * @param set
-	 * @return project or <code>null</code> if resource set not associated with a project.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IProject getProject(ResourceSet set) {
-		if (set != null) {
-			if (set instanceof ProjectResourceSet) {
-				ProjectResourceSet pset = (ProjectResourceSet) set;
-				return pset.getProject();
-			}
-		}
-		return null;
-	}
-
-	protected static boolean isRegisteredURIMapping(String href) {
-		if (href != null) {
-			String file = href;
-			int index = href.indexOf('#');
-			if (index > -1)
-				file = href.substring(0, index);
-			return URIConverter.URI_MAP.get(file) != null;
-		}
-		return false;
-	}
-
-	/**
-	 * Remove all of the resources from the resource set and then unload them. Unload forces all of the objects to become proxies so next resolve will
-	 * reload the resource.
-	 * 
-	 * @param resources
-	 * @param aSet
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void removeAndUnloadAll(List resources, ResourceSet aSet) {
-		if (aSet == null || resources == null || resources.isEmpty())
-			return;
-		aSet.getResources().removeAll(resources);
-		Resource res;
-		for (int i = 0; i < resources.size(); i++) {
-			res = (Resource) resources.get(i);
-			res.unload();
-		}
-	}
-
-	/**
-	 * Turn object into a proxy.
-	 * 
-	 * @param anObject
-	 * @return <code>true</code> if object was able to become a proxy.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean becomeProxy(EObject anObject) {
-		if (anObject != null) {
-			Resource res = anObject.eResource();
-			if (res != null) {
-				URI uri = res.getURI();
-				((InternalEObject) anObject).eSetProxyURI(uri.appendFragment(res.getURIFragment(anObject)));
-				//anObject.eAdapters().clear();
-				return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Return true if the WrappedException is actually a Resource Not Found.
-	 * 
-	 * @param wrappedEx
-	 * @return <code>true</code> is exception wrappers a resource not found.
-	 * @since 1.0.0
-	 */
-	public static boolean isResourceNotFound(WrappedException wrappedEx) {
-		Exception excep = wrappedEx.exception();
-		while (excep instanceof WrappedException) {
-			excep = ((WrappedException) excep).exception();
-		}
-		return primIsResourceNotFound(excep);
-	}
-
-	private static boolean primIsResourceNotFound(Throwable excep) {
-		if (excep instanceof CoreException) {
-			IStatus status = ((CoreException) excep).getStatus();
-			return status.getCode() == IResourceStatus.RESOURCE_NOT_FOUND && ResourcesPlugin.PI_RESOURCES.equals(status.getPlugin());
-		}
-		return false;
-	}
-
-	/**
-	 * Return true if the WrappedException is actually a Resource Not Found.
-	 * 
-	 * @param wrappedEx
-	 * @return <code>true</code> is exception wrappers a resource not found.
-	 * @since 1.0.0
-	 */
-	public static boolean isResourceNotFound(Resource.IOWrappedException wrappedEx) {
-		return primIsResourceNotFound(wrappedEx.getCause());
-	}
-
-	/**
-	 * Return a URI represenation of the platformURI without the leading "platform:/resource/" if present.
-	 * 
-	 * @param platformURI
-	 * @return uri
-	 * @since 1.0.0
-	 */
-	public static URI getNonPlatformURI(URI platformURI) {
-		if (isPlatformResourceURI(platformURI)) {
-			String uriString = primGetNonPlatformURIString(platformURI);
-			return URI.createURI(uriString);
-		}
-		return platformURI;
-	}
-
-	/**
-	 * Return a String represenation of the platformURI without the leading "platform:/resource/" if present.
-	 * 
-	 * @param platformURI
-	 * @return
-	 * @since 1.0.0
-	 */
-	public static String getNonPlatformURIString(URI platformURI) {
-		if (isPlatformResourceURI(platformURI)) { return primGetNonPlatformURIString(platformURI); }
-		return platformURI.toString();
-	}
-
-	/*
-	 * Remove "platform:/resource/" from the front of the platformURI and return the remaining String.
-	 */
-	private static String primGetNonPlatformURIString(URI platformURI) {
-		String uriString = platformURI.toString();
-		//"platform:/resource/" is 19 characters.
-		return uriString.substring(19, uriString.length());
-	}
-
-	/**
-	 * Does the passed URI have the form platform:/plugin/... ?
-	 * 
-	 * @param uri
-	 * @return <code>true</code> if uri is platform plugin protocol.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean isPlatformPluginResourceURI(URI uri) {
-		if (uri == null) return false;
-		return JEMUtilPlugin.PLATFORM_PROTOCOL.equals(uri.scheme()) && JEMUtilPlugin.PLATFORM_PLUGIN.equals(uri.segment(0));
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchURIConverter.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchURIConverter.java
deleted file mode 100644
index e556851..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchURIConverter.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: WorkbenchURIConverter.java,v $$
- *  $$Revision: 1.2 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-package org.eclipse.jem.util.emf.workbench;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.ecore.resource.URIConverter;
-
-/**
- * Implementers of this interface are WorkbenchURI converters. Workbench URI converters handle references to files in the project's containers.
- * This converter is only necessary to resolve old ambiguous workbench URIs.
- * @since 1.0.0
- */
-public interface WorkbenchURIConverter extends URIConverter {
-
-	/**
-	 * Add input container to to the converter.
-	 * 
-	 * @param aContainer
-	 * 
-	 * @since 1.0.0
-	 */
-	void addInputContainer(IContainer aContainer);
-
-	/**
-	 * Add list of containers to the converter.
-	 * 
-	 * @param containers
-	 *            list of <code>IContainer</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	void addInputContainers(List containers);
-
-	/**
-	 * Get the file relative to a container.
-	 * 
-	 * @param uri
-	 * @return file relative to a container or <code>null</code> if not.
-	 * 
-	 * @since 1.0.0
-	 */
-	IFile getFile(String uri);
-
-	/**
-	 * Get first input container
-	 * 
-	 * @return first input container or <code>null</code> if none set.
-	 * 
-	 * @since 1.0.0
-	 */
-	IContainer getInputContainer();
-
-	/**
-	 * Get all input containers.
-	 * 
-	 * @return all input containers.
-	 * 
-	 * @since 1.0.0
-	 */
-	List getInputContainers();
-
-	/**
-	 * Get the output container if set.
-	 * 
-	 * @return output container or <code>null</code> if not set.
-	 * 
-	 * @since 1.0.0
-	 */
-	IContainer getOutputContainer();
-
-	/**
-	 * Set the output container.
-	 * 
-	 * @param container
-	 * 
-	 * @since 1.0.0
-	 */
-	void setOutputContainer(IContainer container);
-
-	/**
-	 * Return an IFile for
-	 * 
-	 * @aPath. If we have a parent and we do not contain the first segment of the aPath, forward to the parent to retrieve the file.
-	 * @param aPath
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	IFile getOutputFile(IPath aPath);
-
-	/**
-	 * Get output file with mapping applied.
-	 * 
-	 * @param uri
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	IFile getOutputFileWithMappingApplied(String uri);
-
-	/**
-	 * Remove input container from list.
-	 * 
-	 * @param aContainer
-	 * @return <code>true</code> if removed.
-	 * 
-	 * @since 1.0.0
-	 */
-	boolean removeInputContainer(IContainer aContainer);
-
-	/**
-	 * Return true if we can retrieve the resource used to open an input stream on.
-	 * 
-	 * @param aFileName
-	 * @return <code>true</code> if filename is valid for file stream access.
-	 * @since 1.0.0
-	 *  
-	 */
-	boolean canGetUnderlyingResource(String aFileName);
-
-	/**
-	 * Is force save relative flag turned on.
-	 * 
-	 * @return <code>true</code> if force save relative is turned on.
-	 * 
-	 * @since 1.0.0
-	 */
-	boolean isForceSaveRelative();
-
-	/**
-	 * Set to true if you do not want any path manipulation when creating the output stream..
-	 * 
-	 * @param forceSaveRelative
-	 *            <code>true</code> to force saves as relative.
-	 */
-	void setForceSaveRelative(boolean forceSaveRelative);
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchURIConverterImpl.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchURIConverterImpl.java
deleted file mode 100644
index 6365551..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/WorkbenchURIConverterImpl.java
+++ /dev/null
@@ -1,514 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: WorkbenchURIConverterImpl.java,v $$
- *  $$Revision: 1.6 $$  $$Date: 2006/05/17 20:13:45 $$ 
- */
-package org.eclipse.jem.util.emf.workbench;
-
-import java.io.*;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.impl.URIConverterImpl;
-
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
-
-/**
- * A default implementation of the WorkbenchURIConverter interface.
- * 
- * @since 1.0.0
- */
-public class WorkbenchURIConverterImpl extends URIConverterImpl implements WorkbenchURIConverter {
-
-	private final static IWorkspaceRoot WORKSPACE_ROOT = URIConverterImpl.workspaceRoot;
-	private final static String WORKSPACE_ROOT_LOCATION = WORKSPACE_ROOT.getLocation().toString();
-
-	private static final String FILE_PROTOCOL = "file"; //$NON-NLS-1$
-
-	private static final IPath INVALID_PATH = new Path("!!!!~!!!!"); //$NON-NLS-1$
-
-	private static final IFile INVALID_FILE = WORKSPACE_ROOT.getFile(INVALID_PATH.append(INVALID_PATH));
-
-	//Used to avoid trying to fixup the URI when getting the
-	//OutputStream
-	protected boolean forceSaveRelative = false;
-
-	protected List inputContainers;
-
-	protected IContainer outputContainer;
-
-	protected ResourceSetWorkbenchSynchronizer resourceSetSynchronizer;
-	
-	/*
-	 * KLUDGE: We need to know the meta data area. This is so that any uri that starts with the metadata directory
-	 * is considered a file uri and NOT a workspace uri. The metadata is where plugin's store their working data.
-	 * It is not part of the workspace root.
-	 *  
-	 * There is no request for simply the metadata area. The log file is in the metadata directory. So we will
-	 * get the log file location and just remove the log file name. That should leave us with the metadata directory
-	 * only. If Eclipse ever decides to move it from here, this will no longer work. But it hasn't moved in three 
-	 * versions.
-	 * 
-	 * @since 1.1.0
-	 */
-	static protected final String METADATA_LOCATION = Platform.getLogFileLocation().removeLastSegments(1).toString();
-
-	/**
-	 * Default converter constructor, no containers.
-	 * 
-	 * 
-	 * @since 1.0.0
-	 */
-	public WorkbenchURIConverterImpl() {
-		super();
-	}
-
-	/**
-	 * Construct with an input container.
-	 * 
-	 * @param anInputContainer
-	 * 
-	 * @since 1.0.0
-	 */
-	public WorkbenchURIConverterImpl(IContainer anInputContainer) {
-		this(anInputContainer, (ResourceSetWorkbenchSynchronizer) null);
-	}
-
-	/**
-	 * Construct with an input container and a synchronzier.
-	 * 
-	 * @param aContainer
-	 * @param aSynchronizer
-	 * 
-	 * @since 1.0.0
-	 */
-	public WorkbenchURIConverterImpl(IContainer aContainer, ResourceSetWorkbenchSynchronizer aSynchronizer) {
-		this(aContainer, null, aSynchronizer);
-	}
-
-	/**
-	 * Construct with an input container and an output container.
-	 * 
-	 * @param anInputContainer
-	 * @param anOutputContainer
-	 * 
-	 * @since 1.0.0
-	 */
-	public WorkbenchURIConverterImpl(IContainer anInputContainer, IContainer anOutputContainer) {
-		this(anInputContainer, anOutputContainer, null);
-	}
-
-	/**
-	 * Construct with an input container, output container, and a synchronizer.
-	 * 
-	 * @param anInputContainer
-	 * @param anOutputContainer
-	 * @param aSynchronizer
-	 * 
-	 * @since 1.0.0
-	 */
-	public WorkbenchURIConverterImpl(IContainer anInputContainer, IContainer anOutputContainer, ResourceSetWorkbenchSynchronizer aSynchronizer) {
-		addInputContainer(anInputContainer);
-		setOutputContainer(anOutputContainer);
-		resourceSetSynchronizer = aSynchronizer;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#addInputContainer(org.eclipse.core.resources.IContainer)
-	 */
-	public void addInputContainer(IContainer aContainer) {
-		if (aContainer != null && !getInputContainers().contains(aContainer))
-			getInputContainers().add(aContainer);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#addInputContainers(java.util.List)
-	 */
-	public void addInputContainers(List containers) {
-		for (int i = 0; i < containers.size(); i++) {
-			addInputContainer((IContainer) containers.get(i));
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#removeInputContainer(org.eclipse.core.resources.IContainer)
-	 */
-	public boolean removeInputContainer(IContainer aContainer) {
-		return getInputContainers().remove(aContainer);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#getInputContainers()
-	 */
-	public List getInputContainers() {
-		if (inputContainers == null)
-			inputContainers = new ArrayList();
-		return inputContainers;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#getInputContainer()
-	 */
-	public IContainer getInputContainer() {
-		if (!getInputContainers().isEmpty())
-			return (IContainer) getInputContainers().get(0);
-		else
-			return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#getOutputContainer()
-	 */
-	public IContainer getOutputContainer() {
-		if (outputContainer == null)
-			outputContainer = getInputContainer();
-		return outputContainer;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#setOutputContainer(org.eclipse.core.resources.IContainer)
-	 */
-	public void setOutputContainer(IContainer newOutputContainer) {
-		outputContainer = newOutputContainer;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#getOutputFile(org.eclipse.core.runtime.IPath)
-	 */
-	public IFile getOutputFile(IPath aPath) {
-		IFile file = null;
-		if (getOutputContainer() != null) {
-			if (forceSaveRelative)
-				return primGetOutputFile(aPath);
-			file = getOutputFileForPathWithContainerSegments(aPath);
-			if (file != null)
-				return file;
-			else
-				return primGetOutputFile(aPath);
-		}
-		return file;
-	}
-
-	protected IFile primGetOutputFile(IPath aPath) {
-		return primGetFile(getOutputContainer(), aPath);
-	}
-
-	protected IFile getOutputFileForPathWithContainerSegments(IPath aPath) {
-		IContainer out = getOutputContainer();
-		return getFileForPathWithContainerSegments(aPath, out, false);
-	}
-
-	protected IFile getFileForPathWithContainerSegments(IPath aPath, IContainer container, boolean testExists) {
-		IPath containerPath = null;
-		IFile file = null;
-		if (testExists) {
-			containerPath = container.getProjectRelativePath();
-			if (!containerPath.isEmpty()) {
-				file = getFileForMatchingPath(aPath, containerPath, container);
-				if (file != null && file.exists())
-					return file;
-			}
-		}
-		containerPath = container.getFullPath();
-		file = getFileForMatchingPath(aPath, containerPath, container);
-		return file;
-	}
-
-	protected IFile getFileForMatchingPath(IPath containerPath, IPath sourcePath, IContainer container) {
-		int matches = 0;
-		matches = containerPath.matchingFirstSegments(sourcePath);
-		if (matches > 0 && matches == sourcePath.segmentCount()) {
-			IPath loadPath = containerPath.removeFirstSegments(matches);
-			return primGetFile(container, loadPath);
-		}
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#getFile(java.lang.String)
-	 */
-	public IFile getFile(String uri) {
-		return getFile(new Path(uri));
-	}
-
-	/**
-	 * Get the file from the path.
-	 * 
-	 * @param path
-	 * @return
-	 * @see WorkbenchURIConverter#getFile(String)
-	 * @since 1.0.0
-	 */
-	public IFile getFile(IPath path) {
-		IFile file = null;
-		if (getInputContainer() != null) {
-			path = path.makeRelative();
-			java.util.Iterator it = getInputContainers().iterator();
-			while (it.hasNext()) {
-				IContainer con = (IContainer) it.next();
-				file = getInputFile(con, path);
-				if (file != null && file.exists())
-					return file;
-			}
-		}
-		if (file == null)
-			return INVALID_FILE;
-		return file;
-	}
-
-	/**
-	 * Get output file from string path.
-	 * 
-	 * @param uri
-	 * @return
-	 * 
-	 * @see WorkbenchURIConverter#getOutputFile(IPath)
-	 * @since 1.0.0
-	 */
-	public IFile getOutputFile(String uri) {
-		return getOutputFile(new Path(uri));
-	}
-
-	/**
-	 * Get the input file from the container and path.
-	 * 
-	 * @param con
-	 * @param path
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public IFile getInputFile(IContainer con, IPath path) {
-		IFile file = null;
-		if (WORKSPACE_ROOT.equals(con) && path.segmentCount() < 2)
-			path = INVALID_PATH.append(path);
-		file = primGetFile(con, path);
-		if (file == null || !file.exists())
-			file = getFileForPathWithContainerSegments(path, con, true);
-		return file;
-	}
-
-	protected IFile primGetFile(IContainer container, IPath path) {
-		try {
-			return container.getFile(path);
-		} catch (IllegalArgumentException ex) {
-		}
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#canGetUnderlyingResource(java.lang.String)
-	 */
-	public boolean canGetUnderlyingResource(String aFileName) {
-		IFile file = getFile(aFileName);
-		return file != null && file.exists();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#isForceSaveRelative()
-	 */
-	public boolean isForceSaveRelative() {
-		return forceSaveRelative;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#setForceSaveRelative(boolean)
-	 */
-	public void setForceSaveRelative(boolean forceSaveRelative) {
-		this.forceSaveRelative = forceSaveRelative;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.resource.URIConverter#normalize(org.eclipse.emf.common.util.URI)
-	 */public URI normalize(URI uri) {
-		URI result = uri;
-		String fragment = null;
-		if (uri.hasFragment()) {
-			fragment = uri.fragment();
-			result = uri.trimFragment();
-		}
-		result = getInternalURIMap().getURI(result);
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(result))
-			return appendFragment(result, fragment);
-		if (WorkbenchResourceHelperBase.isPlatformPluginResourceURI(result)) {
-			URI normalized = normalizePluginURI(result, fragment);
-			return (normalized != null) ? normalized : uri;
-		}
-		String protocol = result.scheme();
-		URI fileSearchURI = null;
-		if (protocol == null) {
-			fileSearchURI = normalizeEmptyProtocol(result, fragment);
-			if (fileSearchURI != null)
-				return fileSearchURI;
-		} else if (FILE_PROTOCOL.equals(protocol)) {
-			fileSearchURI = normalizeFileProtocol(result, fragment);
-			if (fileSearchURI != null)
-				return fileSearchURI;
-		} else if (JEMUtilPlugin.WORKSPACE_PROTOCOL.equals(protocol))
-			return normalizeWorkspaceProtocol(result, fragment);
-		return super.normalize(uri);
-	}
-
-	/*
-	 * Resolves a plugin format into the actual.
-	 */
-	protected URI normalizePluginURI(URI uri, String fragment) {
-		if (uri.segmentCount() < 2)
-			return uri; // Invalid, just let it go on.
-		// See if already normalized.
-		int u_scoreNdx = uri.segment(1).lastIndexOf('_');
-		if (u_scoreNdx != -1) {
-			// Not normalized. Remove the version to make it normalized.
-			String[] segments = uri.segments();
-			segments[1] = segments[1].substring(0, u_scoreNdx);
-			return URI.createHierarchicalURI(uri.scheme(), uri.authority(), uri.device(), segments, uri.query(), fragment);
-		} else
-			return uri;
-	}
-
-	protected URI normalizeWorkspaceProtocol(URI aWorkspaceURI, String fragment) {
-		URI result;
-		String uriString = aWorkspaceURI.toString();
-		uriString = uriString.substring(JEMUtilPlugin.WORKSPACE_PROTOCOL.length() + 1);
-		result = URI.createPlatformResourceURI(uriString);
-		if (fragment != null)
-			result = appendFragment(aWorkspaceURI, fragment);
-		return result;
-	}
-	
-	protected URI normalizeEmptyProtocol(URI aFileUri, String fragment) {
-		//Make the relative path absolute and return a platform URI.
-		IPath path = new Path(aFileUri.toString());
-		return normalizeToWorkspaceURI(path, fragment);
-	}
-	
-	private URI normalizeToWorkspaceURI(IPath path, String fragment) {
-		URI result = null;
-		IFile file = getFile(path);
-		if (file == null || !file.exists())
-			file = getOutputFile(path);
-		if (file != null) {
-			result = URI.createPlatformResourceURI(file.getFullPath().toString());
-			result = appendFragment(result, fragment);
-		}
-		return result;
-	}
-	
-	protected URI normalizeFileProtocol(URI aFileUri, String fragment) {
-		URI result = null;
-		//Make the relative path absolute and return a platform URI.
-		String devicePath = aFileUri.devicePath();
-		//Test for workspace location.
-		if (!devicePath.startsWith(METADATA_LOCATION) &&
-			devicePath.startsWith(WORKSPACE_ROOT_LOCATION) && devicePath.length() > WORKSPACE_ROOT_LOCATION.length()) {
-			//test for workspace location
-			result = normalizeToWorkspaceURI(new Path(devicePath.substring(WORKSPACE_ROOT_LOCATION.length())), fragment);
-		} else if (aFileUri.isRelative()) {
-			result = normalizeToWorkspaceURI(new Path(aFileUri.toString()), fragment);
-		} else {
-			result = aFileUri;
-		}
-		return result;
-	}
-	
-	protected URI appendFragment(URI result, String fragment) {
-		if (fragment != null)
-			return result.appendFragment(fragment);
-		else
-			return result;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter#getOutputFileWithMappingApplied(java.lang.String)
-	 */
-	public IFile getOutputFileWithMappingApplied(String uri) {
-		URI converted = getInternalURIMap().getURI(URI.createURI(uri));
-		return getOutputFile(new Path(converted.toString()));
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.resource.impl.URIConverterImpl#createPlatformResourceOutputStream(java.lang.String)
-	 */
-	public OutputStream createPlatformResourceOutputStream(String platformResourcePath) throws IOException {
-		IFile file = WORKSPACE_ROOT.getFile(new Path(platformResourcePath));
-		ProjectUtilities.ensureContainerNotReadOnly(file);
-		return new WorkbenchByteArrayOutputStream(file, resourceSetSynchronizer);
-	}
-
-	protected URI getContainerRelativeURI(IFile aFile) {
-		IPath path = WorkbenchResourceHelperBase.getPathFromContainers(inputContainers, aFile.getFullPath());
-		if (path != null)
-			return URI.createURI(path.toString());
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.resource.impl.URIConverterImpl#createPlatformResourceInputStream(java.lang.String)
-	 */
-	public InputStream createPlatformResourceInputStream(String platformResourcePath) throws IOException {
-		IFile file = WORKSPACE_ROOT.getFile(new Path(platformResourcePath));
-		try {
-			if (!file.isSynchronized(IResource.DEPTH_ONE)) {
-				try {
-					File iofile = file.getFullPath().toFile();
-					if (iofile.exists() || file.exists())
-						file.refreshLocal(IResource.DEPTH_ONE, null);
-				} catch (CoreException ce) {
-					if (ce.getStatus().getCode() != IResourceStatus.WORKSPACE_LOCKED)
-						throw ce;
-				}
-			}
-			// CHANGED from <no-args> to <true> [94015]
-			return file.getContents(true);
-		} catch (CoreException exception) {
-			throw new Resource.IOWrappedException(exception);
-		}		
-	}
-
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/nature/EMFNature.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/nature/EMFNature.java
deleted file mode 100644
index f7f288a..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/emf/workbench/nature/EMFNature.java
+++ /dev/null
@@ -1,554 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: EMFNature.java,v $$
- *  $$Revision: 1.4 $$  $$Date: 2005/02/15 23:04:14 $$ 
- */
-package org.eclipse.jem.util.emf.workbench.nature;
-
-import java.util.*;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.emf.common.util.*;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.xmi.XMLParserPool;
-import org.eclipse.emf.ecore.xmi.impl.XMLParserPoolImpl;
-
-import org.eclipse.jem.internal.util.emf.workbench.nature.EMFNatureRegistry;
-import org.eclipse.jem.util.emf.workbench.*;
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-
-/**
- * The base EMFNature.
- * <p>
- * This is expected to be subclassed by clients, but there are default subclasses available.
- * </p>
- * 
- * @since 1.0.0
- */
-public abstract class EMFNature implements IProjectNature, IEMFContextContributor {
-
-	protected IProject project;
-
-	protected EMFWorkbenchContextBase emfContext;
-
-	protected boolean hasConfigured = false;
-	
-	public static XMLParserPool SHARED_PARSER_POOL = new XMLParserPoolImpl();	
-
-	public EMFNature() {
-		super();
-	}
-
-	/**
-	 * Add the nature id to the project.
-	 * 
-	 * @param proj
-	 * @param natureId
-	 * @throws CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	protected static void addNatureToProject(IProject proj, String natureId) throws CoreException {
-		ProjectUtilities.addNatureToProject(proj, natureId);
-	}
-
-	/**
-	 * Configures the project with this nature. This is called by <code>IProject.addNature</code> and should not be called directly by clients. The
-	 * nature extension id is added to the list of natures on the project by <code>IProject.addNature</code>, and need not be added here.
-	 * 
-	 * <p>
-	 * All subtypes must call super. The better way for subtypes is to override primConfigure instead.
-	 * </p>
-	 * 
-	 * @throws CoreException
-	 * @since 1.0.0
-	 */
-	public void configure() throws org.eclipse.core.runtime.CoreException {
-		if (!hasConfigured) {
-			hasConfigured = true;
-			primConfigure();
-		}
-	}
-
-	/**
-	 * Called from configure the first time configure is called on the nature. Default is do nothing. Subclasses should override and add in their own
-	 * configuration.
-	 * 
-	 * @throws org.eclipse.core.runtime.CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	protected void primConfigure() throws org.eclipse.core.runtime.CoreException {
-
-	}
-
-	/**
-	 * Create an EMF context for the project.
-	 * 
-	 * @throws CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	protected void createEmfContext() throws CoreException {
-		WorkbenchResourceHelperBase.createEMFContext(getProject(), this);
-	}
-
-	/**
-	 * Create a folder relative to the project based on aProjectRelativePathString.
-	 * 
-	 * @param aProjectRelativePathString
-	 * @return
-	 * @throws CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	public IFolder createFolder(String aProjectRelativePathString) throws CoreException {
-		if (aProjectRelativePathString != null && aProjectRelativePathString.length() > 0)
-			return createFolder(new Path(aProjectRelativePathString));
-		return null;
-	}
-
-	/**
-	 * Create a folder relative to the project based on aProjectRelativePathString.
-	 * 
-	 * @param aProjectRelativePath
-	 * @return
-	 * @throws CoreException
-	 * 
-	 * @since 1.0.0
-	 */
-	public IFolder createFolder(IPath aProjectRelativePath) throws CoreException {
-		if (aProjectRelativePath != null && !aProjectRelativePath.isEmpty()) {
-			IFolder folder = getWorkspace().getRoot().getFolder(getProjectPath().append(aProjectRelativePath));
-			if (!folder.exists()) {
-				ProjectUtilities.ensureContainerNotReadOnly(folder);
-				folder.create(true, true, null);
-			}
-			return folder;
-		}
-		return null;
-	}
-
-	/**
-	 * Removes this nature from the project, performing any required deconfiguration. This is called by <code>IProject.removeNature</code> and
-	 * should not be called directly by clients. The nature id is removed from the list of natures on the project by
-	 * <code>IProject.removeNature</code>, and need not be removed here.
-	 * 
-	 * @throws CoreException
-	 * @since 1.0.0
-	 */
-	public void deconfigure() throws org.eclipse.core.runtime.CoreException {
-		emfContext = null;
-	}
-
-	/**
-	 * Return true if the IFile with the given name exists in this project.
-	 * 
-	 * @param aFileName
-	 *            filename can be relative to one of the input file paths for the WorkbenchURIConverter.
-	 * @return <code>true</code> if filename exists in this project
-	 * 
-	 * @since 1.0.0
-	 */
-	public boolean fileExists(String aFileName) {
-		if (aFileName == null)
-			return false;
-
-		IPath path = new Path(aFileName);
-		if (path.isAbsolute())
-			return ResourcesPlugin.getWorkspace().getRoot().getFile(path).exists();
-		else
-			return getWorkbenchURIConverter().canGetUnderlyingResource(aFileName);
-	}
-
-	/**
-	 * Get the resource set for the project
-	 * 
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public ResourceSet getResourceSet() {
-		return getEmfContextBase().getResourceSet();
-	}
-
-	/**
-	 * Returns the EMF root folder for the project. Defaults to the project. Subclasses can override.
-	 * 
-	 * @return EMF root folder for the project.
-	 * 
-	 * @since 1.0.0
-	 */
-	public IContainer getEMFRoot() {
-		return getProject();
-	}
-
-	/**
-	 * Used for optimizations; answers whether a mof context for this nature has exists yet
-	 * 
-	 * @deprecated use hasResourceSet();
-	 * @since 1.0.0
-	 */
-	public boolean hasContext() {
-		return hasResourceSet();
-	}
-
-	/**
-	 * Is there a resource set yet for the project.
-	 * 
-	 * @return <code>true</code> if there is a resource set for the project.
-	 * 
-	 * @since 1.0.0
-	 */
-	public boolean hasResourceSet() {
-		return emfContext != null && emfContext.hasResourceSet();
-	}
-
-	/**
-	 * Lazy initializer; for migration of existing workspaces where configure will never get called.
-	 * 
-	 * @return context base for the project.
-	 * 
-	 * @since 1.0.0
-	 */
-	protected EMFWorkbenchContextBase getEmfContextBase() {
-		if (emfContext == null) {
-			try {
-				createEmfContext();
-			} catch (CoreException ex) {
-				Logger.getLogger().logError(ex);
-			}
-		}
-		return emfContext;
-	}
-
-	/**
-	 * Get the IFile with the given name if it is in this project.
-	 * 
-	 * @param aFileName
-	 *            filename can be relative to one of the input file paths for the WorkbenchURIConverter.
-	 * @return file it it is in this project, or <code>null</code> if it doesn't.
-	 * 
-	 * @since 1.0.0
-	 */
-	public IFile getFile(String aFileName) {
-		return getWorkbenchURIConverter().getFile(aFileName);
-	}
-
-	/**
-	 * Return the nature's ID.
-	 * 
-	 * @return nature id
-	 * 
-	 * @since 1.0.0
-	 */
-	public abstract String getNatureID();
-
-	/**
-	 * Return the ID of the plugin that this nature is contained within.
-	 * 
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	protected abstract String getPluginID();
-
-	/**
-	 * Returns the project to which this project nature applies.
-	 * 
-	 * @return the project handle
-	 * @since 1.0.0
-	 */
-	public org.eclipse.core.resources.IProject getProject() {
-		return project;
-	}
-
-	/**
-	 * Return the full path of the project.
-	 * 
-	 * @return full project path (relative to workspace)
-	 * @since 1.0.0
-	 */
-	public IPath getProjectPath() {
-		return getProject().getFullPath();
-	}
-
-	/**
-	 * Get the server property of the project from the supplied key
-	 * 
-	 * @param key
-	 *            java.lang.String
-	 * @deprecated we cannont use persistent properties because they are not stored in the repository
-	 * @since 1.0.0
-	 */
-	protected String getProjectServerValue(String key) {
-		if (key == null)
-			return null;
-		try {
-			QualifiedName wholeName = qualifiedKey(key);
-			return getProject().getPersistentProperty(wholeName);
-		} catch (CoreException exception) {
-			//If we can't find it assume it is null
-			exception.printStackTrace();
-			return null;
-		}
-	}
-
-	/**
-	 * Get WorkbenchURIConverter for this project.
-	 * <p>
-	 * This method assumes the URIConverter on the ResourceSet is the one that was created for the ResourceSet on behalf of this nature runtime.
-	 * </p>
-	 * 
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	protected WorkbenchURIConverter getWorkbenchURIConverter() {
-		return (WorkbenchURIConverter) getResourceSet().getURIConverter();
-	}
-
-	public IWorkspace getWorkspace() {
-		return getProject().getWorkspace();
-	}
-
-	/**
-	 * @deprecated use getResource(URI)
-	 */
-	public Resource getXmiResource(String uri) {
-		return getResource(URI.createURI(uri));
-	}
-
-	/**
-	 * Get the resource for this uri. It will use the resource set of the project to find it. It will load if not already loaded.
-	 * 
-	 * @param uri
-	 * @return resource or <code>null</code> if resource is not found.
-	 * 
-	 * @since 1.0.0
-	 */
-	public Resource getResource(URI uri) {
-		try {
-			return getResourceSet().getResource(uri, true);
-		} catch (WrappedException ex) {
-			if (!WorkbenchResourceHelperBase.isResourceNotFound(ex))
-				throw ex;
-		}
-		return null;
-	}
-
-	/**
-	 * @deprecated use getResourceSet()
-	 */
-	public ResourceSet getXmiResourceSet() {
-		return getResourceSet();
-	}
-
-	/**
-	 * Make sure that all dependent components are initialized before creating the ResourceSet.
-	 */
-	protected void initializeDependentComponents() {
-		//com.ibm.etools.java.init.JavaInit.init();
-	}
-
-	/**
-	 * @deprecated use createResource(URI)
-	 */
-	public Resource makeXmiResource(String uri) {
-		return createResource(URI.createURI(uri));
-	}
-
-	/**
-	 * @deprecated use createResource(URI)
-	 */
-	public Resource makeXmiResource(String uri, EList anExtent) {
-		Resource res = makeXmiResource(uri);
-		if (res != null)
-			res.getContents().addAll(anExtent);
-		return res;
-	}
-
-	/**
-	 * Create the resource for this uri. It will use the resource set of the project to create it.
-	 * 
-	 * @param uri
-	 * @return resource
-	 * 
-	 * @since 1.0.0
-	 */
-	public Resource createResource(URI uri) {
-		return getResourceSet().createResource(uri);
-	}
-
-	/*
-	 * Return the QualifedValue for key for storage in the repository. The key is qualifed with the package name to avoid collision. @return
-	 * QualifedName @param key java.lang.String
-	 */
-	private QualifiedName qualifiedKey(String key) {
-		return new QualifiedName(getPluginID(), key);
-	}
-
-	/**
-	 * Register the given nature id as an EMFNature.
-	 * 
-	 * @param natureID
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void registerNatureID(String natureID) {
-		EMFNatureRegistry.singleton().REGISTERED_NATURE_IDS.add(natureID);
-	}
-
-	/**
-	 * Sets the project to which this nature applies. Used when instantiating this project nature runtime. This is called by
-	 * <code>IProject.addNature</code> and should not be called directly by clients.
-	 * 
-	 * @param project
-	 *            the project to which this nature applies
-	 * 
-	 * @since 1.0.0
-	 */
-	public void setProject(org.eclipse.core.resources.IProject newProject) {
-		project = newProject;
-	}
-
-	/**
-	 * Set the server property of the project from the supplied value
-	 * 
-	 * @param key
-	 *            java.lang.String
-	 * @param value
-	 *            String
-	 * @deprecated we cannont use persistent properties because they are not stored in the repository
-	 */
-	protected void setProjectServerValue(String key, String value) {
-		if (key != null) {
-			try {
-				QualifiedName wholeName = qualifiedKey(key);
-				getProject().setPersistentProperty(wholeName, value);
-			} catch (CoreException exception) {
-				//If we can't find it assume it is null
-				exception.printStackTrace();
-				return;
-			}
-		}
-	}
-
-	/**
-	 * Shutdown the EMF nature
-	 * 
-	 * 
-	 * @since 1.0.0
-	 */
-	public void shutdown() {
-		if (getResourceSet() != null)
-			((ProjectResourceSet) getResourceSet()).release();
-	}
-
-	/**
-	 * Return a list of EMFNatures based on the natures that have been configured for this project.
-	 * 
-	 * @return List of EMFNatures
-	 * @param project
-	 * @return list of natures configured for the project.
-	 * @since 1.0.0
-	 */
-	public static List getRegisteredRuntimes(IProject project) {
-		List result = null;
-		EMFNature nature = null;
-		if (project != null && project.isAccessible()) {
-			String natureID;
-			Iterator it = EMFNatureRegistry.singleton().REGISTERED_NATURE_IDS.iterator();
-			while (it.hasNext()) {
-				natureID = (String) it.next();
-				try {
-					nature = (EMFNature) project.getNature(natureID);
-				} catch (CoreException e) {
-				}
-				if (nature != null) {
-					if (result == null)
-						result = new ArrayList(2);
-					result.add(nature);
-				}
-			}
-		}
-		return result == null ? Collections.EMPTY_LIST : result;
-	}
-
-	/**
-	 * Return a list of nature ids based on the natures that have been configured for this project.
-	 * 
-	 * @return list of configured nature ids.
-	 * @param project
-	 */
-	public static List getRegisteredRuntimeIDs(IProject project) {
-		List result = null;
-		String natureID = null;
-		if (project != null && project.isAccessible()) {
-			Iterator it = EMFNatureRegistry.singleton().REGISTERED_NATURE_IDS.iterator();
-			while (it.hasNext()) {
-				natureID = (String) it.next();
-				try {
-					if (project.hasNature(natureID)) {
-						if (result == null)
-							result = new ArrayList(2);
-						result.add(natureID);
-					}
-				} catch (CoreException e) {
-				}
-			}
-		}
-		return result == null ? Collections.EMPTY_LIST : result;
-	}
-
-	/**
-	 * Return if the project has the given nature.
-	 * 
-	 * @param project
-	 * @param natureId
-	 * @return <code>true</code> if project has given nature
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean hasRuntime(IProject project, String natureId) {
-		if (project == null || !project.isAccessible())
-			return false;
-		try {
-			return project.hasNature(natureId);
-		} catch (CoreException e) {
-			return false;
-		}
-	}
-
-	/**
-	 * Return if the project has any one of the possible given nature ids.
-	 * 
-	 * @param project
-	 * @param possibleNatureIds
-	 * @return <code>true</code> if at least one of the possible natures id is configured for the project.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean hasRuntime(IProject project, String[] possibleNatureIds) {
-		if (project != null) {
-			for (int i = 0; i < possibleNatureIds.length; i++) {
-				if (hasRuntime(project, possibleNatureIds[i]))
-					return true;
-			}
-		}
-		return false;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/AbstractWorkBenchRenderer.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/AbstractWorkBenchRenderer.java
deleted file mode 100644
index b2c1473..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/AbstractWorkBenchRenderer.java
+++ /dev/null
@@ -1,472 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util.logger.proxyrender;
-
-import java.lang.reflect.Field;
-import java.util.logging.Level;
-
-import org.eclipse.core.runtime.*;
-import org.osgi.framework.Bundle;
-
-import org.eclipse.jem.util.logger.proxy.*;
-
-
-/**
- * Base log renderer that logs to the workbench.
- * 
- * @since 1.1.0
- */
-public abstract class AbstractWorkBenchRenderer implements ILogRenderer2 {
-
-	private boolean fTraceMode = false; // will we actually punch trace messaged or not
-
-	private boolean fSettingTrace = false;
-
-	protected Bundle fMyBundle = null;
-
-	protected Logger fMyLogger = null;
-
-	protected ILog fWorkBenchLogger = null;
-
-	/**
-	 * Constructer taking a logger.
-	 * 
-	 * @param logger
-	 * 
-	 * @since 1.1.0
-	 */
-	public AbstractWorkBenchRenderer(Logger logger) {
-		super();
-		fMyLogger = logger;
-		fTraceMode = fMyLogger.getTraceMode();
-
-		String pluginID = fMyLogger.getPluginID();
-		fMyBundle = Platform.getBundle(pluginID);
-		if (fMyBundle == null)
-			throw new RuntimeException("Invalid Plugin ID"); //$NON-NLS-1$
-
-		fWorkBenchLogger = Platform.getLog(fMyBundle);
-		setTraceMode(fMyLogger.getTraceMode() || isDebugging(fMyBundle));
-		fMyLogger.setRenderer(this);
-	}
-
-	/*
-	 * This used to come from the Plugin instance. But in new OSGi, there is not necessarily a Plugin instance. So use the same logic they use.
-	 */
-	private boolean isDebugging(Bundle bundle) {
-		String symbolicName = bundle.getSymbolicName();
-		if (symbolicName != null) {
-			String key = symbolicName + "/debug"; //$NON-NLS-1$
-			String value = Platform.getDebugOption(key);
-			return value == null ? false : value.equalsIgnoreCase("true"); //$NON-NLS-1$
-		}
-		return false;
-	}
-
-	/**
-	 * Is the console log for eclipse turned on to sysout. If true, then we shouldn't log to console anything already logged because Eclipse would of
-	 * logged it for us. This comes from the -Declipse.consoleLog="true" which is the default when starting eclipse from PDE.
-	 */
-	protected static final boolean consoleLogOn;
-	static {
-		String consologPropertyName = null;
-		try {
-			// Accessing an internal field, so using reflection. This way if changes in future we won't crash.
-			Class eclipseStarter = Class.forName("org.eclipse.core.runtime.adaptor.EclipseStarter");	//$NON-NLS-1$
-			Field consolelog = eclipseStarter.getDeclaredField("PROP_CONSOLE_LOG");	//$NON-NLS-1$
-			consologPropertyName = (String) consolelog.get(null);
-		} catch (SecurityException e) {
-		} catch (IllegalArgumentException e) {
-		} catch (ClassNotFoundException e) {
-		} catch (NoSuchFieldException e) {
-		} catch (IllegalAccessException e) {
-		}
-		consoleLogOn = consologPropertyName != null && "true".equals(System.getProperty(consologPropertyName)) ;  //$NON-NLS-1$
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer#setTraceMode(boolean)
-	 */
-	public void setTraceMode(boolean flag) {
-		if (fSettingTrace)
-			return; // Do not allow cycles
-
-		fSettingTrace = true;
-		fTraceMode = flag;
-		fMyLogger.setTraceMode(flag);
-		fSettingTrace = false;
-	}
-
-	// The following methods are for historical renderers in case this has been subclassed outside
-	// of util.
-
-	/**
-	 * Log a string to the trace.
-	 * 
-	 * @param param
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public abstract String log(String param);
-
-	/**
-	 * Default one that log a string to the trace given a level. Default simply passes it to log(String) so that we don't break old subclasses.
-	 * <p>
-	 * If loggedToWorkbench is true, then it shouldn't be logged to console if consoleLogOn is true because workbench already logged to console.
-	 * 
-	 * @param msg
-	 * @param l
-	 * 
-	 * @since 1.0.0
-	 */
-	protected void log(String msg, Level l, boolean loggedToWorkbench) {
-		log(msg);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer#log(java.lang.String, int)
-	 */
-	public String log(String msg, int type) {
-
-		String target = logWorkBench(msg, type);
-		if (fTraceMode || target.equals(NOLOG_DESCRIPTION))
-			return log(msg);
-		else
-			return target;
-	}
-
-	/**
-	 * Log to workbench, a string of the given level <code>ILogRenderer.LOG_</code>. levels.
-	 * 
-	 * @param msg
-	 * @param type
-	 * @return description of the log's destination e.g., <code>CONSOLE_DESCRIPTION</code>
-	 * 
-	 * @see ILogRenderer#LOG_ERROR and all of the other log types.
-	 * @see ILogRenderer#CONSOLE_DESCRIPTION
-	 * @since 1.0.0
-	 */
-	public String logWorkBench(String msg, int type) {
-
-		try {
-			int ErrCode;
-			if (fWorkBenchLogger != null) {
-				switch (type) {
-					case (ILogRenderer.LOG_ERROR):
-						ErrCode = IStatus.ERROR;
-						break;
-					case (ILogRenderer.LOG_WARNING):
-						ErrCode = IStatus.WARNING;
-						break;
-					case (ILogRenderer.LOG_INFO):
-						ErrCode = IStatus.INFO;
-						break;
-					case (ILogRenderer.LOG_TRACE):
-						ErrCode = IStatus.OK;
-						break;
-					default:
-						throw new RuntimeException("Invalid Log Type"); //$NON-NLS-1$
-				}
-				Status status = new Status(ErrCode, fMyBundle.getSymbolicName(), IStatus.OK, msg, null);
-				fWorkBenchLogger.log(status);
-				return WORKBENCH_DESCRIPTION;
-			} else
-				return NOLOG_DESCRIPTION;
-		} catch (Exception t) {
-			return NOLOG_DESCRIPTION;
-		}
-	}
-
-	// Default implentation of the ILogRenderer2 interface.
-	protected boolean isLogging(Level level) {
-		return fTraceMode || fMyLogger.isLoggingLevel(level);
-	}
-
-	private static final int[] STATUS_LEVEL;
-
-	private static final Level[] STATUS_LEVEL_LOOKUP;
-
-	private static final Level[] LEVEL_STATUS;
-
-	static {
-		// Status levels that correspond to the log levels, from finest to none, same indexes as from STATUS_LEVEL_LOOKUP.
-		STATUS_LEVEL_LOOKUP = new Level[] { Level.INFO, Level.WARNING, Level.SEVERE};
-		STATUS_LEVEL = new int[] { IStatus.INFO, IStatus.WARNING, IStatus.ERROR};
-
-		// Levels that correspond to the IStatus levels.
-		int maxID = Math.max(IStatus.OK, Math.max(IStatus.INFO, Math.max(IStatus.WARNING, IStatus.ERROR)));
-		LEVEL_STATUS = new Level[maxID + 1];
-		LEVEL_STATUS[IStatus.OK] = Level.FINE;
-		LEVEL_STATUS[IStatus.INFO] = Level.INFO;
-		LEVEL_STATUS[IStatus.WARNING] = Level.WARNING;
-		LEVEL_STATUS[IStatus.ERROR] = Level.SEVERE;
-	}
-
-	/**
-	 * Return the Java Level for the status code from the given IStatus.
-	 * 
-	 * @param status
-	 * @return the Java Level
-	 * 
-	 * @since 1.0.0
-	 */
-	protected Level getLogLevel(IStatus status) {
-		return LEVEL_STATUS[status.getSeverity()];
-	}
-
-	/**
-	 * Return the IStatus status code for the given Java Level.
-	 * 
-	 * @param logLevel
-	 * @return the IStatus status code.
-	 * 
-	 * @since 1.0.0
-	 */
-	protected int getStatusSeverity(Level logLevel) {
-		for (int i = 0; i < STATUS_LEVEL_LOOKUP.length; i++) {
-			if (STATUS_LEVEL_LOOKUP[i] == logLevel)
-				return STATUS_LEVEL[i];
-		}
-		return IStatus.OK; // Default to ok.
-	}
-
-	/**
-	 * Log the string to the workbench for the given level
-	 * 
-	 * @param msg
-	 * @param level
-	 * @return description of the log's destination e.g., <code>CONSOLE_DESCRIPTION</code>
-	 * 
-	 * @since 1.1.0
-	 */
-	protected String logWorkbench(String msg, Level level) {
-		String result = NOLOG_DESCRIPTION;
-		// Test again because we could be here simply due to trace mode, in which case we
-		// don't want to workbench log it.
-		if (fMyLogger.isLoggingLevel(level)) {
-			Platform.getLog(fMyBundle).log(new Status(getStatusSeverity(level), fMyBundle.getSymbolicName(), 0, msg, null));
-			result = WORKBENCH_DESCRIPTION;
-			if (fTraceMode)
-				log(msg, level, true);
-		} else if (fTraceMode)
-			log(msg, level, false);
-		return result;
-	}
-
-	private String getStatusMsg(IStatus s, Level l) {
-		if (s.getException() != null)
-			return fMyLogger.getGenericMsg(s.toString() + fMyLogger.fLineSeperator + fMyLogger.exceptionToString(s.getException()), l);
-		else
-			return fMyLogger.getGenericMsg(s.toString(), l);
-	}
-
-	/**
-	 * Log the IStatus to the workbench at the given level.
-	 * 
-	 * @param s
-	 * @param level
-	 * @return description of the log's destination e.g., <code>CONSOLE_DESCRIPTION</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	protected String logWorkbench(IStatus s, Level level) {
-		if (level == DEFAULT)
-			level = getLogLevel(s);
-		String result = NOLOG_DESCRIPTION;
-		// Test again because we could be here simply due to trace mode, in which case we
-		// don't want to workbench log it.
-		if (fMyLogger.isLoggingLevel(level)) {
-			Platform.getLog(fMyBundle).log(s);
-			result = WORKBENCH_DESCRIPTION;
-			if (fTraceMode)
-				log(getStatusMsg(s, level), level, true);
-		} else if (fTraceMode)
-			log(getStatusMsg(s, level), level, false);
-		return result;
-	}
-
-	/**
-	 * Log to the workbench the Throwable at the given level.
-	 * 
-	 * @param t
-	 * @param level
-	 * @return description of the log's destination e.g., <code>CONSOLE_DESCRIPTION</code>
-	 * 
-	 * @since 1.0.0
-	 */
-	protected String logWorkbench(Throwable t, Level level) {
-		String result = NOLOG_DESCRIPTION;
-		// Test again because we could be here simply due to trace mode, in which case we
-		// don't want to workbench log it.
-		if (fMyLogger.isLoggingLevel(level)) {
-			Platform.getLog(fMyBundle).log(new Status(getStatusSeverity(level), fMyBundle.getSymbolicName(), 0, "Exception thrown.", t)); //$NON-NLS-1$
-			result = WORKBENCH_DESCRIPTION;
-			if (fTraceMode)
-				log(fMyLogger.getGenericMsg(fMyLogger.exceptionToString(t), level), level, true);
-		} else if (fTraceMode)
-			log(fMyLogger.getGenericMsg(fMyLogger.exceptionToString(t), level), level, false);
-		return result;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(byte, java.util.logging.Level)
-	 */
-	public String log(boolean b, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return logWorkbench(fMyLogger.getGenericMsg(String.valueOf(b), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(byte, java.util.logging.Level)
-	 */
-	public String log(byte b, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return logWorkbench(fMyLogger.getGenericMsg(String.valueOf(b), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(char, java.util.logging.Level)
-	 */
-	public String log(char c, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return logWorkbench(fMyLogger.getGenericMsg(String.valueOf(c), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(double, java.util.logging.Level)
-	 */
-	public String log(double d, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return logWorkbench(fMyLogger.getGenericMsg(String.valueOf(d), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(float, java.util.logging.Level)
-	 */
-	public String log(float f, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return logWorkbench(fMyLogger.getGenericMsg(String.valueOf(f), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(int, java.util.logging.Level)
-	 */
-	public String log(int i, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return logWorkbench(fMyLogger.getGenericMsg(String.valueOf(i), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(long, java.util.logging.Level)
-	 */
-	public String log(long l, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return logWorkbench(fMyLogger.getGenericMsg(String.valueOf(l), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(java.lang.Object, java.util.logging.Level)
-	 */
-	public String log(Object o, Level level) {
-		if (o instanceof IStatus)
-			return logWorkbench((IStatus) o, level);
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return logWorkbench(fMyLogger.getGenericMsg(String.valueOf(o), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(short, java.util.logging.Level)
-	 */
-	public String log(short s, Level level) {
-		if (level == DEFAULT)
-			level = Level.FINEST;
-		if (isLogging(level))
-			return logWorkbench(fMyLogger.getGenericMsg(String.valueOf(s), level), level);
-		else
-			return NOLOG_DESCRIPTION;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxy.ILogRenderer2#log(java.lang.Throwable, java.util.logging.Level)
-	 */
-	public String log(Throwable t, Level level) {
-		if (t instanceof CoreException)
-			return logWorkbench(((CoreException) t).getStatus(), level);
-		if (level == DEFAULT)
-			level = Level.SEVERE;
-		if (isLogging(level)) {
-			return logWorkbench(t, level);
-		} else
-			return NOLOG_DESCRIPTION;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/ConsoleLogRenderer.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/ConsoleLogRenderer.java
deleted file mode 100644
index 0810e2d..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/ConsoleLogRenderer.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util.logger.proxyrender;
-
-import java.util.logging.Level;
-
-import org.eclipse.jem.util.logger.proxy.ILogRenderer;
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-
-/**
- * Log renderer to the console.
- * 
- * @since 1.0.0
- */
-public class ConsoleLogRenderer extends AbstractWorkBenchRenderer {
-
-	/**
-	 * Constructor taking a logger.
-	 * 
-	 * @param logger
-	 * 
-	 * @since 1.0.0
-	 */
-	public ConsoleLogRenderer(Logger logger) {
-		super(logger);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxyrender.AbstractWorkBenchRenderer#log(java.lang.String)
-	 */
-	public String log(String msg) {
-
-		System.out.println(msg);
-		return ILogRenderer.CONSOLE_DESCRIPTION;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxyrender.AbstractWorkBenchRenderer#log(java.lang.String, java.util.logging.Level, boolean)
-	 */
-	protected void log(String msg, Level l, boolean loggedToWorkbench) {
-		if (!loggedToWorkbench || !consoleLogOn) {
-			if (l == Level.SEVERE)
-				System.err.println(msg);
-			else
-				System.out.println(msg);
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/DefaultPluginTraceRenderer.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/DefaultPluginTraceRenderer.java
deleted file mode 100644
index 0473318..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/DefaultPluginTraceRenderer.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util.logger.proxyrender;
-
-import java.io.*;
-import java.util.logging.Level;
-
-import org.eclipse.core.runtime.Platform;
-
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-
-/**
- * Logger that also logs to a trace file in the plugin's metadata area.
- * 
- * @since 1.0.0
- */
-public class DefaultPluginTraceRenderer extends AbstractWorkBenchRenderer {
-
-	/**
-	 * Name of the trace file in the metadata area.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static final String PluginTraceFileName = "/.log"; //$NON-NLS-1$
-
-	private String fTraceFile = null;
-
-	private PrintWriter traceFile = null;
-
-	/**
-	 * DefaultUILogRenderer constructor.
-	 * 
-	 * @param logger
-	 */
-	public DefaultPluginTraceRenderer(Logger logger) {
-		super(logger);
-
-		fTraceFile = Platform.getStateLocation(fMyBundle).toString() + PluginTraceFileName;
-		(new File(fTraceFile)).delete(); // Start from fresh ... do not want to leak on disk space
-
-	}
-
-	private void closeTraceFile() {
-		if (traceFile == null)
-			return;
-		try {
-			traceFile.flush();
-			traceFile.close();
-		} finally {
-			traceFile = null;
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxyrender.AbstractWorkBenchRenderer#log(java.lang.String)
-	 */
-	public String log(String msg) {
-
-		System.out.println(msg);
-
-		openTraceFile();
-		if (traceFile != null) {
-			traceFile.println(msg);
-			closeTraceFile();
-		}
-		return fTraceFile;
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.util.logger.proxyrender.AbstractWorkBenchRenderer#log(java.lang.String, java.util.logging.Level, boolean)
-	 */
-	protected void log(String msg, Level l, boolean loggedToWorkbench) {
-		if (!loggedToWorkbench || !consoleLogOn) {
-			if (l == Level.SEVERE)
-				System.err.println(msg);
-			else
-				System.out.println(msg);
-		}
-
-		openTraceFile();
-		if (traceFile != null) {
-			traceFile.println(msg);
-			closeTraceFile();
-		}
-	}
-
-	private void openTraceFile() {
-		try {
-			traceFile = new PrintWriter(new FileOutputStream(fTraceFile, true));
-		} catch (IOException e) {
-			// there was a problem opening the log file so log to the console
-			traceFile = null;
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/EclipseLogger.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/EclipseLogger.java
deleted file mode 100644
index 8591267..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/EclipseLogger.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util.logger.proxyrender;
-
-import java.util.logging.Level;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Plugin;
-import org.osgi.framework.Bundle;
-
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
- 
-/**
- * Get an Eclipse logger. This gets a logger that knows it is for a plugin. 
- * 
- * For each plugin, the following can be specified in the .option file:
- * 		{plugin-id}/debug/logTrace
- * 			The values valid for this are "true", "false", or "default". If true then loggers will be set into
- * 			trace mode. This means everything logged (even those that are filtered out due to not meeting log level)
- * 			will be traced out. If the value is "true" they will be traced to the system console.  
- * 			If it is "default" or not set at all, then it will be the value in the "org.eclipse.jem.util/debug/logTrace" .options setting.
- * 			If not set there, then default value will be false.
- * 
- * 		{plugin-id}/debug/logTraceFile
- * 			The values valid for this are "true", "false", or "default". If true then loggers will trace to 
- * 			the system console AND to the ".log" file in the plugins work area in the metadata section of the workspace.
- * 			If "false" then not traced to a trace file. 
- * 			If it is "default" or not set at all, then it will be the value in the "org.eclipse.jem.util/debug/logTraceFile" .options setting.
- * 			If not set there, then default value will be false.
- * 
- * 		{plugin-id}.debug/logLevel
- * 			The values valid for this are the names from <code>java.util.logging.Level</code>, and "default". These
- * 			are the trace cutoff levels to use. For instance, if the level was SEVERE, then only level SEVERE msgs
- * 			are logged. The rest are skipped. Or if the level was WARNING, then only level SEVERE and WARNING are
- * 			logged.
- * 			If it is "default" or not set at all, then it will be the value in the "org.eclipse.jem.util/debug/logLevel" .options setting.
- * 			If not set there, then default value will be WARNING.
- * 
- * 
- * @since 1.0.0
- */
-public class EclipseLogger extends Logger {
-
-	public static final String DEBUG_TRACE_OPTION = "/debug/logtrace"; //$NON-NLS-1$
-	public static final String DEBUG_TRACE_FILE_OPTION = "/debug/logtracefile"; //$NON-NLS-1$
-	public static final String DEBUG_LOG_LEVEL_OPTION = "/debug/loglevel"; // The logging level to use when no Hyaedes. (which we don't support at this time). //$NON-NLS-1$
-	public static final String DEFAULT_OPTION = "default";	// If option value is this, then the value from WTP Common plugin options will be used for both logTrace and logLevel.	 //$NON-NLS-1$
-	
-	/**
-	 * Return a logger based upon the Plugin. 
-	 * @param plugin
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public static Logger getEclipseLogger(Plugin plugin) {
-		return getEclipseLogger(plugin.getBundle());
-	}
-	
-	/**
-	 * Return a logger based upon the bundle.
-	 * 
-	 * @param bundle
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public static Logger getEclipseLogger(Bundle bundle) {
-		String id = bundle.getSymbolicName();
-		Logger logger = getLoggerIfExists(id);
-		if (logger != null)
-			return logger;
-		
-		logger = getLogger(id);	// Create one, we will now customize it.
-		
-		String pluginOption = Platform.getDebugOption(id + DEBUG_TRACE_OPTION);
-		if (pluginOption == null || "default".equalsIgnoreCase(pluginOption)) //$NON-NLS-1$
-			pluginOption = Platform.getDebugOption(JEMUtilPlugin.getDefault().getBundle().getSymbolicName() + DEBUG_TRACE_OPTION);
-		boolean logTrace = "true".equalsIgnoreCase(pluginOption); //$NON-NLS-1$
-
-		pluginOption = Platform.getDebugOption(id + DEBUG_TRACE_FILE_OPTION);
-		if (pluginOption == null || "default".equalsIgnoreCase(pluginOption)) //$NON-NLS-1$
-			pluginOption = Platform.getDebugOption(JEMUtilPlugin.getDefault().getBundle().getSymbolicName() + DEBUG_TRACE_FILE_OPTION);
-		boolean logTraceFile = "true".equalsIgnoreCase(pluginOption); //$NON-NLS-1$
-		
-		pluginOption = Platform.getDebugOption(id + DEBUG_LOG_LEVEL_OPTION);
-		if (pluginOption == null || "default".equalsIgnoreCase(pluginOption)) //$NON-NLS-1$
-			pluginOption = Platform.getDebugOption(JEMUtilPlugin.getDefault().getBundle().getSymbolicName() + DEBUG_LOG_LEVEL_OPTION);
-		
-		Level logLevel = Level.WARNING;
-		if (pluginOption != null) {
-			try {
-				logLevel = Level.parse(pluginOption);
-			} catch (IllegalArgumentException e) {
-			}
-		}
-		
-		if (logTrace)
-			logger.setTraceMode(true);
-		logger.setLevel(logLevel);
-		if (!logTraceFile)
-			logger.setRenderer(new ConsoleLogRenderer(logger));
-		else
-			logger.setRenderer(new DefaultPluginTraceRenderer(logger));
-		
-		return logger;
-	}
-	
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/IMsgLogger.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/IMsgLogger.java
deleted file mode 100644
index 58f45d5..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/logger/proxyrender/IMsgLogger.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.jem.util.logger.proxyrender;
-
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-/**
- * Interface for a message logger.
- * 
- * @since 1.0.0
- */
-public interface IMsgLogger {
-	public Logger getMsgLogger();
-}
diff --git a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/plugin/JEMUtilPlugin.java b/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/plugin/JEMUtilPlugin.java
deleted file mode 100644
index a7b9b8f..0000000
--- a/plugins/org.eclipse.jem.util/jemutil/org/eclipse/jem/util/plugin/JEMUtilPlugin.java
+++ /dev/null
@@ -1,399 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- *  $$RCSfile: JEMUtilPlugin.java,v $$
- *  $$Revision: 1.5 $$  $$Date: 2006/05/17 20:13:45 $$ 
- */
-package org.eclipse.jem.util.plugin;
-
-import java.io.File;
-import java.text.MessageFormat;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.osgi.framework.Bundle;
-
-import org.eclipse.jem.internal.util.emf.workbench.ProjectResourceSetImpl;
-import org.eclipse.jem.internal.util.emf.workbench.WorkspaceResourceNotifier;
-import org.eclipse.jem.internal.util.emf.workbench.nls.EMFWorkbenchResourceHandler;
-import org.eclipse.jem.util.emf.workbench.ProjectResourceSet;
-import org.eclipse.jem.util.emf.workbench.ResourceHandler;
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-
-/**
- * Plugin for EMFWorkbench utils.
- * 
- * @since 1.0.0
- */
-public class JEMUtilPlugin extends Plugin {
-
-	public static final String ID = "org.eclipse.jem.util"; //$NON-NLS-1$
-	
-	/**
-	 * Plugin id of this plugin.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static final String PLUGIN_ID = ID;	
-
-	/**
-	 * UI Context extension point.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static final String UI_CONTEXT_EXTENSION_POINT = "uiContextSensitiveClass"; //$NON-NLS-1$
-
-	/**
-	 * UITester element name.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static final String UI_TESTER_EXTENSION_POINT = "uiTester"; //$NON-NLS-1$
-	
-	/**
-	 * Protocol for workspace
-	 * 
-	 * @since 1.0.0
-	 */
-	public static final String WORKSPACE_PROTOCOL = "workspace"; //$NON-NLS-1$
-
-	/**
-	 * Protocol for platform uri's. i.e. "platform:/..."
-	 * 
-	 * @since 1.0.0
-	 *  
-	 */
-	public static final String PLATFORM_PROTOCOL = "platform"; //$NON-NLS-1$
-
-	/**
-	 * Resource indication in platform protocol. Indicates url is for a resource in the workspace. i.e. "platform:/resource/projectname/..."
-	 * 
-	 * @since 1.0.0
-	 */
-	public static final String PLATFORM_RESOURCE = "resource"; //$NON-NLS-1$
-
-	/**
-	 * Plugin indication in platform protocol. Indicates url is for a file/directory in the plugins area. i.e. "platform:/plugin/pluginid/..."
-	 * 
-	 * @since 1.0.0
-	 */
-	public static final String PLATFORM_PLUGIN = "plugin"; //$NON-NLS-1$
-
-	private static WorkspaceResourceNotifier sharedCache;
-
-	private static ResourceSet pluginResourceSet;
-
-	private static String[] GLOBAL_LOADING_PLUGIN_NAMES;
-
-	private static JEMUtilPlugin DEFAULT;
-
-	public JEMUtilPlugin() {
-		super();
-		DEFAULT = this;
-	}
-
-	/**
-	 * Get the workspace. Just use ResourcePlugin.getWorkspace() instead.
-	 * 
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public static IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-
-	/**
-	 * Get the plugin instance.
-	 * 
-	 * @return plugin instance.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static JEMUtilPlugin getDefault() {
-		return DEFAULT;
-	}
-
-	/**
-	 * Gets the sharedCache.
-	 * <p>
-	 * This is not meant to be called by clients.
-	 * </p>
-	 * 
-	 * @return a WorkspaceResourceNotifier
-	 * @since 1.0.0
-	 */
-	public static WorkspaceResourceNotifier getSharedCache() {
-		if (sharedCache == null)
-			sharedCache = new WorkspaceResourceNotifier();
-		return sharedCache;
-	}
-
-	/**
-	 * Sets the sharedCache.
-	 * <p>
-	 * This is not meant to be called by clients.
-	 * </p>
-	 * 
-	 * @param sharedCache
-	 *            The sharedCache to set
-	 * @since 1.0.0
-	 */
-	public static void setSharedCache(WorkspaceResourceNotifier aSharedCache) {
-		sharedCache = aSharedCache;
-	}
-
-	/**
-	 * @deprecated use createIsolatedResourceSet(IProject)
-	 */
-	public static ResourceSet createIsolatedResourceSet() {
-		return null;
-	}
-
-	/**
-	 * Add an Adapter. You can use this api to listen for any shared resource being loaded or removed from any ProjectResourceSet in the Workbench
-	 * instead of trying to listen to each individual ProjectResourceSet.
-	 * 
-	 * @param adapter
-	 * 
-	 * @since 1.0.0
-	 */
-	public static void addWorkspaceEMFResourceListener(Adapter adapter) {
-		if (adapter != null && !getSharedCache().eAdapters().contains(adapter))
-			getSharedCache().eAdapters().add(adapter);
-	}
-
-	/**
-	 * Removes the adapter.
-	 * 
-	 * @param adapter
-	 * 
-	 * @see #addWorkspaceEMFResourceListener(Adapter)
-	 * @since 1.0.0
-	 */
-	public static void removeWorkspaceEMFResourceListener(Adapter adapter) {
-		if (adapter != null)
-			getSharedCache().eAdapters().remove(adapter);
-	}
-
-	/**
-	 * Is this plugin active.
-	 * 
-	 * @return <code>true</code> if active
-	 * 
-	 * @since 1.0.0
-	 */
-	public static boolean isActivated() {
-		Bundle bundle = Platform.getBundle(ID);
-		if (bundle != null)
-			return bundle.getState() == Bundle.ACTIVE;
-		return false;
-	}
-
-	/**
-	 * This method will be called when a WorkbenchContext is instantiated on an EMFNature.
-	 * <p>
-	 * This not meant to be called by clients.
-	 * </p>
-	 * 
-	 * @param aResourceSet
-	 * 
-	 * @see plugin.xml#ResourceHandlerExtension extension point.
-	 * @since 1.0.0
-	 */
-	public void addExtendedResourceHandlers(ProjectResourceSet aResourceSet) {
-		if (aResourceSet == null)
-			return;
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IExtensionPoint pct = registry.getExtensionPoint(getBundle().getSymbolicName(), "ResourceHandlerExtension"); //$NON-NLS-1$
-		IExtension[] extension = pct.getExtensions();
-		IExtension config;
-		for (int l = 0; l < extension.length; ++l) {
-			config = extension[l];
-			IConfigurationElement[] cElems = config.getConfigurationElements();
-			ResourceHandler handler = null;
-			for (int i = 0; i < cElems.length; i++) {
-				try {
-					handler = (ResourceHandler) cElems[i].createExecutableExtension("run"); //$NON-NLS-1$
-
-				} catch (Exception ex) {
-					handler = null;
-				}
-				if (handler != null)
-					aResourceSet.add(handler);
-			}
-		}
-	}
-
-	/**
-	 * Delete the contents of the directory (and the directory if deleteRoot is true).
-	 * @param root
-	 * @param deleteRoot <code>true</code> to delete the root directory too.
-	 * @param monitor 
-	 * @return <code>true</code> if there was an error deleting anything.
-	 * 
-	 * @since 1.1.0
-	 */
-	public static boolean deleteDirectoryContent(File root, boolean deleteRoot, IProgressMonitor monitor) {
-		boolean error = false;
-		if (root.canRead()) {
-			if (root.isDirectory()) {
-				File[] files = root.listFiles();
-				monitor.beginTask(MessageFormat.format(EMFWorkbenchResourceHandler.getString("ProjectUtil_Delete_1"), new Object[] {root.getName()}), files.length+(deleteRoot ? 1 : 0)); //$NON-NLS-1$
-				for (int i = 0; i < files.length; i++) {
-					if (files[i].isDirectory())
-						error |= deleteDirectoryContent(files[i], true, new SubProgressMonitor(monitor, 1));
-					else {
-						error |= !files[i].delete();
-					}
-					monitor.worked(1);
-				}
-			} else {
-				monitor.beginTask(MessageFormat.format(EMFWorkbenchResourceHandler.getString("ProjectUtil_Delete_1"), new Object[] {root.getName()}), 1);				 //$NON-NLS-1$
-			}
-			if (deleteRoot) {
-				error |= !root.delete();
-				monitor.worked(1);
-			}
-			monitor.done();
-		} else {
-			error = true;
-		}
-		return error;
-	}
-	
-	/**
-	 * Add a clean resource changelistener.
-	 * @param listener
-	 * @param eventMask mask of event types to listen for in addition to ones that are necessary for clean. Use 0 if no additional ones.
-	 * 
-	 * @since 1.1.0
-	 */
-	public static void addCleanResourceChangeListener(CleanResourceChangeListener listener, int eventMask) {
-		// PRE_BUILD: Handle Clean.
-		// TODO Until https://bugs.eclipse.org/bugs/show_bug.cgi?id=101942 is fixed, we must do POST_BUILD, that will probably be sent because a clean will cause a build to occur which should cause a delta.
-		ResourcesPlugin.getWorkspace().addResourceChangeListener(listener, eventMask | IResourceChangeEvent.POST_BUILD);		
-	}
-	
-	/**
-	 * A resource listener that can be used in addition to listen for Clean requests and process them.
-	 * <p>
-	 * Use <code>{@link IResourceChangeEvent#PRE_BUILD}</code> when adding as listener to get the
-	 * clean events.
-	 * <p>
-	 * <b>Note</b> : TODO Until https://bugs.eclipse.org/bugs/show_bug.cgi?id=101942 is fixed, you must do POST_BUILD, that will probably be sent because a clean will cause a build to occur which should cause a delta.
-	 * @since 1.1.0
-	 */
-	public abstract static class CleanResourceChangeListener implements IResourceChangeListener {
-		
-		public void resourceChanged(IResourceChangeEvent event) {
-			// Subclasses can override this to handle more events than just clean.
-			if (event.getBuildKind() == IncrementalProjectBuilder.CLEAN_BUILD) {
-				if (event.getSource() instanceof IProject)
-					cleanProject((IProject) event.getSource());
-				else if (event.getSource() instanceof IWorkspace)
-					cleanAll();				
-			}
-		}
-
-		/**
-		 * Clear out the project.
-		 * @param project
-		 * 
-		 * @since 1.1.0
-		 */
-		protected abstract void cleanProject(IProject project);
-
-		/**
-		 * Clean all.
-		 * <p>
-		 * By default this will simply call a clean project on each open project. Subclasses should override and either
-		 * add more function to clear out non-project data and then call super. Or if they can handle all of the projects
-		 * in a faster way, then can completely handle this.
-		 * 
-		 * @since 1.1.0
-		 */
-		protected void cleanAll() {
-			IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-			for (int i = 0; i < projects.length; i++) {
-				IProject project = projects[i];
-				if (project.isOpen()) {
-					cleanProject(project);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Get the project resource set for the plugin (there is one for the whole system).
-	 * 
-	 * @return system-wide resource set.
-	 * @since 1.0.0
-	 */
-	public static ResourceSet getPluginResourceSet() {
-		if (pluginResourceSet == null)
-			pluginResourceSet = new ProjectResourceSetImpl(null);
-		return pluginResourceSet;
-	}
-
-	/**
-	 * Set the system-wide resource set.
-	 * 
-	 * @param set
-	 * @since 1.0.0
-	 */
-	public static void setPluginResourceSet(ResourceSet set) {
-		pluginResourceSet = set;
-	}
-
-	/**
-	 * Get the global loading plugin names.
-	 * <p>
-	 * This is not meant to be called by clients.
-	 * </p>
-	 * 
-	 * @return
-	 * 
-	 * @since 1.0.0
-	 */
-	public static String[] getGlobalLoadingPluginNames() {
-		if (GLOBAL_LOADING_PLUGIN_NAMES == null)
-			GLOBAL_LOADING_PLUGIN_NAMES = readGlobalLoadingPluginNames();
-		return GLOBAL_LOADING_PLUGIN_NAMES;
-	}
-
-	/**
-	 * Get the Logger for this plugin.
-	 * 
-	 * @return logger for this plugin.
-	 * 
-	 * @since 1.0.0
-	 */
-	public static Logger getLogger() {
-		return Logger.getLogger(ID);
-	}
-
-	private static String[] readGlobalLoadingPluginNames() {
-		IExtensionRegistry reg = Platform.getExtensionRegistry();
-		IExtensionPoint exPoint = reg.getExtensionPoint(ID, "globalPluginResourceLoad"); //$NON-NLS-1$
-		IExtension[] extensions = exPoint.getExtensions();
-		String[] names = new String[extensions.length];
-		if (extensions.length > 0) {
-			for (int i = 0; i < extensions.length; i++)
-				names[i] = extensions[i].getContributor().getName();
-		}
-		return names;
-	}
-
-}
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/.classpath b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/.cvsignore b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/.project b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/.project
deleted file mode 100644
index 5e29c82..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.perfmsr.core</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/PERFMSR.README.txt b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/PERFMSR.README.txt
deleted file mode 100644
index 3186a36..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/PERFMSR.README.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-This is a stub plugin for perfmsr. It is here just so that org.eclipse.jem.util can compile.
-
-It should not be an open project during normal usage. Whenever any of the files in this project
-are changed, "perfmsr.jardesc" should be used to create the new changed appropriate jar. Do this by:
-
-1) Select perfmsr.jardesc
-2) On popup menu select "Create JAR"
-3) Hit "Finish"
-4) Commit all changes to CVS.
-5) Go to org.eclipse.jem.util project, select the org.eclipse.perfmsr.core.stub folder
-   and select Replace->Latest from HEAD. This will cause your just committed changes
-   from step 4 to be put into org.eclipse.jem.util and will be picked up for that
-   plugin to compile against.
-6) Either close or delete the org.eclipse.perfmsr.core.stuf project from the workspace.
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/about.html b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/about.html
deleted file mode 100644
index f9f238e..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/about.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>30th March, 2004</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the EPL, any Contributions, as defined in the EPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the EPL and can be made available to others under the terms of the EPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the EPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the EPL and such Modifications can be made available to others under the terms of
-the EPL.</p>
-
-<p><b>Version:</b> v20040624a
-
-</body>
-</html>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/build.properties b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/build.properties
deleted file mode 100644
index 3a4db57..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/build.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = plugin.xml,\
-               plugin.properties,\
-               *.jar
-source.perfmsr.jar = src/
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/perfmsr.jar b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/perfmsr.jar
deleted file mode 100644
index 1ebba8f..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/perfmsr.jar
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/perfmsr.jardesc b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/perfmsr.jardesc
deleted file mode 100644
index d48e223..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/perfmsr.jardesc
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<jardesc>
-    <jar path="org.eclipse.perfmsr.core.stub/perfmsr.jar"/>
-    <options buildIfNeeded="true" compress="true" descriptionLocation="/org.eclipse.perfmsr.core.stub/perfmsr.jardesc" exportErrors="true" exportWarnings="true" overwrite="false" saveDescription="true" useSourceFolders="false"/>
-    <manifest generateManifest="true" manifestLocation="/VEScrapProject/MANIFEST.mf" manifestVersion="1.0" reuseManifest="false" saveManifest="false" usesManifest="true">
-        <sealing sealJar="false">
-            <packagesToSeal/>
-            <packagesToUnSeal/>
-        </sealing>
-    </manifest>
-    <selectedElements exportClassFiles="true" exportJavaFiles="true" exportOutputFolder="false">
-        <javaElement handleIdentifier="=org.eclipse.perfmsr.core.stub/src"/>
-    </selectedElements>
-</jardesc>
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/plugin.properties b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/plugin.properties
deleted file mode 100644
index 5720eeb..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/plugin.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-Plugin.name=Performance Monitor
-
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/plugin.xml b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/plugin.xml
deleted file mode 100644
index 596926d..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/plugin.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.perfmsr.core"
-   name="%Plugin.name"
-   version="3.0.0"
-   provider-name="Eclipse.org"
-   class="org.eclipse.perfmsr.core.PerfMsrCorePlugin">
-
-   <runtime>
-      <library name="perfmsr.jar"><export name="*"/></library>
-   </runtime>
-   
-   <requires>
-      <import plugin="org.eclipse.core.runtime"/>
-   </requires>
-</plugin>
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/src/org/eclipse/perfmsr/core/IPerformanceMonitor.java b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/src/org/eclipse/perfmsr/core/IPerformanceMonitor.java
deleted file mode 100644
index bd992c7..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/src/org/eclipse/perfmsr/core/IPerformanceMonitor.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.perfmsr.core;
-
-/**
- * Take snapshots of the various performance counters.
- * ************* This is just a stub of the real interface to get org.eclipse.jem.util 
- *               to compile. It is not usable by itself. ****************************
- */
-public interface IPerformanceMonitor
-{
-	/**
-	 * These constants control how much information is gathered for a particular snapshot.
-	 * They are or'ed together and passed into the snapshot method.  
-	 */
-	interface Types
-	{
-		/** 
-		 * 1 - Write out the performance counters from the operating system. These
-		 * include working set, peak working set, elapsed time, user time, and 
-		 * kernel time.
-		 */
-		int OperatingSystemCounters		= 1;
-		
-		/**
-		 * 2 - Write out the global performance info. This includes things like the total
-		 * committed memory for the entire system.
-		 * 
-		 * This function depends on the GetPerformanceInfo() function being available in
-		 * the Windows psapi.dll. This is available in XP but is usually not available
-		 * in Win/2000. If it is not available then this function throws an UnsupportedOperationException.
-		 */
-		int GlobalSystemCounters		= 2;
-		
-		/**
-		 * 4 - Write out the size of the Java Heap.
-		 */
-		int JavaHeapSize				= 4;
-
-		/**
-		 * 8 - Write out how much of the Java heap is being used. This calls the 
-		 * garbage collector so it may skew timing results.
-		 */
-		int JavaHeapUsed				= 8;
-		
-		/**
-		 * 16 - The plugin startup and size information.
-		 */
-		int PluginInfo					= 16;
-		
-		/** 0xffff - Everything. */
-		int All							= 0xffff;	
-	}
-	
-	/**
-	 * Add some more "extra" variations. 
-	 * 
-	 * The variations that are in effect are made up of these extra variations plus any variations
-	 * that may have been set with the setVar() method.
-	 * 
-	 * @param varList a comma separated list of variations
-	 */
-	public void addVarAppend(String varList);
-	
-	/**
-	 * Set the driver name. 
-	 * 
-	 * @param driver a label that identifies the driver that is being tested. If it is a WSAD
-	 * driver, this will usually be set by the extension.
-	 */
-	public void setDriver(String driver);
-	
-	/**
-	 * Set the location of the performance measurement file, that is the place where
-	 * the measurements are stored.
-	 * 
-	 * @param logFile the file name of where the log should be written. Usually this is fully qualified
-	 * path name. For example "x:\logs\timer.xml".
-	 */
-	public void setLogFile(String logFile);
-	
-	/**
-	 * Set the performance monitor to be on or off. If it is off then most of the other 
-	 * operations will no-op.
-	 * 
-	 * The default is for the performance monitor to be off unless it's special environment variable is set. 
-	 * When called from the UI, the UI should call this to make sure that it is on.
-	 */
-	public void setIsOn(boolean isOn);
-	
-	/**
-	 * Sets the test case number for this measurement run.
-	 *  
-	 * @param testd test case identifier
-	 */
-	public void setTestd(int testd);
-	
-	/**
-	 * Sets the test case name. If will cause a new test case to be created if it does not already exist.
-	 * 
-	 * @param testName a simple (short) test case name. In the case of JUnit test cases, it would usually 
-	 * be the JUnit name.
-	 */
-	public void setTestName(String testName);
-	
-	/**
-	 * Set the variations that are in effect.
-	 * 
-	 * @param var a comma delimited string of variation numbers
-	 */
-	public void setVar(String var);
-	
-	/**
-	 * Set the upload host
-	 * 
-	 * @param host DNS name of the upload host
-	 */
-	public void setUploadHost(String host);
-	
-	/**
-	 * Set the upload port
-	 * 
-	 * @param port upload port
-	 */
-	public void setUploadPort(int port);
-	
-	/**
-	 * Set the upload userid
-	 * 
-	 * @param userid
-	 */
-	public void setUploadUserid(String userid);
-	
-	/**
-	 * Take a snapshot of some default performance measurements.
-	 * 
-	 * @param step this identifies the step that the snapshot is for
-	 */
-	void snapshot(int step);
-	
-	/**
-	 * Take a snapshot of the selected performance measurements.
-	 * 
-	 * @param step this identifies the step that the snapshot is for
-	 * 
-	 * @param types This controls which measurements are selected. It is an or'd together
-	 * list of the IPerformanceMonitor.Types constants.
-	 * 
-	 * @see IPerformanceMonitor.Types 
-	 */
-	void snapshot(int step, int types);
-	
-	/**
-	 * Write the comment to the performance measurement file.
-	 * 
-	 * @param comment
-	 */
-	void writeComment(String comment);
-	
-	/**
-	 * Upload the results to the server. This causes the file to be
-	 * closed, and the monitor to be placed into the finished state.
-	 * 
-	 * This method can only be called if the uploadhost, uploadport and uploaduserid
-	 * have been configured before hand.
-	 * 
-	 * @param description an optional description (it can be null)
-	 * 
-	 * @return some status information
-	 */
-	public Upload.Status upload(String description);
-//	
-//	/**
-//	 * Upload the results to the server. This causes the file to be
-//	 * closed, and the monitor to be placed into the finished state.
-//	 * 
-//	 * @param host the host name that the file is being sent to
-//	 * @param port the port on the host
-//	 * @param userid the userid that is doing the upload
-//	 * @param description an optional description (it can be null)
-//	 * 
-//	 * @return some status information
-//	 */
-//	Upload.Status upload(String host, int port, String userid, String description);
-
-
-}
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/src/org/eclipse/perfmsr/core/PerfMsrCorePlugin.java b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/src/org/eclipse/perfmsr/core/PerfMsrCorePlugin.java
deleted file mode 100644
index 655ba2a..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/src/org/eclipse/perfmsr/core/PerfMsrCorePlugin.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.perfmsr.core;
-
-import org.eclipse.core.runtime.Plugin;
- 
-
-/**
- * ************* This is just a stub of the real class to get org.eclipse.jem.util 
- *               to compile. It is not usable by itself. ****************************
- * @since 1.0.0
- */
-public class PerfMsrCorePlugin extends Plugin {
-	
-	public static IPerformanceMonitor getPerformanceMonitor(boolean bool) {
-		return null;
-	}
-
-}
diff --git a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/src/org/eclipse/perfmsr/core/Upload.java b/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/src/org/eclipse/perfmsr/core/Upload.java
deleted file mode 100644
index 65fa677..0000000
--- a/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/src/org/eclipse/perfmsr/core/Upload.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
-
-
- */
-package org.eclipse.perfmsr.core;
- 
-
-/**
- * Upload.
- * ************* This is just a stub of the real interface to get org.eclipse.jem.util 
- *               to compile. It is not usable by itself. ****************************
- */
-public interface Upload {
-	public static class Status {
-		public boolean success;
-	}
-}
diff --git a/plugins/org.eclipse.jem.util/plugin.properties b/plugins/org.eclipse.jem.util/plugin.properties
deleted file mode 100644
index a53db6a..0000000
--- a/plugins/org.eclipse.jem.util/plugin.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-# Copyright (c) 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-#
-# $Source: /cvsroot/webtools/common.move/webtools.common.git/plugins/org.eclipse.jem.util/plugin.properties,v $
-# $Revision: 1.2 $  $Date: 2005/02/15 23:07:45 $
-#
-
-
-pluginName=Java EMF Model Utilities
-providerName = Eclipse.org
diff --git a/plugins/org.eclipse.jem.util/plugin.xml b/plugins/org.eclipse.jem.util/plugin.xml
deleted file mode 100644
index 591be42..0000000
--- a/plugins/org.eclipse.jem.util/plugin.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-    
-<!-- Extension point to register ResourceHandlers that will always be added to 
-	new WorkbenchContexts -->
-   <extension-point id="ResourceHandlerExtension" name="ResourceHandlerExtension"/>
-   <extension-point id="globalPluginResourceLoad" name="Global Plugin Resource Load"/>
-   <extension-point id="nature_registration" name="EMF Nature registration"/>
-   <extension-point id="internalWorkbenchContextFactory" name="Internal Workbench Context Factory"/>
-   <extension-point id="uiContextSensitiveClass" name="UI Context Sensitive Class" schema="schema/uiContextSensitiveClass.exsd"/>
-   <extension-point id="uiTester" name="UI Tester" schema="schema/uiTester.exsd"/>   
-   
-</plugin>
diff --git a/plugins/org.eclipse.jem.util/property_files/emfworkbench.properties b/plugins/org.eclipse.jem.util/property_files/emfworkbench.properties
deleted file mode 100644
index cad9483..0000000
--- a/plugins/org.eclipse.jem.util/property_files/emfworkbench.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-# Copyright (c) 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-EMFWorkbenchContextBase_ERROR_0=IWAE0003E Method not yet implemented.
-EMFWorkbenchContextBase_ERROR_1=IWAE0005E Project can not be null.
-EMFWorkbenchContextBase_ERROR_2=IWAE0006E Attempt to create resource set with null project
-EMFNatureRegistry_ERROR_0=IWAE0007E Duplicate EMF nature registration for id: {0}
-EMFWorkbenchContextFactory_UI_0=The project should not be null.
-EMFWorkbenchContextFactory_UI_1=The project \"{0}\" is not accessible.
-
-ProjectUtil_Delete_1=Deleting \"{0}\".
\ No newline at end of file
diff --git a/plugins/org.eclipse.jem.util/schema/uiContextSensitiveClass.exsd b/plugins/org.eclipse.jem.util/schema/uiContextSensitiveClass.exsd
deleted file mode 100644
index df70e98..0000000
--- a/plugins/org.eclipse.jem.util/schema/uiContextSensitiveClass.exsd
+++ /dev/null
@@ -1,169 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.jem.util">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.jem.util" id="uiContextSensitiveClass" name="UI Context Sensitive Class"/>
-      </appInfo>
-      <documentation>
-         Components are often designed in such a way that the &quot;Headless&quot; or non-graphical portions are separate from the Graphical User Interface (GUI) portions. Sometimes this is done to follow good design principles, other times there is a specific use case for doing so. When plugins follow this practice because they must vary their behavior based on whether they are running in a headless environment or a graphical environment, they often need to choose the correct implementation of a particular type. The org.eclipse.jem.util.uiContextSensitiveClass extension point provided by the JEM component solves exactly this problem.
-&lt;p&gt;    
-To use the extension point, you must provide two extensions that are linked by a key. The key is a unique String-based value that you will later use to instanitate your class.
-&lt;p&gt;
-The first usage of the extension specifies your key, and the Headless context, and the class that should be instantiated for this (key, context) pair. This means in the headless environment this class will be instantiated when requested.
-&lt;p&gt;
-The second extension specifies the UI context and the same key, but a different implementation designed for graphical environments. This means in the UI environment this other class will be instantiated when requested.
-&lt;p&gt;
-The actual request is done in your code via:
-&lt;pre&gt;
-IMyInterface instance = (IMyInterface) UIContextDetermination.createInstance(&quot;myKey&quot;);
-&lt;/pre&gt;
-where &lt;code&gt;&quot;myKey&quot;&lt;/code&gt; is the key used on both extensions. It will then choose either the UI or the Headless extension depending upon the context.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="uiContextSensitiveClass" minOccurs="1" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="uiContextSensitiveClass">
-      <annotation>
-         <documentation>
-            An extension point that defines an instance of a class and its appropriate context (UI or Headless)
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="key" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The key that should be used to create an instance of the Context Sensitive super class/interface.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="className" type="string" use="required">
-            <annotation>
-               <documentation>
-                  A concrete implementation for either a UI or Headless context.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="context" use="required">
-            <annotation>
-               <documentation>
-                  One of &quot;UI&quot; or &quot;Headless&quot; This is case-sensitive. It must match exactly as shown here.
-               </documentation>
-            </annotation>
-            <simpleType>
-               <restriction base="string">
-                  <enumeration value="UI">
-                  </enumeration>
-                  <enumeration value="Headless">
-                  </enumeration>
-               </restriction>
-            </simpleType>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         6.0
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         Usage for the UI context:
-&lt;pre&gt;
-   &lt;extension
-       id=&quot;context.Sensitive.Class.workingCopyManager&quot;
-       name=&quot;Working Copy Manager - UI Context Class&quot;
-       point=&quot;org.eclipse.jem.util.ContextSensitiveClass&quot;&gt;
-     &lt;uiContextSensitiveClass
-       context=&quot;UI&quot;
-       key=&quot;workingCopyManager&quot;
-       className=&quot;com.ibm.wtp.common.ui.WTPUIWorkingCopyManager&quot;/&gt;
-   &lt;/extension&gt;
-&lt;/pre&gt;
-&lt;br&gt;
-Usage for the Headless context:
-&lt;pre&gt;
-   &lt;extension
-       id=&quot;context.Sensitive.Class.workingCopyManager&quot;
-       name=&quot;Working Copy Manager - Headless Context Class&quot;
-       point=&quot;org.eclipse.jem.util.ContextSensitiveClass&quot;&gt;
-     &lt;uiContextSensitiveClass
-         context=&quot;Headless&quot;
-         key=&quot;workingCopyManager&quot;
-         className=&quot;com.ibm.wtp.common.ui.WTPHeadlessWorkingCopyManager&quot;/&gt;
-   &lt;/extension&gt;
-&lt;/pre&gt;
-&lt;br&gt;
-And finally the retrieval of the class for the current context:
-
-&lt;pre&gt;
-IWorkingCopyManager manager = (IWorkingCopyManager) UIContextDetermination.createInstance(&quot;workingCopyManager&quot;);
-&lt;/pre&gt;
-
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         See &lt;code&gt;org.eclipse.jem.util.UIContextDetermination&lt;/code&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) IBM 2003.
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.jem.util/schema/uiTester.exsd b/plugins/org.eclipse.jem.util/schema/uiTester.exsd
deleted file mode 100644
index 729ab32..0000000
--- a/plugins/org.eclipse.jem.util/schema/uiTester.exsd
+++ /dev/null
@@ -1,128 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.jem.util">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.jem.util" id="uiTester" name="UI Tester"/>
-      </appInfo>
-      <documentation>
-         This is used to tell JEM that it is running in a non-HEADLESS environment. Typically UI environment is non-HEADLESS. The default if there are no implementers of this extension point that return true is HEADLESS.
-&lt;p&gt;
-A HEADLESS environment is typically a batch situation where there is no UI and the workspace is used for one operation and then terminated. Most headless tasks are done under one operation and the JavaReflectionSynchronizer may not have a chance to flush a bad reflection before the real type needs to be found and can be found. So what would happen is if a class was created during this one operation it would not be found because the notifications had not yet gone out. 
-&lt;p&gt;
-In a UI environment the operations are typically short and do only a few things and the results aren&apos;t needed until after the operation has completed. In that case it is more efficient to not keep checking if a class has appeared everytime a request is made, instead it will wait for the notification of the added class to appear before resetting the definition to allow checking again later.
-&lt;p&gt;
-If there is more than one implementer of this interface in the application, then it will go through each of them once until one returns true. As soon as one returns true it will stop and mark the application as being non-HEADLESS. This will be done only once for the application. It will not be again until the next session of the application.
-&lt;p&gt;
-This is typically an internal extension point only. The JEM UI plugin will provide an implementation that will return true if the Platform UI is active. So this will normally not be needed to be implemented by most customers.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="uiTester"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="uiTester">
-      <annotation>
-         <documentation>
-            The uiTester definition element.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="className" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The class name of the UITester for this extension. It must implement &lt;samp&gt;org.eclipse.jem.util.UITester&lt;/samp&gt;.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.jem.util.UITester"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         1.0.0
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of an implementer: 
-
-&lt;p&gt;
-&lt;pre&gt;
- &lt;extension point=&quot;org.eclipse.jem.util.uiTester&quot;&gt;
-  &lt;uiTester
-   className=&quot;com.example.UITesterImplementation&quot;/&gt;
- &lt;/extension&gt;
-&lt;/pre&gt;
-&lt;/p&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         The &lt;samp&gt;className&lt;/samp&gt; attribute must be a fully-qualified class that implements the &lt;samp&gt;org.eclipse.jem.util.UITester&lt;/samp&gt; interface for the tester.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         There is no default implementation for this class.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2004, 2006 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which accompanies 
-this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.common.emf/.classpath b/plugins/org.eclipse.wst.common.emf/.classpath
deleted file mode 100644
index 96202d8..0000000
--- a/plugins/org.eclipse.wst.common.emf/.classpath
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="wtpemf/"/>
-	<classpathentry kind="src" path="workbench/"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
-		<accessrules>
-			<accessrule kind="accessible" pattern="org/eclipse/wst/common/**"/>
-		</accessrules>
-	</classpathentry>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.wst.common.emf/.cvsignore b/plugins/org.eclipse.wst.common.emf/.cvsignore
deleted file mode 100644
index 26458b4..0000000
--- a/plugins/org.eclipse.wst.common.emf/.cvsignore
+++ /dev/null
@@ -1,8 +0,0 @@
-bin
-runtime
-temp.folder
-build.xml
-org.eclipse.wst.common.emf_1.0.0.zip
-src.zip
-@dot
-javaCompiler...args
diff --git a/plugins/org.eclipse.wst.common.emf/.project b/plugins/org.eclipse.wst.common.emf/.project
deleted file mode 100644
index 5b5f0fe..0000000
--- a/plugins/org.eclipse.wst.common.emf/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.common.emf</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.wst.common.emf/.settings/org.eclipse.jdt.core.prefs b/plugins/org.eclipse.wst.common.emf/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 6c7418f..0000000
--- a/plugins/org.eclipse.wst.common.emf/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,63 +0,0 @@
-#Sat Mar 24 02:06:02 EDT 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=error
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nullReference=ignore
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=error
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLabel=error
-org.eclipse.jdt.core.compiler.problem.unusedLocal=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=ignore
-org.eclipse.jdt.core.compiler.source=1.3
diff --git a/plugins/org.eclipse.wst.common.emf/META-INF/MANIFEST.MF b/plugins/org.eclipse.wst.common.emf/META-INF/MANIFEST.MF
deleted file mode 100644
index 9328000..0000000
--- a/plugins/org.eclipse.wst.common.emf/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,19 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.wst.common.emf; singleton:=true
-Bundle-Version: 1.1.204.qualifier
-Bundle-Activator: org.eclipse.wst.common.internal.emf.plugin.EcoreUtilitiesPlugin
-Bundle-Vendor: %pluginProvider
-Bundle-Localization: plugin
-Export-Package: org.eclipse.wst.common.internal.emf.plugin;x-internal:=true,
- org.eclipse.wst.common.internal.emf.resource;x-friends:="org.eclipse.wst.common.modulecore",
- org.eclipse.wst.common.internal.emf.utilities;x-internal:=true
-Require-Bundle: org.eclipse.emf.ecore.xmi;bundle-version="[2.4.0,3.0.0)",
- org.eclipse.wst.common.frameworks;bundle-version="[1.1.200,2.0.0)",
- org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.jem.util;bundle-version="[2.0.100,3.0.0)"
-Eclipse-LazyStart: true
-Bundle-RequiredExecutionEnvironment: J2SE-1.4
-Bundle-ActivationPolicy: lazy
diff --git a/plugins/org.eclipse.wst.common.emf/about.html b/plugins/org.eclipse.wst.common.emf/about.html
deleted file mode 100644
index 2199df3..0000000
--- a/plugins/org.eclipse.wst.common.emf/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June, 2008</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in 
-("Content"). Unless otherwise indicated below, the Content is provided to you 
-under the terms and conditions of the Eclipse Public License Version 1.0 
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>. 
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the 
-Content is being redistributed by another party ("Redistributor") and different 
-terms and conditions may apply to your use of any object code in the Content. 
-Check the RedistributorÂ’s license that was provided with the Content. If no such 
-license exists, contact the Redistributor. Unless otherwise indicated below, the 
-terms and conditions of the EPL still apply to any source code in the Content 
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/plugins/org.eclipse.wst.common.emf/build.properties b/plugins/org.eclipse.wst.common.emf/build.properties
deleted file mode 100644
index ed37cff..0000000
--- a/plugins/org.eclipse.wst.common.emf/build.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = plugin.xml,\
-               META-INF/,\
-               about.html,\
-               plugin.properties,\
-               .,\
-               schema/
-jars.compile.order = .
-src.includes = component.xml,\
-               schema/
-output.. = bin/
-source.. = wtpemf/,\
-           workbench/
diff --git a/plugins/org.eclipse.wst.common.emf/component.xml b/plugins/org.eclipse.wst.common.emf/component.xml
deleted file mode 100644
index 9530d33..0000000
--- a/plugins/org.eclipse.wst.common.emf/component.xml
+++ /dev/null
@@ -1 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><component  xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.wst.common.emf"><component-depends unrestricted="true"></component-depends><plugin id="org.eclipse.wst.common.emf" fragment="false"/><plugin id="org.eclipse.wst.common.emfworkbench.integration" fragment="false"/></component>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/plugin.properties b/plugins/org.eclipse.wst.common.emf/plugin.properties
deleted file mode 100644
index fc83d04..0000000
--- a/plugins/org.eclipse.wst.common.emf/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2005, 2006 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-PackageURIMap=PackageURIMap
-pluginName=EMF Utilities
-pluginProvider=Eclipse.org
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/plugin.xml b/plugins/org.eclipse.wst.common.emf/plugin.xml
deleted file mode 100644
index dde6ad8..0000000
--- a/plugins/org.eclipse.wst.common.emf/plugin.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <extension-point id="packageURIMap" name="%PackageURIMap" schema="schema/packageURIMap.exsd"/>
-     <extension-point id="translatorExtension" name="translatorExtension" schema="schema/translatorExtension.exsd"/>
-
-<!-- Need to register the Ecore specific package mappings -->
-   <extension
-         point="org.eclipse.wst.common.emf.packageURIMap">
-      <map
-            uri="http://www.eclipse.org/emf/2002/Ecore"
-            prefix="ecore">
-      </map>
-      <map
-            uri="http://www.eclipse.org/emf/2002/Mapping"
-            prefix="mapping">
-      </map>
-<!-- Trick to get Mapping.xmi for MOF5 serialization -->
-      <map
-            uri="http://www.eclipse.org/emf/2002/Mapping"
-            prefix="Mapping">
-      </map>
-   </extension>
-   
-      <extension
-         point="org.eclipse.jem.util.uiContextSensitiveClass">
-      <uiContextSensitiveClass
-            context="Headless"
-            key="rendererFactory"
-            className="org.eclipse.wst.common.internal.emf.resource.EMF2DOMRendererFactory">
-      </uiContextSensitiveClass>
-   </extension>
-
-</plugin>
diff --git a/plugins/org.eclipse.wst.common.emf/prepareforpii.xml b/plugins/org.eclipse.wst.common.emf/prepareforpii.xml
deleted file mode 100644
index 8007604..0000000
--- a/plugins/org.eclipse.wst.common.emf/prepareforpii.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<project name="PrepareForPII" default="main" basedir=".">
-		
-	<!-- Setup temp variables -->
-	<target name="init">
-		<property name="nlsDir" value="d:/NLS/Corona/0526"/>
-		<property name="plugin" value="com.ibm.wtp.emf"/>
-		<property name="plugindir" value="d:/workspaceCorona/${plugin}"/>
-		<property name="outputDir" value="${nlsDir}/${plugin}"/>
-		
-	
-	</target>
-
-	<!-- Create the destination dir -->
-	<target name="nlsDir" depends="init">
-		<mkdir dir="${nlsDir}"/>
-	</target>
-	
-	<!-- Create the destination dir -->
-	<target name="plugindir" depends="nlsDir">
-		<delete dir="${outputDir}"/>
-		<mkdir dir="${outputDir}"/>
-	</target>
-
-	<!-- Move the files to the correct locations in the workspace. -->
-	<target name="main" depends="plugindir">
-	
-		<messageIdGen folderPath = "${plugindir}" componentId = "E" />
-		
-		<copy todir = "${outputDir}/wtpemf" >
-			 <fileset dir="${plugindir}/wtpemf">
-           	  <include name="**/*.properties"/>
-  			 </fileset>
-  		</copy>
-  		
-  		
-	</target>
-</project>
diff --git a/plugins/org.eclipse.wst.common.emf/schema/packageURIMap.exsd b/plugins/org.eclipse.wst.common.emf/schema/packageURIMap.exsd
deleted file mode 100644
index 4f9d955..0000000
--- a/plugins/org.eclipse.wst.common.emf/schema/packageURIMap.exsd
+++ /dev/null
@@ -1,113 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.common.emf">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.common.emf" id="packageURIMap" name="%PackageURIMap"/>
-      </appInfo>
-      <documentation>
-         This extension point is used to register package mappings.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="map" minOccurs="1" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="map">
-      <complexType>
-         <attribute name="uri" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="prefix" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         [Enter extension point usage example here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         [Enter API information here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         [Enter information about supplied implementation of this extension point.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which accompanies 
-this distribution, and is available at &lt;a
-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.common.emf/schema/translatorExtension.exsd b/plugins/org.eclipse.wst.common.emf/schema/translatorExtension.exsd
deleted file mode 100644
index 5aa9669..0000000
--- a/plugins/org.eclipse.wst.common.emf/schema/translatorExtension.exsd
+++ /dev/null
@@ -1,103 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.common.emf">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.common.emf" id="translatorExtension" name="translatorExtension"/>
-      </appInfo>
-      <documentation>
-         This is used to contribute child translators to the default translators in EMF2DOMAdapterImpl.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="translator"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="translator">
-      <complexType>
-         <attribute name="className" type="string" use="required">
-            <annotation>
-               <documentation>
-                  This is the fully qualified classname of the child translator.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         [Enter extension point usage example here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         [Enter API information here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         [Enter information about supplied implementation of this extension point.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2005 IBM Corporation and others.
-All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/ResourceSynchronizedIsLoadingAdapter.java b/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/ResourceSynchronizedIsLoadingAdapter.java
deleted file mode 100644
index 5034c7a..0000000
--- a/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/ResourceSynchronizedIsLoadingAdapter.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Oct 26, 2004
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-package org.eclipse.wst.common.internal.emf;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.jobs.ILock;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.wst.common.internal.emf.utilities.ResourceIsLoadingAdapter;
-
-
-
-/**
- * The ResourceSynchronizedIsLoadingAdapter is used to synchronize the loading
- * of EMF resources. This is the Eclipse version of ResourceIsLoadingAdapter,
- * and uses the Eclipse ILock technology to acquire a semaphore until the
- * Resource is loaded. the waitForResourceToLoad() method will pause until
- * either (a) the Resource has loaded, the Adapter is notified, and the
- * semaphore is released or (b) the DELAY timeout is exceeded, which prevents
- * full deadlock.
- * 
- * @author mdelder
- */
-public class ResourceSynchronizedIsLoadingAdapter extends ResourceIsLoadingAdapter {
-
-	private final ILock loadingLock;
-
-	/**
-	 * The delay is default to 5 minutes. This is the upward threshhold. The
-	 * lock will wait up to DELAY milliseconds to acquire the lock, and bail
-	 * if not. It does not mean that it will wait DELAY milliseconds always.
-	 * In general, the wait should be almost instanteous -- just as long as
-	 * document loading remains speedy.
-	 */
-	private static final long DELAY = 300000;
-
-	public ResourceSynchronizedIsLoadingAdapter() {
-		loadingLock = Platform.getJobManager().newLock();
-		if (loadingLock != null)
-			loadingLock.acquire();
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.wtp.internal.emf.utilities.ResourceIsLoadingAdapter#waitForResourceToLoad()
-	 */
-	public void waitForResourceToLoad() {
-
-		if (loadingLock == null)
-			return;
-
-		boolean lockAcquired = false;
-		try {
-			if (loadingLock != null)
-				if (!(lockAcquired = loadingLock.acquire(DELAY)))
-					logWarning();
-		}
-		catch (InterruptedException e) {
-			// ignore, just continue
-		}
-		finally {
-			if (lockAcquired)
-				loadingLock.release();
-		}
-
-	}
-
-
-	/**
-	 * 
-	 */
-	private void logWarning() {
-		Notifier target = getTarget();
-		if (target == null || !(target instanceof Resource)) {
-			Resource resource = (Resource) target;
-			System.err.println("[WARNING] Could not acquire Semaphore Lock for Resource: \"" + resource.getURI() + "\" in " + getClass());
-		}
-
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.wtp.internal.emf.utilities.ResourceIsLoadingAdapter#notifyChanged(org.eclipse.emf.common.notify.Notification)
-	 */
-	public void notifyChanged(Notification notification) {
-
-		if (notification.getNotifier() != null) {
-			// listen for the remove of the loading adapter
-			if (isSetLoadedResourceNotification(notification)) {
-				if (loadingLock != null)
-					loadingLock.release();
-				removeIsLoadingSupport();
-			}
-		}
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.wtp.internal.emf.utilities.ResourceIsLoadingAdapter#forceRelease()
-	 */
-	public void forceRelease() {
-		if (loadingLock != null && loadingLock.getDepth() > 0)
-			loadingLock.release();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/ResourceSynchronizedIsLoadingAdapterFactory.java b/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/ResourceSynchronizedIsLoadingAdapterFactory.java
deleted file mode 100644
index 1990e8a..0000000
--- a/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/ResourceSynchronizedIsLoadingAdapterFactory.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Oct 26, 2004
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-package org.eclipse.wst.common.internal.emf;
-
-import org.eclipse.wst.common.internal.emf.utilities.ResourceIsLoadingAdapter;
-import org.eclipse.wst.common.internal.emf.utilities.ResourceIsLoadingAdapterFactory;
-
-
-/**
- * @author mdelder
- *
- * TODO To change the template for this generated type comment go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-public class ResourceSynchronizedIsLoadingAdapterFactory extends ResourceIsLoadingAdapterFactory {
-
-    
-    /* (non-Javadoc)
-     * @see com.ibm.wtp.internal.emf.utilities.ResourceIsLoadingAdapterFactory#createResourceIsLoadingAdapter()
-     */
-    public ResourceIsLoadingAdapter createResourceIsLoadingAdapter() { 
-        return new ResourceSynchronizedIsLoadingAdapter();
-    }
-}
diff --git a/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/plugin/EcoreUtilitiesPlugin.java b/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/plugin/EcoreUtilitiesPlugin.java
deleted file mode 100644
index 1c24c05..0000000
--- a/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/plugin/EcoreUtilitiesPlugin.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Jun 9, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.plugin;
-
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.wst.common.internal.emf.ResourceSynchronizedIsLoadingAdapterFactory;
-import org.eclipse.wst.common.internal.emf.resource.RendererFactory;
-import org.eclipse.wst.common.internal.emf.utilities.ResourceIsLoadingAdapterFactory;
-import org.osgi.framework.BundleContext;
-
-/**
- * @author DABERG
- * 
- * To change the template for this generated type comment go to Window>Preferences>Java>Code
- * Generation>Code and Comments
- */
-public class EcoreUtilitiesPlugin extends Plugin {
-	public static final String ID = "org.eclipse.wst.common.emf"; //$NON-NLS-1$
-	public static final String TRANSLATOR_EXTENSTION_POINT = "translatorExtension"; //$NON-NLS-1$
-
-	/**
-	 * @param descriptor
-	 */
-	public EcoreUtilitiesPlugin() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.Plugin#startup()
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		RendererFactory.setDefaultHandler(PluginRendererFactoryDefaultHandler.INSTANCE);
-		PackageURIMapReader reader = new PackageURIMapReader();
-		reader.processExtensions();
-		//use a synchronized loading adapter factory
-		ResourceIsLoadingAdapterFactory.INSTANCE = new ResourceSynchronizedIsLoadingAdapterFactory();
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/plugin/PackageURIMapReader.java b/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/plugin/PackageURIMapReader.java
deleted file mode 100644
index d1c39b0..0000000
--- a/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/plugin/PackageURIMapReader.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.plugin;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.common.internal.emf.resource.CompatibilityPackageMappingRegistry;
-
-/**
- * This reader will read the packageURIMap extension point and populate the
- * CompatibilityPackageMappingRegistry.
- * 
- * The packageURIMap will have the following configuration element.
- * 
- * <map prefix="somePackagePrefix" uri="somePackageURI"/>
- *  
- */
-public class PackageURIMapReader {
-	private static final String URI_ATT_NAME = "uri"; //$NON-NLS-1$
-	private static final String PREFIX_ATT_NAME = "prefix"; //$NON-NLS-1$
-	private static final String EXTENSION_POINT_NAME = "packageURIMap"; //$NON-NLS-1$
-
-	/**
-	 *  
-	 */
-	public PackageURIMapReader() {
-		super();
-	}
-
-	private IExtensionPoint getExtensionPoint() {
-		return Platform.getExtensionRegistry().getExtensionPoint(EcoreUtilitiesPlugin.ID, EXTENSION_POINT_NAME);
-	}
-
-	/**
-	 * Call this method to read and process all of the packageURIMap extensions. *
-	 */
-	public void processExtensions() {
-		CompatibilityPackageMappingRegistry reg = CompatibilityPackageMappingRegistry.INSTANCE;
-		IExtension[] extensions = getExtensionPoint().getExtensions();
-		for (int i = 0; i < extensions.length; i++)
-			processExtension(extensions[i], reg);
-	}
-
-	/**
-	 * @param extension
-	 */
-	private void processExtension(IExtension extension, CompatibilityPackageMappingRegistry reg) {
-		IConfigurationElement[] configs = extension.getConfigurationElements();
-		for (int i = 0; i < configs.length; i++)
-			processConfiguration(configs[i], reg);
-	}
-
-	/**
-	 * @param element
-	 */
-	private void processConfiguration(IConfigurationElement element, CompatibilityPackageMappingRegistry reg) {
-		String prefix = element.getAttribute(PREFIX_ATT_NAME);
-		String uri = element.getAttribute(URI_ATT_NAME);
-		reg.registerPrefixToPackageURI(prefix, uri);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/plugin/PluginRendererFactoryDefaultHandler.java b/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/plugin/PluginRendererFactoryDefaultHandler.java
deleted file mode 100644
index ee80757..0000000
--- a/plugins/org.eclipse.wst.common.emf/workbench/org/eclipse/wst/common/internal/emf/plugin/PluginRendererFactoryDefaultHandler.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Dec 1, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.plugin;
-
-import org.eclipse.jem.util.UIContextDetermination;
-import org.eclipse.wst.common.internal.emf.resource.EMF2DOMRendererFactoryDefaultHandler;
-import org.eclipse.wst.common.internal.emf.resource.RendererFactory;
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class PluginRendererFactoryDefaultHandler extends EMF2DOMRendererFactoryDefaultHandler {
-
-	static final PluginRendererFactoryDefaultHandler INSTANCE = new PluginRendererFactoryDefaultHandler();
-	static final String EXT_POINT_NAME = "rendererFactory"; //$NON-NLS-1$
-
-	/**
-	 *  
-	 */
-	protected PluginRendererFactoryDefaultHandler() {
-
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.EMF2DOMRendererFactoryDefaultHandler#getDefaultRendererFactory()
-	 */
-	public RendererFactory getDefaultRendererFactory() {
-		RendererFactory aFactory = (RendererFactory) UIContextDetermination.createInstance(EXT_POINT_NAME);
-		return aFactory == null ? super.getDefaultRendererFactory() : aFactory;
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/AbstractRendererImpl.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/AbstractRendererImpl.java
deleted file mode 100644
index cff83b7..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/AbstractRendererImpl.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-public abstract class AbstractRendererImpl implements Renderer {
-
-
-	protected TranslatorResource resource;
-	private int versionId;
-	private boolean validating = true;
-
-	/**
-	 * Constructor for AbstractRendererImpl.
-	 */
-	public AbstractRendererImpl() {
-		super();
-	}
-
-	/**
-	 * @see com.ibm.etools.emf2xml.Renderer#setResource(TranslatorResource)
-	 */
-	public void setResource(TranslatorResource aResource) {
-		resource = aResource;
-	}
-
-	/**
-	 * @see com.ibm.etools.emf2xml.Renderer#getResource()
-	 */
-	public TranslatorResource getResource() {
-		return resource;
-	}
-
-	public int getVersionId() {
-		return this.versionId;
-	}
-
-	public void setVersionId(int versionId) {
-		this.versionId = versionId;
-	}
-
-	/**
-	 * @return
-	 */
-	public boolean isValidating() {
-		return validating;
-	}
-
-	/**
-	 * @param b
-	 */
-	public void setValidating(boolean b) {
-		validating = b;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#accessForRead()
-	 */
-	public void accessForRead() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#accessForWrite()
-	 */
-	public void accessForWrite() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#isModified()
-	 */
-	public boolean isModified() {
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#isShared()
-	 */
-	public boolean isShared() {
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#isSharedForWrite()
-	 */
-	public boolean isSharedForWrite() {
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#preDelete()
-	 */
-	public void preDelete() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#preUnload()
-	 */
-	public void preUnload() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#releaseFromRead()
-	 */
-	public void releaseFromRead() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#releaseFromWrite()
-	 */
-	public void releaseFromWrite() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#setBatchMode(boolean)
-	 */
-	public void setBatchMode(boolean isBatch) {
-	}
-
-	public boolean useStreamsForIO() {
-		return true;
-	}
-
-	public boolean isBatchMode() {
-		return false;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/AttributeTranslatorFilter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/AttributeTranslatorFilter.java
deleted file mode 100644
index b0d0869..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/AttributeTranslatorFilter.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-/*
- * Created on Sep 21, 2003
- *  
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-public final class AttributeTranslatorFilter extends TranslatorFilter {
-
-	public AttributeTranslatorFilter() {
-		super(null, -1);
-	}
-
-	public AttributeTranslatorFilter(Translator trans, int version) {
-		super(trans, version);
-	}
-
-	public final int scanNextTranslator(Translator[] children, int start) {
-		int found = start + 1;
-		for (; found < children.length; ++found) {
-			if (children[found].isDOMAttribute())
-				break;
-		}
-		found = (found < children.length) ? found : -1;
-		return found;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CacheEventNode.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CacheEventNode.java
deleted file mode 100644
index e575833..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CacheEventNode.java
+++ /dev/null
@@ -1,585 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.ecore.EObject;
-import org.xml.sax.Attributes;
-
-
-/**
- * CacheEventNodes (CENOs) store information collected from SAX Events. This information can then be
- * used once all necessary SAX Events have been generated to create and/or set values on EMF model
- * objects.
- * 
- * CacheEventNodes (CENOs) have a simple lifecycle: initialize, collect data, commit, discard. When
- * initialized, CENOs will attempt to find the appropriate translator for a given XML element name,
- * and also create/set any necessary EMF model values. Data is collected as SAX character() events
- * are generated. On the SAX endElement event, the CENO is committed(), which is where it will
- * complete its processing to create EMF model features. In those cases where it cannot complete its
- * processing, it will defer its processing to the updateEMF() method of its parent. Defered
- * processing is necessary to handle EMF features that require read ahead cues from the XML. CENOs
- * will add themselves to their parents as children in a tree data structure. When an CENO
- * determines it is the golden piece of information required to instantiate its parent feature, it
- * will trigger its parent CENO to process the rest of the cached CENO tree. As mentioned, the
- * building of a CENO tree will only occur for nodes with read ahead cues.
- * 
- * discard() is invoked by init() to ensure that no junk state is left from a previous use of the
- * CENO. commit() will call discard as needed. Because of the use of discard, CENOs can be pooled
- * and reused. If a CENO determines that it is contained in a pool, it will manage its own release
- * from that pool. Self- management is necessary because of the way in which CENOs might cache
- * certain children while waiting to create the parent EMF feature.
- * 
- * @author mdelder
- */
-public class CacheEventNode {
-
-	public static final String ROOT_NODE = "EMF_ROOT_NODE"; //$NON-NLS-1$
-
-	private String nodeName = null;
-	private Translator translator = null;
-	private Notifier emfOwner = null;
-	private StringBuffer buffer = null;
-	private List children = null;
-	private int versionID;
-
-	/*
-	 * The internal data structure used to store the attributes is a String[]. The choice was made
-	 * to use an array to avoid the creation of another object (probably a Hashtable) and to exploit
-	 * array-access times to get the name and value of the attributes (opposed to full fledged
-	 * method invocations).
-	 *  
-	 */
-	private String[] attributes = null;
-	private CacheEventNode parent = null;
-	private CacheEventPool containingPool = null;
-	private Boolean ignorable = null;
-
-	public CacheEventNode(CacheEventPool containingPool) {
-		this.containingPool = containingPool;
-	}
-
-	/**
-	 * Lifecycle method. init(TranslatorResource) will configure this Adapter as a ROOT node.
-	 * 
-	 * This method will invoke discard() before completing its tasks.
-	 */
-	public void init(TranslatorResource resource) {
-		this.discard();
-		this.setEmfOwner(resource);
-		this.setTranslator(resource.getRootTranslator());
-		this.setVersionID(resource.getVersionID());
-		this.nodeName = CacheEventNode.ROOT_NODE;
-	}
-
-	/**
-	 * Lifecycle method. init(CacheEventNode, String, Attributes) will configure this Adapter to be
-	 * a non-ROOT node of the Adapter data structure
-	 * 
-	 * This method will invoke discard() before completing its tasks.
-	 */
-	public void init(CacheEventNode parentArg, String nodeNameArg, Attributes attributesArg) {
-		this.discard();
-		this.nodeName = nodeNameArg;
-		init(parentArg, attributesArg);
-	}
-
-	private void init(CacheEventNode parentRecord, Attributes attributesArg) {
-		setParent(parentRecord);
-
-		setAttributes(attributesArg);
-		if (parent != null) {
-			/* I am not the root */
-
-			/*
-			 * If the parent is part of the DOM Path, then we ignore it and interact with the grand
-			 * parent
-			 */
-			if (parent.translator != null && parent.isInDOMPath()) {
-				setParent(parent.getParent());
-			}
-
-			setVersionID(parent.getVersionID());
-			if (parent.getEmfOwner() != null && parent.getTranslator() != null) {
-
-				/* My parent had enough information to create themself */
-
-				if (parent.getParent() != null) {
-					setTranslator(parent.getTranslator().findChild(nodeName, parent.getEmfOwner(), getVersionID()));
-
-				} else {
-					setTranslator(parent.getTranslator());
-				}
-
-				if (this.translator == null) {
-					/* Our translator is null! Ahh! Run! */
-					throw new IllegalStateException("Parent Translator (" + parent.getTranslator() + //$NON-NLS-1$
-								") did not find a Child Translator for \"" + //$NON-NLS-1$ 
-								nodeName + "\"."); //$NON-NLS-1$
-				}
-
-				if (this.translator.getReadAheadHelper(nodeName) == null && !this.translator.isManagedByParent()) {
-					/*
-					 * I do not require a read ahead cue, and I am not managed by my parent so I can
-					 * create an instance of my EMF object
-					 */
-
-					Notifier myEmfOwner = this.translator.createEMFObject(getNodeName(), null);
-					setEmfOwner(myEmfOwner);
-					this.translator.setMOFValue(parent.getEmfOwner(), myEmfOwner);
-				}
-				/*
-				 * Else I require a read ahead value or I am being managed by my parent, so I have
-				 * no need to create an EMF object
-				 */
-			}
-			/*
-			 * Else I am not mapped to the EMF stack (XML Elements found in the DOMPath are ignored)
-			 */
-		}
-		/* processAttributes is guarded and will not execute unless ready */
-		processAttributes();
-
-	}
-
-	/**
-	 * commit() is invoked only if the CacheEventNode (CENO) has all the information they need and
-	 * should be able to determine what to do to the EMF feature.
-	 * 
-	 * The commit() method will invoke discard() when it has completed its tasks, if needed. Thus,
-	 * after invoking this method, the CENO may have no meaningful state. If discard() is invoked,
-	 * all previously held reference will be released in order to be made eligible for Garbage
-	 * Collection.
-	 *  
-	 */
-	public void commit() {
-
-		if (parent == null || this.isIgnorable()) {
-			discard();
-			releaseFromContainingPool();
-			return;
-		}
-
-		ReadAheadHelper helper = null;
-		Translator activeTranslator = getTranslator();
-		Translator parentTranslator = getParent().getTranslator();
-
-		if (parent != null && parent.getEmfOwner() == null) {
-
-			/*
-			 * Not enough information yet, add the CacheEventNode to the DOM Cache tree
-			 */
-
-			parent.appendToBuffer(this);
-			if ((helper = getParent().getReadAheadHelper()) != null) {
-				/*
-				 * If the parentRecord's emfOwner is null, then it must not be initialized therefore
-				 * it or one of its ancestors must require read ahead clues
-				 * 
-				 * The following if statement checks if the parent is the node waiting for a
-				 * readAhead cue
-				 */
-				EObject parentOwner = null;
-				if (helper.nodeValueIsReadAheadName(getNodeName())) {
-					/* The readAheadName is the value of the qName child node */
-
-					/* We have enough information to create the EmfOwner in the parent! */
-					parentOwner = parentTranslator.createEMFObject(getParent().getNodeName(), getBuffer());
-
-					/*
-					 * Now we need to parse the cached DOM tree and update the emfOwner of the
-					 * parent
-					 */
-					getParent().updateEMF(parentOwner);
-
-				} else if (helper.nodeNameIsReadAheadName(getNodeName())) {
-					/* The readAheadName is the actual name of the child node (qName) */
-
-					/* We have enough information to create the EmfOwner in the parent! */
-					parentOwner = parentTranslator.createEMFObject(getParent().getNodeName(), getNodeName());
-
-					/*
-					 * Now we need to parse the cached DOM tree and update the emfOwner of the
-					 * parent
-					 */
-					getParent().updateEMF(parentOwner);
-				}
-
-			} /* Else an ancestor of the parent is waiting */
-
-		} else {
-			if (activeTranslator != null) {
-				if (activeTranslator.isManagedByParent()) {
-
-					Object value = activeTranslator.convertStringToValue(getNodeName(), null, getBuffer(), getParent().getEmfOwner());
-					activeTranslator.setMOFValue(getParent().getEmfOwner(), value);
-					processAttributes();
-				} else {
-
-					activeTranslator.setTextValueIfNecessary(getBuffer(), getEmfOwner(), getVersionID());
-				}
-
-			}
-			discard();
-			releaseFromContainingPool();
-		}
-	}
-
-	/**
-	 * Instruct the CacheEventNode to discard all references to make everything eligible for garbage
-	 * collection. This should ONLY be called after commit has succeeded. In the case of EMF
-	 * features that require a readAheadName, process not be completed in commit(), but rather will
-	 * be defered to the updateEMF() method. This method was made private specifically because it
-	 * could erase all information contained in the CacheEventNode before it has been processed.
-	 *  
-	 */
-	private void discard() {
-		translator = null;
-		emfOwner = null;
-		buffer = null;
-		if (children != null)
-			children.clear();
-		children = null;
-		attributes = null;
-		parent = null;
-	}
-
-	private void releaseFromContainingPool() {
-		if (containingPool != null)
-			containingPool.releaseNode(this);
-	}
-
-	public boolean isIgnorable() {
-		if (ignorable == null) {
-			boolean result = false;
-			if (this.translator != null) {
-				if (this.translator.isEmptyContentSignificant()) {
-					result = false;
-				} else {
-					String domPath = this.translator.getDOMPath();
-					result = (domPath != null) ? domPath.indexOf(this.nodeName) >= 0 : false;
-				}
-			}
-			ignorable = result ? Boolean.TRUE : Boolean.FALSE;
-		}
-		return ignorable.booleanValue();
-	}
-
-	/**
-	 * Determines if a given child has a translator.
-	 * 
-	 * @param childNodeName
-	 *            the name of the current XML child node
-	 * @return true only if the childNodeName can be ignored (e.g. it is part of the DOM Path)
-	 */
-	public boolean isChildIgnorable(String childNodeName) {
-		boolean result = false;
-
-		Translator childTranslator = null;
-		if (this.getTranslator() != null) {
-			childTranslator = this.getTranslator().findChild(childNodeName, this.getEmfOwner(), this.getVersionID());
-
-			if (childTranslator != null) {
-				if (childTranslator.isEmptyContentSignificant()) {
-					result = false;
-				} else {
-					String temp = null;
-					result = ((temp = childTranslator.getDOMPath()) != null) ? temp.indexOf(childNodeName) >= 0 : false;
-				}
-			}
-		}
-
-		return result;
-	}
-
-	public boolean isInDOMPath() {
-		boolean result = false;
-
-		if (this.getTranslator() != null) {
-
-			result = this.getNodeName().equals(this.getTranslator().getDOMPath());
-		}
-
-		return result;
-	}
-
-	public String toString() {
-		StringBuffer output = new StringBuffer("CacheEventNode[");//$NON-NLS-1$
-		output.append("nodeName=");//$NON-NLS-1$
-		output.append(nodeName);
-		output.append("; translator=");//$NON-NLS-1$
-		output.append(translator);
-		output.append("; emfOwner=");//$NON-NLS-1$
-		try {
-			output.append(emfOwner);
-		} catch (RuntimeException re) {
-			output.append("Could not render as string!");//$NON-NLS-1$
-		}
-		output.append("; buffer=");//$NON-NLS-1$
-		output.append(this.buffer);
-		output.append("; hasChildren=");//$NON-NLS-1$
-		output.append((children != null && children.size() > 0));
-		if (children != null) {
-			for (int i = 0; i < this.children.size(); i++) {
-				output.append("\n\tchildren(");//$NON-NLS-1$
-				output.append(i);
-				output.append("): ");//$NON-NLS-1$
-				output.append(this.children.get(i));
-			}
-		}
-		output.append("]");//$NON-NLS-1$
-		return output.toString();
-	}
-
-	/**
-	 * Updates the EMF model by creating EMF Features as necessary from the DOM Tree Cache
-	 * 
-	 * @param owner
-	 */
-	public void updateEMF(EObject owner) {
-		this.setEmfOwner(owner);
-		if (this.parent != null) {
-			this.translator.setMOFValue((EObject) this.parent.getEmfOwner(), owner);
-			this.processAttributes();
-		}
-
-		this.updateEMF();
-	}
-
-	/**
-	 * The translator and the owner of the parent CENO passed to this method should be nonnull
-	 */
-	public void updateEMF() {
-		if (this.children == null)
-			return;
-
-		CacheEventNode child = null;
-		Translator childTranslator = null;
-		Object value = null;
-		if (this.getEmfOwner() != null) {
-			Notifier parentOwner = this.getEmfOwner();
-			Translator parentTranslator = this.getTranslator();
-			for (int i = 0; i < this.children.size(); i++) {
-
-				child = (CacheEventNode) this.children.get(i); /* Create the EMF feature */
-				if (this.isChildIgnorable(child.getNodeName())) {
-					this.addChildren(child.getChildren());
-				} else {
-					childTranslator = parentTranslator.findChild(child.getNodeName(), parentOwner, child.getVersionID());
-					child.setTranslator(childTranslator);
-
-					value = childTranslator.convertStringToValue(child.getNodeName(), null, child.getBuffer(), parentOwner);
-					childTranslator.setMOFValue(parentOwner, value);
-
-					if (childTranslator.isObjectMap()) {
-						child.setEmfOwner((Notifier) value);
-						childTranslator.setTextValueIfNecessary(child.getBuffer(), child.getEmfOwner(), getVersionID());
-					}
-
-					child.processAttributes();
-					child.updateEMF(); /* update the EMF of the child */
-
-				}
-				child.discard();
-				child.releaseFromContainingPool();
-			}
-			this.children = null;
-		}
-	}
-
-	public void addChild(CacheEventNode child) {
-		if (this.children == null) {
-			this.children = new ArrayList();
-		}
-		if (parent != null && this.isIgnorable()) {
-			parent.addChild(child);
-		} else {
-			this.children.add(child);
-		}
-	}
-
-	protected void addChildren(List childrenArg) {
-		if (this.children == null) {
-			this.children = new ArrayList();
-		}
-		this.children.addAll(childrenArg);
-	}
-
-	public boolean removeChild(CacheEventNode child) {
-		if (this.children == null) {
-			return false;
-		}
-		return this.children.remove(child);
-	}
-
-	public List getChildren() {
-		return this.children;
-	}
-
-	public ReadAheadHelper getReadAheadHelper() {
-		if (this.translator != null && this.translator.hasReadAheadNames()) {
-			return translator.getReadAheadHelper(nodeName);
-		}
-		return null;
-	}
-
-
-	/* See the documentation for the attributes field for info on how it is structured */
-	public void setAttributes(Attributes attr) {
-
-		/*
-		 * The attributes returned from the parser may be stored by reference, so we must copy them
-		 * over to a local data store
-		 */
-		if (attr != null && attr.getLength() > 0) {
-
-			if (this.attributes == null) {
-				this.attributes = new String[attr.getLength() * 2];
-			}
-			for (int i = 0; i < attr.getLength(); i++) {
-				this.attributes[i] = attr.getQName(i);
-				this.attributes[i + attr.getLength()] = attr.getValue(i);
-			}
-
-		}
-	}
-
-	/**
-	 * processAttributes may be invoked multiple times. It is configured to only carry out the
-	 * processing one time. After it successfully completes the construction of Translators and
-	 * values it will discard the value of the attributes field by setting it to null.
-	 *  
-	 */
-	public void processAttributes() {
-		/* See the documentation for the attributes field for info on how it is structured */
-		if (this.attributes != null && this.attributes.length > 0) {
-
-			if (this.emfOwner != null && this.translator != null) {
-				Translator attrTranslator = null;
-				final int limit = this.attributes.length / 2;
-				Object value = null;
-				for (int i = 0; i < limit; i++) {
-
-					/* Find the attribute translator by using the attribute name (attributes[i]) */
-					attrTranslator = this.translator.findChild(this.attributes[i], this.emfOwner, this.versionID);
-
-					if (attrTranslator != null) {
-
-						/*
-						 * Convert the value of corresponding attribute value (attributes[i+limit])
-						 * to a meaningful value
-						 */
-						value = attrTranslator.convertStringToValue(this.attributes[i + limit], (EObject) this.emfOwner);
-						attrTranslator.setMOFValue((EObject) this.emfOwner, value);
-					}
-				}
-
-				/* Forget the attributes so we do not process them again */
-				this.attributes = null;
-			}
-		}
-	}
-
-	/**
-	 * Appends data to the buffer stored by this CENO. Text will be extracted from the data array
-	 * begining at positiong <i>start </i> and ending at position <i>start+length </i>.
-	 * 
-	 * @param data
-	 * @param start
-	 * @param length
-	 */
-	public void appendToBuffer(char[] data, int start, int length) {
-
-		if (parent != null && this.isIgnorable()) {
-			parent.appendToBuffer(data, start, length);
-			return;
-		}
-
-		if (buffer == null) {
-			this.buffer = new StringBuffer();
-		}
-
-		/*
-		 * acts as a more efficient form of "append". Using this method avoids the need to copy the
-		 * data into its own data structure (e.g. String) before being added to the buffer
-		 */
-		this.buffer.insert(buffer.length(), data, start, length);
-
-	}
-
-	/**
-	 * Add the given CENO as a child of this CENO.
-	 * 
-	 * @param record
-	 */
-	public void appendToBuffer(CacheEventNode record) {
-
-		this.addChild(record);
-	}
-
-	public String getBuffer() {
-		if (this.buffer == null) {
-			return null;
-		}
-		return this.buffer.toString();
-	}
-
-	public Notifier getEmfOwner() {
-		return emfOwner;
-	}
-
-	public CacheEventNode getParent() {
-		return parent;
-	}
-
-	private void setParent(CacheEventNode record) {
-		this.parent = record;
-	}
-
-	public Translator getTranslator() {
-		return this.translator;
-	}
-
-	public void setEmfOwner(Notifier notifier) {
-
-		this.emfOwner = notifier;
-	}
-
-	public void setTranslator(Translator translator) {
-		this.translator = translator;
-	}
-
-	public String getNodeName() {
-		return nodeName;
-	}
-
-	public int getVersionID() {
-
-		if (this.parent == null) {
-			try {
-				return ((TranslatorResource) this.getEmfOwner()).getVersionID();
-
-			} catch (RuntimeException re) {
-			}
-		}
-		return this.versionID;
-	}
-
-	public void setVersionID(int i) {
-		versionID = i;
-	}
-
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CacheEventPool.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CacheEventPool.java
deleted file mode 100644
index 55799e2..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CacheEventPool.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.xml.sax.Attributes;
-
-/**
- * Provides an instance pool of reusable CacheEventNodes. The pool will default to 10 live
- * instances. When its available instances reach five times its initial capacity, it will shrink
- * itself down to the initial capacity.
- * 
- * @author mdelder
- */
-public class CacheEventPool {
-
-	public static final int DEFAULT_CAPACITY = 10;
-	public static final int DEFAULT_CAPACITY_INCREMENT = 25;
-
-	private int poolCapacity = DEFAULT_CAPACITY;
-	private CacheEventStack availablePool = null;
-	private Collection inusePool = null;
-
-	public CacheEventPool() {
-		this(DEFAULT_CAPACITY);
-	}
-
-	/**
-	 * Create a CacheEventPOol with the given initial capacity
-	 * 
-	 * @param initialCapacity
-	 *            The number of available instances to create.
-	 */
-	public CacheEventPool(int initialCapacity) {
-		poolCapacity = (initialCapacity > 0) ? initialCapacity : DEFAULT_CAPACITY;
-		availablePool = new CacheEventStack();
-		inusePool = new ArrayList(poolCapacity);
-	}
-
-	/**
-	 * Create a CacheEventNode (CENO) initialized to use the given resource as its EMF Owner.
-	 * 
-	 * THIS METHOD SHOULD ONLY BE USED TO CREATE ROOT NODES.
-	 * 
-	 * @param resource
-	 *            the resource that will be populated
-	 * @return a CacheEventNode to serve as the root.
-	 */
-	public CacheEventNode createCacheEventNode(TranslatorResource resource) {
-		CacheEventNode adapter = fetchFreeNode();
-		adapter.init(resource);
-		return adapter;
-	}
-
-	/**
-	 * Create child CacheEventNodes (CENOs) that will branch from the given parent.
-	 * 
-	 * @param parent
-	 *            the containing CENO
-	 * @param nodeName
-	 *            The value of the XML element node name
-	 * @param attributes
-	 *            The attributes that were part of the given XML element
-	 * @return A CENO that has been properly initialized.
-	 */
-	public CacheEventNode createCacheEventNode(CacheEventNode parent, String nodeName, Attributes attributes) {
-		CacheEventNode adapter = fetchFreeNode();
-		adapter.init(parent, nodeName, attributes);
-		return adapter;
-	}
-
-	/**
-	 * Release the CacheEventNode CENO back to the pool of availabe instances. This method should
-	 * not be invoked directly. CENOs which are acquired from a given pool will automatically
-	 * release themselves when necessary.
-	 * 
-	 * @param adapter
-	 */
-	public void releaseNode(CacheEventNode adapter) {
-		freeNode(adapter);
-	}
-
-	/**
-	 * freezePool() should be invoked to free any unused resources. After freezePool has been
-	 * invoked, warmPool() will need to be invoked before the pool can be used again.
-	 *  
-	 */
-	public void freezePool() {
-		availablePool.clear();
-		availablePool = null;
-	}
-
-	/**
-	 * warmPool() must be invoked to notify the pool it is about to be used. This should occur only
-	 * once per document rendering. Until the pool is in use, it contains no available
-	 * CacheEventNodes (CENOs) in order to limit the size of the in-memory footprint of the
-	 * EMF2SAXWriter.
-	 *  
-	 */
-	public void warmPool() {
-		ensureMinimumCapacity();
-	}
-
-	private CacheEventNode fetchFreeNode() {
-		CacheEventNode result = null;
-
-		if (availablePool == null || availablePool.isEmpty())
-			warmPool();
-
-		result = availablePool.pop();
-		inusePool.add(result);
-
-		return result;
-	}
-
-	private void freeNode(CacheEventNode adapter) {
-		if (inusePool.remove(adapter))
-			availablePool.push(adapter);
-		//else
-		//	throw new IllegalStateException("Adapter not contained in pool!");
-		if (availablePool.size() > (5 * poolCapacity)) {
-			availablePool.clear();
-			ensureMinimumCapacity();
-		}
-	}
-
-	private void ensureMinimumCapacity() {
-		if (availablePool == null) {
-			availablePool = new CacheEventStack();
-		}
-		if (availablePool.size() < poolCapacity) {
-			final int minimumCapacity = poolCapacity - availablePool.size();
-			for (int i = 0; i < minimumCapacity; i++)
-				availablePool.push(new CacheEventNode(this));
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CacheEventStack.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CacheEventStack.java
deleted file mode 100644
index 03f4198..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CacheEventStack.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Sep 24, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.ArrayList;
-import java.util.EmptyStackException;
-
-/**
- * An unsynchronized implementation of a Stack (LIFO) data structure. No casting is required when
- * using this data structure.
- * 
- * @author mdelder
- */
-public class CacheEventStack extends ArrayList {
-
-	/**
-	 * 
-	 * @return the top of the stack without removing it
-	 */
-	public CacheEventNode peek() {
-		if (size() == 0)
-			throw new EmptyStackException();
-
-		return (CacheEventNode) get(size() - 1);
-	}
-
-	/**
-	 * 
-	 * @return the top of the stack and removing it
-	 */
-	public CacheEventNode pop() {
-		if (size() == 0)
-			throw new EmptyStackException();
-
-		return (CacheEventNode) remove(size() - 1);
-	}
-
-	/**
-	 * 
-	 * @param adapter
-	 *            A CENO to push onto the top of the stack
-	 */
-	public void push(CacheEventNode adapter) {
-		add(adapter);
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityPackageMappingRegistry.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityPackageMappingRegistry.java
deleted file mode 100644
index 25367c8..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityPackageMappingRegistry.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * This class is used to register mappings for a package prefix to its current namespace URI. Also,
- * this registry is used to map the package
- */
-public class CompatibilityPackageMappingRegistry {
-	public static CompatibilityPackageMappingRegistry INSTANCE = new CompatibilityPackageMappingRegistry();
-	private Map prefixToPackageURIs = new HashMap();
-	private Map packageURIsToPrefixes = new HashMap();
-
-	/**
-	 *  
-	 */
-	private CompatibilityPackageMappingRegistry() {
-		super();
-	}
-
-	/**
-	 * @return
-	 */
-	public Map getPackageURIsToPrefixes() {
-		return packageURIsToPrefixes;
-	}
-
-	/**
-	 * @return
-	 */
-	public Map getPrefixToPackageURIs() {
-		return prefixToPackageURIs;
-	}
-
-	public void registerPrefixToPackageURI(String prefix, String uri) {
-		if (prefix != null && uri != null) {
-			prefixToPackageURIs.put(prefix, uri);
-			packageURIsToPrefixes.put(uri, prefix);
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityResourceFactory.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityResourceFactory.java
deleted file mode 100644
index f824de3..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityResourceFactory.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 23, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.Map;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
-
-/**
- * @author DABERG
- * 
- * To change the template for this generated type comment go to Window>Preferences>Java>Code
- * Generation>Code and Comments
- */
-public class CompatibilityResourceFactory extends XMIResourceFactoryImpl {
-	/**
-	 *  
-	 */
-	public CompatibilityResourceFactory() {
-		super();
-	}
-
-	protected Map prefixToPackageURIs;
-
-	protected Map packageURIsToPrefixes;
-
-	public Map getPrefixToPackageURI() {
-		return CompatibilityPackageMappingRegistry.INSTANCE.getPrefixToPackageURIs();
-	}
-
-	public Map getPackageURIsToPrefixes() {
-		return CompatibilityPackageMappingRegistry.INSTANCE.getPackageURIsToPrefixes();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl#createResource(org.eclipse.emf.common.util.URI)
-	 */
-	public Resource createResource(URI uri) {
-		return new CompatibilityXMIResourceImpl(uri);
-	}
-
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilitySAXXMIHandler.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilitySAXXMIHandler.java
deleted file mode 100644
index ee6ff3e..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilitySAXXMIHandler.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 30, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.Map;
-
-import org.eclipse.emf.ecore.xmi.XMLHelper;
-import org.eclipse.emf.ecore.xmi.XMLResource;
-import org.eclipse.emf.ecore.xmi.impl.SAXXMIHandler;
-
-/**
- * @author DABERG
- * 
- * To change the template for this generated type comment go to Window>Preferences>Java>Code
- * Generation>Code and Comments
- */
-public class CompatibilitySAXXMIHandler extends SAXXMIHandler {
-	protected final static String NULL_ATTRIB = XMLResource.XSI_NS + ":null"; //$NON-NLS-1$
-
-	/**
-	 * @param xmiResource
-	 * @param helper
-	 * @param options
-	 */
-	public CompatibilitySAXXMIHandler(XMLResource xmiResource, XMLHelper helper, Map options) {
-		super(xmiResource, helper, options);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLHandler#isNull()
-	 */
-	protected boolean isNull() {
-		boolean isnull = super.isNull();
-		if (!isnull)
-			isnull = attribs.getValue(NULL_ATTRIB) != null;
-		return isnull;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityURIConverter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityURIConverter.java
deleted file mode 100644
index ba135f5..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityURIConverter.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.URIConverter;
-
-public interface CompatibilityURIConverter extends URIConverter {
-	URI deNormalize(URI uri);
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMILoadImpl.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMILoadImpl.java
deleted file mode 100644
index 5f17a46..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMILoadImpl.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 30, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.xmi.XMLHelper;
-import org.eclipse.emf.ecore.xmi.impl.SAXWrapper;
-import org.eclipse.emf.ecore.xmi.impl.XMILoadImpl;
-import org.xml.sax.helpers.DefaultHandler;
-
-/**
- * @author DABERG
- * 
- * To change the template for this generated type comment go to Window>Preferences>Java>Code
- * Generation>Code and Comments
- */
-public class CompatibilityXMILoadImpl extends XMILoadImpl {
-
-	/**
-	 * @param helper
-	 */
-	public CompatibilityXMILoadImpl(XMLHelper helper) {
-		super(helper);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl#makeDefaultHandler()
-	 */
-	protected DefaultHandler makeDefaultHandler() {
-		return new SAXWrapper(new CompatibilitySAXXMIHandler(resource, helper, options));
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMIResource.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMIResource.java
deleted file mode 100644
index a954f5f..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMIResource.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.xmi.XMIResource;
-
-public interface CompatibilityXMIResource extends XMIResource {
-	int FORMAT_EMF1 = 0;
-	/**
-	 * format for MOF5 compatibility; note that this can NOT be used with resources usings the
-	 * "platform:/plugin" protocol"
-	 */
-	int FORMAT_MOF5 = 1;
-
-	void addOriginalPackageURI(String packageUri, String originalUri);
-
-	int getFormat();
-
-	/**
-	 * Set the serialization format. By default it is FORMAT_EMF1.
-	 * 
-	 * @see CompatibilityXMIResource#FORMAT_EMF1
-	 * @see CompatibilityXMIResource#FORMAT_MOF5
-	 */
-	void setFormat(int format);
-
-	boolean usesDefaultFormat();
-
-	/**
-	 * @param rootObject
-	 */
-	void removePreservingIds(EObject rootObject);
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMIResourceImpl.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMIResourceImpl.java
deleted file mode 100644
index db9fe94..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMIResourceImpl.java
+++ /dev/null
@@ -1,374 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.xmi.XMLHelper;
-import org.eclipse.emf.ecore.xmi.XMLLoad;
-import org.eclipse.emf.ecore.xmi.XMLSave;
-import org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl;
-import org.eclipse.wst.common.internal.emf.utilities.IDUtil;
-import org.eclipse.wst.common.internal.emf.utilities.ResourceIsLoadingAdapter;
-import org.eclipse.wst.common.internal.emf.utilities.ResourceIsLoadingAdapterFactory;
-
-
-public class CompatibilityXMIResourceImpl extends XMIResourceImpl implements CompatibilityXMIResource {
-	protected static final String DEFAULT_ENCODING = "UTF-8"; //$NON-NLS-1$
-	protected int format = FORMAT_EMF1;
-	protected Map originalPackageURIs = new HashMap();
-	private boolean preserveIDs = false;
-
-	private static final String PLATFORM_PROTOCOL = "platform"; //$NON-NLS-1$
-	private static final String PLATFORM_PLUGIN = "plugin"; //$NON-NLS-1$
-
-	/**
-	 * Constructor for MappableXMIResourceImpl.
-	 */
-	public CompatibilityXMIResourceImpl() {
-		super();
-		initDefaultSaveOptions();
-	}
-
-	public CompatibilityXMIResourceImpl(URI uri) {
-		super(uri);
-		initDefaultSaveOptions();
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl#createXMLHelper()
-	 */
-	protected final XMLHelper createXMLHelper() {
-		MappedXMIHelper helper = doCreateXMLHelper();
-		helper.setPackageURIsToPrefixes(getPackageURIsToPrefixes());
-		return helper;
-	}
-
-	protected MappedXMIHelper doCreateXMLHelper() {
-		return new MappedXMIHelper(this, getPrefixToPackageURIs());
-	}
-
-	/**
-	 * Subclasses should not need to override this method.
-	 * 
-	 * @see CompatibilityPackageMappingRegistry#getPrefixToPackageURIs()
-	 */
-	protected Map getPrefixToPackageURIs() {
-		return CompatibilityPackageMappingRegistry.INSTANCE.getPrefixToPackageURIs();
-	}
-
-	/**
-	 * Subclasses should not need to override this method.
-	 * 
-	 * @see CompatibilityPackageMappingRegistry#getPrefixToPackageURIs()
-	 */
-	protected Map getPackageURIsToPrefixes() {
-		return CompatibilityPackageMappingRegistry.INSTANCE.getPackageURIsToPrefixes();
-	}
-
-	public void addOriginalPackageURI(String packageUri, String originalUri) {
-		originalPackageURIs.put(packageUri, originalUri);
-	}
-
-	public int getFormat() {
-		return format;
-	}
-
-	public void setFormat(int format) {
-		if (!isPlatformPluginResourceURI())
-			this.format = format;
-	}
-
-	private boolean isPlatformPluginResourceURI() {
-		URI aURI = getURI();
-
-		return aURI != null && PLATFORM_PROTOCOL.equals(uri.scheme()) && PLATFORM_PLUGIN.equals(uri.segment(0));
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.resource.Resource#getURIFragment(EObject)
-	 */
-	public String getURIFragment(EObject eObject) {
-		if (usesDefaultFormat())
-			return super.getURIFragment(eObject);
-		return IDUtil.getOrAssignID(eObject, this);
-	}
-
-	public boolean usesDefaultFormat() {
-		return format == CompatibilityXMIResource.FORMAT_EMF1;
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl#createXMLSave()
-	 */
-	protected XMLSave createXMLSave() {
-		if (usesDefaultFormat())
-			return super.createXMLSave();
-		return new CompatibilityXMISaveImpl(createXMLHelper());
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl#doSave(OutputStream, Map)
-	 */
-	public void doSave(OutputStream outputStream, Map options) throws IOException {
-		super.doSave(outputStream, options);
-	}
-
-	/**
-	 * Method initDefaultOptions.
-	 */
-	protected void initDefaultSaveOptions() {
-		if (defaultSaveOptions == null) {
-			getDefaultSaveOptions();
-		}
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.resource.impl.ResourceImpl#getEObjectByID(String)
-	 */
-	protected EObject getEObjectByID(String id) {
-		if (idToEObjectMap != null) {
-			EObject eObject = (EObject) idToEObjectMap.get(id);
-			if (eObject != null) {
-				return eObject;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Called when the object is unloaded. This implementation
-	 * {@link InternalEObject#eSetProxyURI sets}the object to be a proxy and clears the
-	 * {@link #eAdapters adapters}.
-	 */
-	protected void unloaded(InternalEObject internalEObject) {
-		//overridden from the super class; call super.getURIFragment instead of the implementation
-		//at this level, to avoid ID generation during unload
-		//internalEObject.eSetProxyURI(uri.appendFragment(getURIFragment(internalEObject)));
-		internalEObject.eSetProxyURI(uri.appendFragment(super.getURIFragment(internalEObject)));
-		internalEObject.eAdapters().clear();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl#doLoad(java.io.InputStream,
-	 *      java.util.Map)
-	 */
-	public final void doLoad(InputStream inputStream, Map options) throws IOException {
-		basicDoLoad(inputStream, options);
-	}
-
-	/**
-	 * @deprecated Use {@link #doLoad(InputStream, Map)} instead.
-	 */
-	protected void basicDoLoad(InputStream inputStream, Map options) throws IOException {
-		super.doLoad(inputStream, options);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl#init()
-	 */
-	protected void init() {
-		super.init();
-		setEncoding(DEFAULT_ENCODING);
-	}
-
-	protected XMLLoad createXMLLoad() {
-		return new CompatibilityXMILoadImpl(createXMLHelper());
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResource#removePreservingIds(org.eclipse.emf.ecore.EObject)
-	 */
-	public void removePreservingIds(EObject rootObject) {
-		setPreserveIDs(true);
-		getContents().remove(rootObject);
-	}
-
-	/**
-	 * @return Returns the preserveIDs.
-	 */
-	public boolean isPreserveIDs() {
-		return preserveIDs;
-	}
-
-	/**
-	 * @param preserveIDs
-	 *            The preserveIDs to set.
-	 */
-	public void setPreserveIDs(boolean preserveIDs) {
-		this.preserveIDs = preserveIDs;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl#detachedHelper(org.eclipse.emf.ecore.EObject)
-	 */
-	protected void detachedHelper(EObject eObject) {
-		if (modificationTrackingAdapter != null) {
-			eObject.eAdapters().remove(modificationTrackingAdapter);
-		}
-
-		if (useUUIDs()) {
-			DETACHED_EOBJECT_TO_ID_MAP.put(eObject, getID(eObject));
-		}
-
-		if (!isPreserveIDs() && idToEObjectMap != null && eObjectToIDMap != null) {
-			idToEObjectMap.remove(eObjectToIDMap.remove(eObject));
-		}
-	}
-	
-	public void load(Map options) throws IOException {
-
-        ResourceIsLoadingAdapter adapter = null;
-        if (isLoaded) {
-            adapter = ResourceIsLoadingAdapter.findAdapter(this);
-            if (adapter != null) 
-                adapter.waitForResourceToLoad();
-            return;
-        }
-        synchronized (this) {            
-            adapter = ResourceIsLoadingAdapter.findAdapter(this);
-            if (adapter == null && !isLoaded) 
-                addSynchronizationLoadingAdapter();
-        }
-        if(adapter != null)
-            adapter.waitForResourceToLoad();
-        else {
-            try {
-                super.load(options);
-            } catch(IOException ioe) {
-                removeLoadingSynchronizationAdapter();
-                throw ioe;
-            } catch(RuntimeException re) {
-                removeLoadingSynchronizationAdapter();
-                throw re;
-            } catch(Error e) {
-                removeLoadingSynchronizationAdapter();
-                throw e;
-            }
-        }
-    }
-	public void loadExisting(Map options) throws IOException {
-
-		
-        ResourceIsLoadingAdapter adapter = null;
-        if (isLoaded) {
-            adapter = ResourceIsLoadingAdapter.findAdapter(this);
-            if (adapter != null) 
-                adapter.waitForResourceToLoad();
-            return;
-        }
-        synchronized (this) {            
-            adapter = ResourceIsLoadingAdapter.findAdapter(this);
-            if (adapter == null && !isLoaded) 
-                addSynchronizationLoadingAdapter();
-        }
-        if(adapter != null)
-            adapter.waitForResourceToLoad();
-        else {
-            try {
-                load((InputStream) null, options);
-            } catch(IOException ioe) {
-                removeLoadingSynchronizationAdapter();
-                throw ioe;
-            } catch(RuntimeException re) {
-                removeLoadingSynchronizationAdapter();
-                throw re;
-            } catch(Error e) {
-                removeLoadingSynchronizationAdapter();
-                throw e;
-            }
-        }
-    }
-	
-	  /**
-     * 
-     */
-    protected void addSynchronizationLoadingAdapter() {
-    	synchronized (eAdapters()) {
-        if (ResourceIsLoadingAdapter.findAdapter(this) == null)
-            eAdapters().add(ResourceIsLoadingAdapterFactory.INSTANCE.createResourceIsLoadingAdapter());
-    	}
-    }
-
-    /**
-     * 
-     */
-    protected void removeLoadingSynchronizationAdapter() {
-        ResourceIsLoadingAdapter adapter = ResourceIsLoadingAdapter.findAdapter(this);
-        if (adapter != null) {
-            adapter.forceRelease();
-            eAdapters().remove(adapter);
-        }
-    }
-
-    /**
-     * Case 1: LOAD RESOURCE FROM DISK this.isLoaded == false AND isLoaded ==
-     * true (which means we entered the load() method, but have not completed
-     * the load), and we're loading from a resource on disk, then we add the
-     * adapter Case 2: RESOURCE CREATION (NOT A LOAD) Case 4: RESOURCE CREATION,
-     * UNLOADED, NEW CONTENTS (NOT A LOAD) Resource is created but not from a
-     * resource on disk, so contents is null AND not empty, so no adapter: THIS
-     * IS NOT A LOAD Case 3: RESOURCE HAS BEEN UNLOADED, BEING RELOADED FROM
-     * DISK Contents is NOT null, but it is Empty and the resource is being
-     * loaded from disk. We must add the adapter.
-     * 
-     */
-    public boolean isResourceBeingLoaded(boolean isLoaded) {
-        return (!this.isLoaded && isLoaded) && (contents == null || contents.isEmpty());
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.emf.ecore.resource.Resource#getContents()
-     */
-    public EList getContents() {
-        waitForResourceToLoadIfNecessary();
-        return super.getContents();
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.emf.ecore.resource.impl.ResourceImpl#isLoaded()
-     */
-    public boolean isLoaded() {
-        waitForResourceToLoadIfNecessary();
-        return super.isLoaded();
-    }
-
-    /**
-     * 
-     */
-    protected final void waitForResourceToLoadIfNecessary() {
-        ResourceIsLoadingAdapter loadingAdapter = ResourceIsLoadingAdapter.findAdapter(this);
-        if (loadingAdapter != null) loadingAdapter.waitForResourceToLoad();
-    }
-
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMISaveImpl.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMISaveImpl.java
deleted file mode 100644
index c1a7bf2..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/CompatibilityXMISaveImpl.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.Map;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.xmi.XMIResource;
-import org.eclipse.emf.ecore.xmi.XMLHelper;
-import org.eclipse.emf.ecore.xmi.XMLResource;
-import org.eclipse.emf.ecore.xmi.impl.XMISaveImpl;
-
-public class CompatibilityXMISaveImpl extends XMISaveImpl {
-
-	/**
-	 * Constructor for CompatibilityXMISaveImpl.
-	 * 
-	 * @param helper
-	 */
-	public CompatibilityXMISaveImpl(XMLHelper helper) {
-		super(helper);
-	}
-
-	/**
-	 * Constructor for CompatibilityXMISaveImpl.
-	 * 
-	 * @param options
-	 * @param helper
-	 * @param encoding
-	 */
-	public CompatibilityXMISaveImpl(Map options, XMLHelper helper, String encoding) {
-		super(options, helper, encoding);
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMISaveImpl#init(XMLResource, Map)
-	 */
-	protected void init(XMLResource resource, Map options) {
-		super.init(resource, options);
-		xmiType = true;
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMISaveImpl#addNamespaceDeclarations()
-	 */
-	public void addNamespaceDeclarations() {
-		doc.addAttribute(XMI_VER_NS, XMIResource.VERSION_VALUE);
-		doc.addAttribute(XMI_XMLNS, XMIResource.XMI_URI);
-		EPackage[] packages = helper.packages();
-		StringBuffer xsiSchemaLocation = null;
-		if (declareSchemaLocation) {
-			for (int i = 0; i < packages.length; i++) {
-				EPackage ePackage = packages[i];
-
-				EObject root = EcoreUtil.getRootContainer(ePackage);
-				if (root instanceof EPackage) {
-					EPackage rootEPackage = (EPackage) root;
-					Resource resource = rootEPackage.eResource();
-					if (resource != null) {
-						URI uri = resource.getURI();
-						String rootNsURI = rootEPackage.getNsURI();
-						if (uri == null ? rootNsURI != null : !uri.toString().equals(rootNsURI)) {
-							declareXSI = true;
-							if (xsiSchemaLocation == null) {
-								xsiSchemaLocation = new StringBuffer();
-							} else {
-								xsiSchemaLocation.append(' ');
-							}
-							xsiSchemaLocation.append(rootNsURI);
-							xsiSchemaLocation.append(' ');
-							xsiSchemaLocation.append(helper.getHREF(rootEPackage));
-						}
-					}
-				}
-			}
-		}
-
-		if (declareXSI) {
-			doc.addAttribute(XSI_XMLNS, XMLResource.XSI_URI);
-		}
-
-		for (int i = 0; i < packages.length; i++) {
-			EPackage ePackage = packages[i];
-			//Modified from superclass - dispatch back to helper for compatibility
-			//String nsURI = ePackage.getNsURI();
-			//String nsPrefix = ePackage.getNsPrefix();
-			String[] nsInfo = ((MappedXMIHelper) helper).getNSInfo(ePackage);
-			doc.addAttributeNS(XMLResource.XML_NS, nsInfo[0], nsInfo[1]);
-		}
-
-		if (xsiSchemaLocation != null) {
-			doc.addAttribute(XSI_SCHEMA_LOCATION, xsiSchemaLocation.toString());
-		}
-	}
-
-	protected void saveHref(EObject remote, EStructuralFeature f) {
-		String name = helper.getQName(f);
-		String href = helper.getHREF(remote);
-		if (href != null) {
-			doc.startElement(name);
-			EClass eClass = remote.eClass();
-
-			EClass expectedType = (EClass) f.getEType();
-			//Changed next line to always write type if expectedType
-			//is different from eClass
-			if (eClass != expectedType) {
-				saveTypeAttribute(eClass);
-			}
-
-			doc.addAttribute(XMLResource.HREF, href);
-			doc.endEmptyElement();
-		}
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ConstantAttributeTranslator.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ConstantAttributeTranslator.java
deleted file mode 100644
index 356f102..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ConstantAttributeTranslator.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 15, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * @author schacher
- */
-public class ConstantAttributeTranslator extends Translator {
-
-	protected String attributeValue;
-
-	/**
-	 * @param domNameAndPath
-	 * @param eClass
-	 */
-	public ConstantAttributeTranslator(String domNameAndPath, String attributeValue) {
-		super(domNameAndPath, null, DOM_ATTRIBUTE);
-		this.attributeValue = attributeValue;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#getMOFValue(org.eclipse.emf.ecore.EObject)
-	 */
-	public Object getMOFValue(EObject mofObject) {
-		return attributeValue;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#isSetMOFValue(org.eclipse.emf.ecore.EObject)
-	 */
-	public boolean isSetMOFValue(EObject emfObject) {
-		return true;
-	}
-
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/DefaultTranslatorFactory.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/DefaultTranslatorFactory.java
deleted file mode 100644
index 06abce5..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/DefaultTranslatorFactory.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Aug 20, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.wst.common.internal.emf.utilities.Namespace;
-import org.eclipse.wst.common.internal.emf.utilities.NamespaceAdapter;
-
-
-/**
- * @author schacher
- */
-public class DefaultTranslatorFactory implements VariableTranslatorFactory {
-
-	public static final String XMLNS = "xmlns:"; //$NON-NLS-1$
-	public static final DefaultTranslatorFactory INSTANCE = new DefaultTranslatorFactory();
-
-	public DefaultTranslatorFactory() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.VariableTranslatorFactory#accepts(java.lang.String)
-	 */
-	public boolean accepts(String domName) {
-		return domName != null && domName.startsWith(XMLNS);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.VariableTranslatorFactory#accepts(org.eclipse.emf.common.notify.Notification)
-	 */
-	public boolean accepts(Notification notif) {
-		return notif.getFeature() == NamespaceAdapter.NOTIFICATION_FEATURE;
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.VariableTranslatorFactory#create(java.lang.String)
-	 */
-	public Translator create(String domName) {
-		return new NamespaceTranslator(domName);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.VariableTranslatorFactory#create(org.eclipse.emf.ecore.EObject)
-	 */
-	public List create(Notifier target) {
-		if (!(target instanceof EObject))
-			return null;
-		List namespaces = NamespaceAdapter.getNamespaces((EObject) target);
-		if (namespaces == null || namespaces.isEmpty())
-			return null;
-		List result = new ArrayList(namespaces.size());
-		for (int i = 0; i < namespaces.size(); i++) {
-			result.add(create((Namespace) namespaces.get(i)));
-		}
-		return result;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.VariableTranslatorFactory#create(org.eclipse.emf.common.notify.Notification)
-	 */
-	public Translator create(Notification notif) {
-		Namespace ns = (Namespace) notif.getNewValue();
-		return create(ns);
-	}
-
-	private Translator create(Namespace ns) {
-		return new NamespaceTranslator(XMLNS + ns.getPrefix());
-	}
-
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/DependencyTranslator.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/DependencyTranslator.java
deleted file mode 100644
index c7d1c62..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/DependencyTranslator.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 25, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-/**
- * @author schacher
- */
-public class DependencyTranslator extends Translator {
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 */
-	public DependencyTranslator(String domNameAndPath, EStructuralFeature aFeature, EStructuralFeature aDependentFeature) {
-		super(domNameAndPath, aFeature);
-		dependencyFeature = aDependentFeature;
-	}
-
-	public EObject getChild(EObject parent) {
-		EObject child = basicGetDependencyObject(parent);
-		if (child == null)
-			return createChild(parent);
-		return child;
-	}
-
-
-	protected EObject createChild(EObject parent) {
-		EObject child = createEMFObject(dependencyFeature);
-		parent.eSet(dependencyFeature, child);
-		return child;
-	}
-
-	public List getMOFChildren(EObject mofObject) {
-		//return super.getMOFChildren(getChild(mofObject));
-		return super.getMOFChildren(mofObject);
-	}
-
-	public Object getMOFValue(EObject mofObject) {
-		return super.getMOFValue(getChild(mofObject));
-	}
-
-	public void setMOFValue(EObject emfObject, Object value) {
-		//super.setMOFValue(getChild(emfObject), value);
-		super.setMOFValue(getChild(emfObject), value, -1);
-	}
-
-	public void setMOFValue(Notifier owner, Object value, int newIndex) {
-		super.setMOFValue(getChild((EObject) owner), value, newIndex);
-	}
-
-	public void removeMOFValue(Notifier owner, Object value) {
-		super.removeMOFValue(getChild((EObject) owner), value);
-	}
-
-	public boolean isSetMOFValue(EObject emfObject) {
-		return super.isSetMOFValue(getChild(emfObject));
-	}
-
-	public void unSetMOFValue(EObject emfObject) {
-		super.unSetMOFValue(getChild(emfObject));
-	}
-
-
-	public boolean isDependencyChild() {
-		return true;
-	}
-
-	public boolean featureExists(EObject emfObject) {
-		return super.featureExists(getChild(emfObject));
-	}
-
-	public void clearList(EObject mofObject) {
-		super.clearList(getChild(mofObject));
-	}
-
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMAdapter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMAdapter.java
deleted file mode 100644
index 9782ea1..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMAdapter.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.ecore.EObject;
-import org.w3c.dom.Node;
-
-public interface EMF2DOMAdapter extends Adapter {
-
-
-	Class ADAPTER_CLASS = EMF2DOMAdapter.class;
-
-	/**
-	 * Return the DOM node that the target of this adapter maps to. If the target MOF object maps to
-	 * more than one DOM node, this node is the top-most node.
-	 */
-	Node getNode();
-
-	void setNode(Node aNode);
-
-	/**
-	 * Set to false and notification of changes from both the DOM node and the MOF object will be
-	 * ignored.
-	 */
-	boolean isNotificationEnabled();
-
-	/**
-	 * Set to false and notification of changes from both the DOM node and the MOF object will be
-	 * ignored.
-	 */
-	void setNotificationEnabled(boolean isEnabled);
-
-	/**
-	 * Updates the DOM tree for this adapter from the current values of the MOF Object. This method
-	 * updates ALL the DOM nodes from all the MOF attributes.
-	 */
-	void updateDOM();
-
-	/**
-	 * Updates the MOF Object from the DOM tree. All the children of the DOM tree are updated into
-	 * the MOF object.
-	 */
-	void updateMOF();
-
-	public void updateDOMFeature(Translator map, Node node, EObject mofObject);
-
-	public void updateMOFFeature(Translator map, Node node, EObject mofObject);
-
-	EObject getEObject();
-
-	/**
-	 * Return true if MOF object is a proxy.
-	 */
-	boolean isMOFProxy();
-
-	/**
-	 * Remove the DOM adapters from the node AND all its child nodes, recursively.
-	 */
-	void removeAdapters(Node node);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMAdapterImpl.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMAdapterImpl.java
deleted file mode 100644
index 124c727..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMAdapterImpl.java
+++ /dev/null
@@ -1,1802 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.wst.common.internal.emf.utilities.Assert;
-import org.eclipse.wst.common.internal.emf.utilities.DOMUtilities;
-import org.eclipse.wst.common.internal.emf.utilities.EtoolsCopySession;
-import org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil;
-import org.eclipse.wst.common.internal.emf.utilities.FeatureValueConversionException;
-import org.eclipse.wst.common.internal.emf.utilities.Revisit;
-import org.eclipse.wst.common.internal.emf.utilities.StringUtil;
-import org.eclipse.wst.common.internal.emf.utilities.TranslatorService;
-import org.eclipse.wst.common.internal.emf.utilities.WFTUtilsResourceHandler;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Document;
-import org.w3c.dom.DocumentType;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.Text;
-
-
-public class EMF2DOMAdapterImpl extends AdapterImpl implements EMF2DOMAdapter {
-
-	final protected static boolean fDebug = false;
-
-	protected boolean fNotificationEnabled = true;
-
-	protected Node fNode;
-
-	protected Translator fTranslator;
-
-	protected EMF2DOMRenderer fRenderer;
-
-	protected Translator[] childTranslators;
-
-	protected boolean isRoot = false;
-	
-	private static final String PLATFORM = "org.eclipse.core.runtime.Platform"; //$NON-NLS-1$
-	private static final String ISRUNNING = "isRunning"; //$NON-NLS-1$
-
-	private class DependencyAdapter extends org.eclipse.emf.common.notify.impl.AdapterImpl {
-
-		static final String KEY = "EMF2DOMDependencyAdapter"; //$NON-NLS-1$
-
-		public void notifyChanged(Notification msg) {
-			EMF2DOMAdapterImpl.this.notifyChanged(msg);
-		}
-
-		/**
-		 * @see org.eclipse.emf.common.notify.impl.AdapterImpl#isAdapterForType(Object)
-		 */
-		public boolean isAdapterForType(Object type) {
-			return KEY.equals(type);
-		}
-	}
-
-	/**
-	 * Constructor for root adapters.
-	 */
-	public EMF2DOMAdapterImpl(TranslatorResource resource, Document document, EMF2DOMRenderer renderer, Translator translator) {
-		this((Notifier) resource, (Node) document, renderer, translator);
-		isRoot = true;
-	}
-
-	/**
-	 * Construct an Adapter given an EObject and a node
-	 */
-	public EMF2DOMAdapterImpl(Notifier object, Node node, EMF2DOMRenderer renderer, Translator translator) {
-		super();
-		setTarget(object);
-		fNode = node;
-		fRenderer = renderer;
-		fTranslator = translator;
-		initChildTranslators();
-		addEMFAdapter();
-		addDOMAdapter();
-		addDependencyAdapterIfNecessary();
-	}
-
-	/**
-	 * Construct an adapter from a DOM Node. The EObject will be created
-	 */
-	public EMF2DOMAdapterImpl(Node node, EMF2DOMRenderer renderer, Translator translator) {
-		fNode = node;
-		fRenderer = renderer;
-		fTranslator = translator;
-		setTargetFromNode();
-		initChildTranslators();
-		addEMFAdapter();
-		addDOMAdapter();
-		addDependencyAdapterIfNecessary();
-
-	}
-
-	protected void addDependencyAdapterIfNecessary() {
-		if (!fTranslator.isDependencyParent())
-			return;
-		EObject child = fTranslator.basicGetDependencyObject(getEObject());
-		if (child != null)
-			addDependencyAdapter(child);
-	}
-
-	protected void initChildTranslators() {
-		List children = new ArrayList();
-		boolean isRunning = false; //is the OSGI platform running ?
-		try {
-			// If the Platform class can be found, then continue to check if the OSGI platform is running
-			Class clazz = Class.forName(PLATFORM);
-			Method m = clazz.getMethod(ISRUNNING, null);
-			isRunning = ((Boolean)m.invoke(clazz, null)).booleanValue();
-		} catch (ClassNotFoundException e) {
-		     // Ignore because this must be in a non_OSGI environment
-		} catch (SecurityException e) {
-			 // Ignore because this must be in a non_OSGI environment
-		} catch (NoSuchMethodException e) {
-			 // Ignore because this must be in a non_OSGI environment
-		} catch (IllegalArgumentException e) {
-			 // Ignore because this must be in a non_OSGI environment
-		} catch (IllegalAccessException e) {
-			 // Ignore because this must be in a non_OSGI environment
-		} catch (InvocationTargetException e) {
-			 // Ignore because this must be in a non_OSGI environment
-		}	
-		//Check for extended child translators because we are in OSGI mode
-		if (isRunning) {
-			Translator[] extendedChildren = TranslatorService.getInstance().getTranslators();
-	        for (int i = 0; i < extendedChildren.length; i++) {
-	        	if (extendedChildren[i] != null)
-	            	children.add(extendedChildren[i]);
-	        }
-		}
-		
-		
-		children.addAll(Arrays.asList(fTranslator.getChildren(getTarget(), fRenderer.getVersionID())));
-
-		VariableTranslatorFactory factory = fTranslator.getVariableTranslatorFactory();
-		if (factory != null) {
-			String domName = null;
-			NamedNodeMap map = fNode.getAttributes();
-
-			if (map != null) {
-				int length = map.getLength();
-				for (int i = 0; i < length; i++) {
-					Node attrNode = map.item(i);
-					domName = attrNode.getNodeName();
-					//Handle variable translators
-					Translator t = fTranslator.findChild(domName, getTarget(), fRenderer.getVersionID());
-					if (t != null && !children.contains(t))
-						children.add(t);
-				}
-			}
-			List childrenFromEMF = factory.create(getTarget());
-			if (childrenFromEMF != null)
-				children.addAll(childrenFromEMF);
-		}
-
-		childTranslators = (Translator[]) children.toArray(new Translator[children.size()]);
-	}
-
-	/**
-	 * Set to false and notification of changes from both the DOM node and the MOF object will be
-	 * ignored.
-	 */
-	public boolean isNotificationEnabled() {
-		return fNotificationEnabled;
-	}
-
-	/**
-	 * Set to false and notification of changes from both the DOM node and the MOF object will be
-	 * ignored.
-	 */
-	public void setNotificationEnabled(boolean isEnabled) {
-		fNotificationEnabled = isEnabled;
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return EMF2DOMAdapter.ADAPTER_CLASS == type;
-	}
-
-	protected void addEMFAdapter() {
-		target.eAdapters().add(this);
-	}
-
-	public String toString() {
-		StringBuffer sb = new StringBuffer();
-		sb.append(shortClassName(this));
-		sb.append('(');
-		sb.append(getNode().getNodeName());
-		sb.append(',');
-		sb.append(shortClassName(getTarget()));
-		sb.append(')');
-		return sb.toString();
-	}
-
-	protected String shortClassName(Object o) {
-		if (o != null) {
-			String cn = o.getClass().getName();
-			int i = cn.lastIndexOf('.');
-			return cn.substring(i + 1, cn.length());
-		}
-		return null;
-	}
-
-	/*
-	 * Prints out a MOF notification for debugging
-	 */
-	protected void debugMOFNotify(Notification msg) {
-		if (fDebug) {
-			String notifType = ""; //$NON-NLS-1$
-			switch (msg.getEventType()) {
-				case Notification.ADD :
-					notifType = "ADD"; //$NON-NLS-1$
-					break;
-				case Notification.REMOVE :
-					notifType = "REMOVE"; //$NON-NLS-1$
-					break;
-				case Notification.ADD_MANY :
-					notifType = "ADD_MANY"; //$NON-NLS-1$
-					break;
-				case Notification.REMOVE_MANY :
-					notifType = "REMOVE_MANY"; //$NON-NLS-1$
-					break;
-				case Notification.SET : {
-					if (msg.getPosition() == Notification.NO_INDEX)
-						notifType = "REPLACE"; //$NON-NLS-1$
-					else
-						notifType = "SET"; //$NON-NLS-1$
-					break;
-				}
-				case Notification.UNSET :
-					notifType = "UNSET"; //$NON-NLS-1$
-					break;
-			}
-
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("MOF Change: " + notifType); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tnotifier      : " + msg.getNotifier()); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tchangedFeature: " + msg.getFeature()); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\toldValue      : " + msg.getOldValue()); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tnewValue      : " + msg.getNewValue()); //$NON-NLS-1$
-		}
-	}
-
-	/*
-	 * Override this method to create the feature maps for the adapter.
-	 */
-	protected Translator[] getChildTranslators() {
-		return childTranslators;
-	}
-
-	protected Translator findTranslator(Notification not) {
-		if (not.getFeature() == null)
-			return null;
-		Translator[] maps = getChildTranslators();
-		for (int i = 0; i < maps.length; i++) {
-			if (maps[i].isMapFor(not.getFeature(), not.getOldValue(), not.getNewValue()))
-				return maps[i];
-		}
-		return null;
-	}
-
-	/**
-	 * Update all the children of the target MOF object in the relationship described by
-	 * 
-	 * @map.
-	 * 
-	 * @param map
-	 *            com.ibm.etools.mof2dom.AttributeTranslator Describes the mapping from the MOF
-	 *            attribute name to the DOM node name
-	 */
-	protected void primUpdateDOMMultiFeature(Translator map, Node node, List mofChildren, List domChildren, Notifier owner) {
-
-		//Used for inserting primitives
-		List inorderDOMChildren = null;
-		if (!map.isObjectMap() || map.isManagedByParent()) {
-			inorderDOMChildren = new ArrayList();
-			inorderDOMChildren.addAll(domChildren);
-		}
-		Node parent = findDOMPath(node, map, false);
-
-		// Go though the MOF children checking to see if the corresponding
-		// MOF Adapter children exists. If not, create the adapter.
-		// Also handles reordering children that have moved.
-		int i = 0;
-		for (; i < mofChildren.size(); i++) {
-			Object child = mofChildren.get(i);
-			EObject mofChild = null;
-
-			EMF2DOMAdapter adapter = null;
-
-			// Check to see if the child is a MOF Object.
-			if (!map.isManagedByParent() && child instanceof EObject) {
-				mofChild = (EObject) mofChildren.get(i);
-				adapter = getExistingAdapter(mofChild);
-			}
-
-			if (adapter != null && i < domChildren.size() && domChildren.get(i) == adapter.getNode())
-				continue;
-			if (adapter != null) {
-				if (domChildren.isEmpty())
-					continue;
-				// A node has been reordered in the list
-				Node reorderNode = adapter.getNode();
-				Node insertBeforeNode = reorderNode;
-				if (i < domChildren.size() && domChildren.get(i) != reorderNode) {
-					insertBeforeNode = (Node) domChildren.get(i);
-				}
-				domChildren.remove(reorderNode);
-				domChildren.add(i, reorderNode);
-				if (reorderNode != insertBeforeNode) {
-					reorderDOMChild(parent, reorderNode, insertBeforeNode, map);
-				}
-			} else {
-				// A new node has been added, create it
-				parent = createDOMPath(node, map);
-				if (mofChild != null) {
-					adapter = createAdapter(mofChild, map);
-					Node newNode = adapter.getNode();
-					Node insertBeforeNode = findInsertBeforeNode(parent, map, mofChildren, i, domChildren);
-					DOMUtilities.insertBeforeNodeAndWhitespace(parent, newNode, insertBeforeNode);
-					domChildren.add(i, newNode);
-					boolean notificationFlag = adapter.isNotificationEnabled();
-					adapter.setNotificationEnabled(false);
-					try {
-						indent(newNode, map);
-					} finally {
-						adapter.setNotificationEnabled(notificationFlag);
-					}
-					adapter.updateDOM();
-				} else {
-					// The mof feature is a collection of primitives.
-					// create a new dom node and listen to it.
-					Element newNode = createNewNode(null, map);
-					Node insertBeforeNode = findInsertBeforeNode(parent, map, mofChildren, i, inorderDOMChildren);
-					DOMUtilities.insertBeforeNodeAndWhitespace(parent, newNode, insertBeforeNode);
-					indent(newNode, map);
-					addDOMAdapter(newNode); // Hook up listeners
-					domChildren.add(i, newNode);
-					inorderDOMChildren.add(newNode);
-					Text newText = parent.getOwnerDocument().createTextNode(map.convertValueToString(child, (EObject) owner));
-					DOMUtilities.insertBeforeNode(newNode, newText, null);
-				}
-			}
-		}
-
-		// Remove any remaining adapters.
-		for (; i < domChildren.size(); i++) {
-			removeDOMChild(parent, (Element) domChildren.get(i));
-		}
-
-		// If there are no MOF children, remove any unnecessary DOM node paths
-		if (mofChildren.size() == 0 && map.hasDOMPath()) {
-			if (map.shouldRenderEmptyDOMPath((EObject) owner))
-				createDOMPath(node, map);
-			else
-				removeDOMPath(node, map);
-		}
-
-	}
-
-	/**
-	 * Update all the children of the target MOF object in the relationship described by
-	 * 
-	 * @map.
-	 * 
-	 * @param map
-	 *            com.ibm.etools.mof2dom.AttributeTranslator Describes the mapping from the MOF
-	 *            attribute name to the DOM node name
-	 */
-	protected void primUpdateMOFMultiFeature(Translator map, Node node, List mofChildren, List domChilren) {
-
-		Hashtable nodeToAdapter = new Hashtable();
-
-		for (int i = 0; i < mofChildren.size(); i++) {
-			EMF2DOMAdapter adapter = getExistingAdapter((EObject) mofChildren.get(i));
-			if (adapter != null)
-				nodeToAdapter.put(adapter.getNode(), adapter);
-		}
-
-		// Go though the DOM children checking to see if the corresponding
-		// MOF Adapter children exists. If not, create the adapter.
-		// Also handles reordering children that have moved.
-		int i = 0;
-		int mofIndex = 0;
-		List adaptersToUpdate = new ArrayList();
-		for (; i < domChilren.size(); i++) {
-			Element childNode = (Element) domChilren.get(i);
-			EMF2DOMAdapter adapter = i < mofChildren.size() ? getExistingAdapter((EObject) mofChildren.get(i)) : null;
-			if (adapter != null && !adapter.isMOFProxy() && adapter.getNode() == childNode) {
-				// Because the adapter is processing STRUCTURE_CHANGED from the
-				// DOM, we
-				// must update all the way down the tree since anything under
-				// the notifying
-				// DOM node could have changed.
-				adapter.updateMOF();
-				mofIndex++;
-				continue;
-			}
-
-			adapter = (EMF2DOMAdapter) nodeToAdapter.get(childNode);
-			if (adapter != null) {
-				reorderIfNecessary((EList) mofChildren, adapter.getEObject(), mofIndex);
-				mofIndex++;
-			} else {
-				adapter = createAdapter(childNode, map);
-				if (adapter != null) {
-					try {
-						//We don't want to push anything back to the child dom
-						adapter.setNotificationEnabled(false);
-						map.setMOFValue(getTarget(), adapter.getTarget(), mofIndex);
-					} finally {
-						adapter.setNotificationEnabled(true);
-					}
-
-					adaptersToUpdate.add(adapter);
-					mofIndex++;
-				}
-			}
-		}
-
-		// Remove any remaining adapters.
-		//make a copy so we remove all items - bug 192468 
-				Object[] childrenArray = mofChildren.toArray();
-				for (; i < childrenArray.length; i++) {
-					removeMOFValue((EObject) childrenArray[i], map);
-		 		}
-
-		// The adapters cannot be updated as they created. We must wait until
-		// all of the adapters are created and removed before updating,
-		// otherwise
-		// we can get in a state where there are adapters fighting with
-		// eachother
-		// (one for the old node and one for the new node).
-		for (int j = 0; j < adaptersToUpdate.size(); j++) {
-			((EMF2DOMAdapter) adaptersToUpdate.get(j)).updateMOF();
-		}
-	}
-
-	/**
-	 * Removes a feature's value.
-	 * 
-	 * @param childAdapter
-	 *            com.ibm.etools.mof2dom.EMF2DOMAdapter The child to remove
-	 * @param mofAttributeName
-	 *            String The name of the mofAttribute to remove the child from.
-	 */
-	protected void removeMOFValue(EObject value, Translator translator) {
-
-		if (value == null)
-			return;
-
-		EMF2DOMAdapter adapter = (EMF2DOMAdapter) EcoreUtil.getExistingAdapter(value, EMF2DOMAdapter.ADAPTER_CLASS);
-		if (adapter != null) {
-			// Remove the adapter from BOTH the MOF Object and the DOM Nodes
-			removeAdapters(adapter.getNode());
-			value.eAdapters().remove(adapter);
-		}
-
-		EStructuralFeature feature = translator.getFeature();
-		boolean doUnload = feature == null || (translator.isObjectMap() && ((EReference) feature).isContainment());
-
-		// translator.removeMOFValue() was here originally
-
-		// Unload the objects.
-		if (doUnload)
-			ExtendedEcoreUtil.unload(value);
-
-		// Remove the MOF value
-		translator.removeMOFValue(getTarget(), value);
-	}
-
-	protected void reorderIfNecessary(EList emfChildren, EObject eObj, int emfIndex) {
-		int currIndex = emfChildren.indexOf(eObj);
-		if (currIndex > -1 && currIndex != emfIndex)
-			emfChildren.move(emfIndex, eObj);
-	}
-
-	/**
-	 * default is to do nothing; subclasses can override
-	 */
-	protected void indent(Node newNode, Translator map) {
-
-	}
-
-	protected Node findInsertBeforeNode(Node parentNode, Translator map, List mofList, int mofInx, List domList) {
-		Node insertBeforeNode = null;
-
-		// If there are no current dom children for this map, find the initial
-		// insert pos.
-		if (domList.size() == 0)
-			return findInitialInsertBeforeNode(parentNode, map);
-
-		// If some dom nodes then find the correct one to insert before.
-		int i = mofInx + 1;
-		while (i < mofList.size() && insertBeforeNode == null) {
-			// Start at the mofInx passed in and look forward for the first
-			// adapted
-			// MOF object. Use that node as the insert before node.
-			Object o = mofList.get(i);
-			if (!map.isObjectMap() || map.isManagedByParent())
-				break;
-			EObject tMOFObject = (EObject) o;
-			EMF2DOMAdapter tAdapter = (EMF2DOMAdapter) EcoreUtil.getExistingAdapter(tMOFObject, EMF2DOMAdapter.ADAPTER_CLASS);
-			if (tAdapter != null) {
-				insertBeforeNode = tAdapter.getNode();
-			}
-			i++;
-		}
-
-		// Handle inserting at the end of the list
-		if (insertBeforeNode == null)
-			insertBeforeNode = DOMUtilities.getNextNodeSibling((Node) domList.get(domList.size() - 1));
-		if (insertBeforeNode == null)
-			insertBeforeNode = ((Node) domList.get(domList.size() - 1)).getNextSibling();
-
-		return insertBeforeNode;
-	}
-
-	protected Node findInitialInsertBeforeNode(Node parentNode, Translator mapNode) {
-		Translator[] maps = getChildTranslators();
-
-		// First, skip past all the maps in the ordered collection
-		// of maps. We want to begin the search with this node.
-		int i = 0;
-		for (; i < maps.length; i++) {
-			if (maps[i] == mapNode)
-				break;
-		}
-
-		// Now search go through each map node until a child node matching
-		// its DOM name is found.
-		Node insertBeforeNode = null;
-		for (int j = i; j < maps.length && insertBeforeNode == null; j++) {
-			NodeList childNodes = parentNode.getChildNodes();
-			Translator nodeToFindMap = maps[j];
-			for (int k = 0; k < childNodes.getLength(); k++) {
-				Node node = childNodes.item(k);
-				if (nodeToFindMap.isMapFor(node.getNodeName())) {
-					insertBeforeNode = node;
-					break;
-				}
-			}
-		}
-		return insertBeforeNode;
-	}
-
-	/*
-	 * Traverses the path that <map> specifies. Returns the last node of the path that was able to
-	 * be traversed or null if the path could not be traversed. The <addAdapters> boolean is used to
-	 * determine if the receiver is added as an adapter to every node found on the path.
-	 */
-	protected Node findDOMPath(Node parent, Translator map, boolean addAdapters) {
-
-		String path = map.getDOMPath();
-		Node curNode = parent;
-		Iterator iter = DOMUtilities.createPathIterator(path);
-
-		while (curNode != null && iter.hasNext()) {
-			String nodeName = (String) iter.next();
-			curNode = DOMUtilities.getNodeChild(curNode, nodeName);
-			if (addAdapters && curNode != null) {
-				addDOMAdapter(curNode);
-			}
-		}
-		return curNode;
-	}
-
-	/**
-	 * Return the list of DOM node children that currently exist with the specified tagname.
-	 */
-	protected List getDOMChildren(Node node, Translator map) {
-		Node parent = findDOMPath(node, map, true);
-		if (parent != null)
-			return DOMUtilities.getNodeChildren(parent, map.getDOMNames());
-		return new ArrayList();
-	}
-
-	protected EMF2DOMAdapter getExistingAdapter(EObject refObject) {
-		EMF2DOMAdapter adapter = (EMF2DOMAdapter) EcoreUtil.getExistingAdapter(refObject, EMF2DOMAdapter.ADAPTER_CLASS);
-		if (adapter != null && adapter.isMOFProxy()) {
-			removeDOMAdapter(adapter.getNode(), adapter);
-			refObject.eAdapters().remove(adapter);
-			adapter = null;
-		}
-		return adapter;
-	}
-
-	protected void primAddDOMAdapter(Node aNode, EMF2DOMAdapter anAdapter) {
-		fRenderer.registerDOMAdapter(aNode, anAdapter);
-	}
-
-	protected EMF2DOMAdapter primGetExistingAdapter(Node aNode) {
-		return fRenderer.getExistingDOMAdapter(aNode);
-	}
-
-	protected void removeDOMAdapter(Node aNode, EMF2DOMAdapter anAdapter) {
-		fRenderer.removeDOMAdapter(aNode, anAdapter);
-	}
-
-	protected void addDOMAdapter(Node childNode) {
-
-		// Only add the adapter if this is an child node that will not be
-		// adapted. For instance a subtree that maps to a MOF attribute
-		// setting.
-		if (childNode.getNodeType() == Node.ELEMENT_NODE) {
-			EMF2DOMAdapter attrAdapter = primGetExistingAdapter(childNode);
-
-			if (attrAdapter == null || attrAdapter.getNode() != getNode()) {
-				// If the node is adapted, but not by this adapter then remove
-				// it. This happens to non-object children when the parent tag
-				// name is changed.
-				removeDOMAdapter(childNode, attrAdapter);
-
-				if (fDebug) {
-					org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tCHILD: Adding DOM adapter: " + this); //$NON-NLS-1$
-					org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\t\tto: " + childNode); //$NON-NLS-1$
-				}
-				primAddDOMAdapter(childNode, this);
-			}
-		}
-	}
-
-	/**
-	 * Reorder a child before a given node
-	 */
-	protected void reorderDOMChild(Node parentNode, Node childNode, Node insertBeforeNode, Translator map) {
-		try {
-			removeDOMChild(parentNode, childNode, false);
-			parentNode.insertBefore(childNode, insertBeforeNode);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-	}
-
-	protected String getNewlineString(Node node) {
-		return DOMUtilities.NEWLINE_STRING;
-	}
-
-	protected String primGetIndentString(Node node) {
-		return DOMUtilities.getIndentString(node);
-	}
-
-	/**
-	 * Remove a child node
-	 */
-	protected void removeDOMChild(Node parentNode, Node childNode) {
-		removeDOMChild(parentNode, childNode, true);
-	}
-
-	/**
-	 * Remove a child node
-	 */
-	protected void removeDOMChild(Node parentNode, Node childNode, boolean removeAdapter) {
-		try {
-			if (childNode == null)
-				return;
-			// Look for any whitespace preceeding the node being
-			// removed and remove it as well.
-			Text prevText = DOMUtilities.getPreviousTextSibling(childNode);
-			if (prevText != null && DOMUtilities.isWhitespace(prevText)) {
-				parentNode.removeChild(prevText);
-			}
-			// Remove the node.
-			if (removeAdapter)
-				removeAdapters(childNode);
-			parentNode.removeChild(childNode);
-		} catch (Exception e) { 
-			e.printStackTrace();
-		}
-	}
-
-	/**
-	 * Remove the DOM adapters from the node AND all its child nodes, recursively.
-	 */
-	public void removeAdapters(Node node) {
-		EMF2DOMAdapter adapter = primGetExistingAdapter(node);
-		if (adapter != null) {
-			// Remove the adapter from both the DOM node and the MOF Object.
-			removeDOMAdapter(node, adapter);
-			if (adapter.getNode() == node) {
-				Notifier localTarget = adapter.getTarget();
-				if (localTarget != null)
-					localTarget.eAdapters().remove(adapter);
-			}
-		}
-		NodeList nl = node.getChildNodes();
-		for (int i = 0; i < nl.getLength(); i++) {
-			Node n = nl.item(i);
-			removeAdapters(n);
-		}
-	}
-
-	/**
-	 * Creates the path specified by <map>under <node>. Only the portion of the path that does not
-	 * exist (if any) is created
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node
-	 * @param map
-	 *            com.ibm.etools.mof2dom.Translator
-	 */
-	protected Node createDOMPath(Node node, Translator map) {
-		Iterator i = DOMUtilities.createPathIterator(map.getDOMPath());
-		Node curNode = node;
-		while (i.hasNext()) {
-			String nodeName = (String) i.next();
-			curNode = findOrCreateNode(node, map, nodeName);
-		}
-		return curNode;
-	}
-
-	protected Element findOrCreateNode(Node parent, Translator map, String segment) {
-		Node node = DOMUtilities.getNodeChild(parent, segment);
-		if (node == null) {
-			// The node did not already exist, create it.
-			Document doc = parent.getOwnerDocument();
-			node = doc.createElement(segment);
-			if (map.isEmptyTag())
-				setEmptyTag((Element) node);
-
-			Node insertBeforeNode = findInitialInsertBeforeNode(parent, map);
-			DOMUtilities.insertBeforeNodeAndWhitespace(parent, node, insertBeforeNode);
-			indent(node, map);
-			addDOMAdapter(node); // Hook up listeners
-		}
-		return (Element) node;
-	}
-
-	/**
-	 * Remove the node passed in if it has only whitespace nodes as children
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node The node to check
-	 */
-	protected void removeIfEmpty(Node node) {
-		NodeList nl = node.getChildNodes();
-
-		// Run through all the nodes children. If a non-whitespace node
-		// pis found, bail.
-		for (int i = 0; i < nl.getLength(); i++) {
-			Node childNode = nl.item(i);
-			if (!DOMUtilities.isWhitespace(childNode))
-				return;
-		}
-
-		// We only get here if there are no non-whitespace chars, so
-		// simply remove the node.
-		removeDOMChild(node.getParentNode(), node);
-	}
-
-	/**
-	 * Remove the DOM path specified by <map>from <node>
-	 */
-	protected void removeDOMPath(Node node, Translator map) {
-		Node childNode = findDOMPath(node, map, false);
-		while (childNode != null && childNode != node) {
-			removeIfEmpty(childNode);
-			childNode = childNode.getParentNode();
-		}
-	}
-
-	/**
-	 * Create an adapter for a child DOM node
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node The node to create the adapter for.
-	 */
-	protected EMF2DOMAdapter createAdapter(EObject mofObject, Translator childMap) {
-		//	Assert.isNotNull(childMap.getChildAdapterClass());
-		Assert.isNotNull(mofObject);
-
-		EMF2DOMAdapter adapter = (EMF2DOMAdapter) EcoreUtil.getAdapter(mofObject.eAdapters(), EMF2DOMAdapter.ADAPTER_CLASS);
-
-		if (adapter != null && adapter.isMOFProxy()) {
-			removeAdapters(adapter.getNode());
-			mofObject.eAdapters().remove(adapter);
-			adapter = null;
-		}
-		if (adapter == null)
-			adapter = primCreateAdapter(mofObject, childMap);
-		return adapter;
-	}
-
-	/**
-	 * Create an adapter for a child DOM node
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node The node to create the adapter for.
-	 */
-	protected EMF2DOMAdapter primCreateAdapter(EObject mofObject, Translator childMap) {
-
-		Element newNode = createNewNode(mofObject, childMap);
-		return new EMF2DOMAdapterImpl(mofObject, newNode, fRenderer, childMap);
-	}
-
-	/**
-	 * Create an adapter for a child DOM node
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node The node to create the adapter for.
-	 */
-	protected EMF2DOMAdapter primCreateAdapter(Node node, Translator childMap) {
-		return new EMF2DOMAdapterImpl(node, fRenderer, childMap);
-	}
-
-	/**
-	 * Create an adapter for a child DOM node
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node The node to create the adapter for.
-	 */
-	protected EMF2DOMAdapter createAdapter(Node node, Translator childMap) {
-
-		//Assert.isNotNull(childMap.getChildAdapterClass());
-		Assert.isNotNull(node);
-
-		EMF2DOMAdapter adapter = primGetExistingAdapter(node);
-
-		if (adapter != null) {
-			if (adapter.isMOFProxy() || adapter.getTarget() == null) {
-				removeDOMAdapter(node, adapter);
-				if (adapter.getTarget() != null) {
-					adapter.getTarget().eAdapters().remove(adapter);
-				}
-				adapter = null;
-			}
-		} else {
-			adapter = primCreateAdapter(node, childMap);
-		}
-		return adapter;
-	}
-
-	protected Element createNewNode(EObject mofObject, Translator childMap) {
-		Node node = getNode();
-		Document doc = (node instanceof Document) ? (Document) node : node.getOwnerDocument();
-
-		Element element = doc.createElement(childMap.getDOMName(mofObject));
-		if (childMap.isEmptyTag())
-			setEmptyTag(element);
-
-		return element;
-	}
-
-	protected void setEmptyTag(Element element) {
-		Revisit.toDo();
-		//Need to figure out how to do this with pure DOM apis, if it is
-		// possible
-	}
-
-	/*
-	 * Return true if MOF object is a proxy.
-	 */
-	public boolean isMOFProxy() {
-		if (isRoot || target == null)
-			return false;
-		return ((InternalEObject) target).eIsProxy();
-	}
-
-	public EObject getEObject() {
-		if (isRoot)
-			return null;
-		return (EObject) target;
-	}
-
-	/**
-	 * Return the DOM node that the target of this adapter maps to. If the target MOF object maps to
-	 * more than one DOM node, this node is the top-most node.
-	 */
-	public Node getNode() {
-		return fNode;
-	}
-
-	public void setNode(Node aNode) {
-		fNode = aNode;
-	}
-
-	public void updateDOM() {
-		if (!isNotificationEnabled())
-			return;
-		primUpdateDOM();
-	}
-
-	public void updateMOF() {
-		if (!isNotificationEnabled())
-			return;
-		primUpdateMOF();
-	}
-
-	protected void primUpdateDOM() {
-		if (isRoot)
-			updateDOMRootFeature();
-		else {
-			Translator[] maps = getChildTranslators();
-			for (int i = 0; i < maps.length; i++) {
-				updateDOMFeature(maps[i], getNode(), getEObject());
-			}
-		}
-	}
-
-	public void primUpdateMOF() {
-		if (isRoot)
-			updateMOFRootFeature();
-		else {
-			Translator[] maps = getChildTranslators();
-			for (int i = 0; i < maps.length; i++) {
-				updateMOFFeature(maps[i], getNode(), getEObject());
-			}
-		}
-	}
-
-	protected void updateDOMRootFeature() {
-		boolean notificationFlag = isNotificationEnabled();
-		try {
-			setNotificationEnabled(false);
-			primUpdateDOMMultiFeature(fTranslator, fNode, getResourceContents(), getDOMChildren(fNode, fTranslator), null);
-			updateDOMDocumentType();
-		} finally {
-			setNotificationEnabled(notificationFlag);
-		}
-	}
-
-	protected void updateMOFRootFeature() {
-		boolean notificationFlag = isNotificationEnabled();
-		try {
-			setNotificationEnabled(false);
-			updateMOFDocumentType();
-			primUpdateMOFMultiFeature(fTranslator, fNode, getResourceContents(), getDOMChildren(fNode, fTranslator));
-		} finally {
-			setNotificationEnabled(notificationFlag);
-		}
-	}
-
-	protected DocumentType getDocumentType() {
-		return ((Document) fNode).getDoctype();
-	}
-
-	protected TranslatorResource getResource() {
-		return (TranslatorResource) getTarget();
-	}
-
-	protected EList getResourceContents() {
-		if (!isRoot)
-			throw new IllegalStateException();
-		return ((Resource) getTarget()).getContents();
-	}
-
-	protected void updateDOMDocumentType() {
-
-		DocumentType docType = getDocumentType();
-		String publicId = null, systemId = null, oldPublicId, oldSystemId;
-		oldPublicId = docType == null ? null : docType.getPublicId();
-		oldSystemId = docType == null ? null : docType.getSystemId();
-		TranslatorResource resource = getResource();
-		if (resource != null) {
-			publicId = resource.getPublicId();
-			systemId = resource.getSystemId();
-		}
-		if (!(StringUtil.stringsEqual(publicId, oldPublicId) && StringUtil.stringsEqual(systemId, oldSystemId)))
-			fRenderer.replaceDocumentType(resource.getDoctype(), publicId, systemId);
-	}
-
-	protected void updateDOMDocumentType(Notification msg) {
-		if (msg.getFeature() == TranslatorResource.DOC_TYPE_FEATURE)
-			updateDOMDocumentType();
-	}
-
-	protected void updateMOFDocumentType() {
-
-		TranslatorResource resource = getResource();
-		if (resource == null)
-			return;
-
-		String publicId = null, systemId = null;
-		DocumentType docType = getDocumentType();
-
-		if (docType != null) {
-			publicId = docType.getPublicId();
-			systemId = docType.getSystemId();
-		}
-		if ((!(StringUtil.stringsEqual(publicId, resource.getPublicId()) && StringUtil.stringsEqual(systemId, resource.getSystemId()))) || 
-				((resource.getPublicId() == null) || resource.getSystemId() == null))
-			resource.setDoctypeValues(publicId, systemId);
-	}
-
-	public void notifyChanged(Notification msg) {
-
-		if (isRoot) {
-			notifyChangedForRoot(msg);
-			return;
-		}
-		if (isDependencyFeature(msg))
-			handleDependencyFeature(msg);
-
-		if (!isNotificationEnabled())
-			return;
-
-		debugMOFNotify(msg);
-
-		switch (msg.getEventType()) {
-			case Notification.ADD :
-			case Notification.REMOVE :
-			case Notification.ADD_MANY :
-			case Notification.REMOVE_MANY :
-			case Notification.SET :
-			case Notification.UNSET :
-			case Notification.MOVE :
-				Translator translator = findTranslator(msg);
-				if (translator == null)
-					translator = addVariableTranslatorIfNecessary(msg);
-				if (translator != null)
-					updateDOMFeature(translator, getNode(), getEObject());
-				break;
-		}
-	}
-
-	protected void notifyChangedForRoot(Notification msg) {
-		if (!isNotificationEnabled())
-			return;
-
-		debugMOFNotify(msg);
-
-		switch (msg.getEventType()) {
-			case Notification.ADD :
-			case Notification.REMOVE :
-			case Notification.ADD_MANY :
-			case Notification.REMOVE_MANY :
-				primUpdateDOM();
-				break;
-			case Notification.SET :
-				updateDOMDocumentType(msg);
-				break;
-			case EtoolsCopySession.RESOURCE_COPIED :
-				updateDOM();
-				break;
-		}
-	}
-
-	protected void addDependencyAdapter(EObject child) {
-		Adapter existing = EcoreUtil.getExistingAdapter(child, DependencyAdapter.KEY);
-		if (existing != null)
-			return;
-		DependencyAdapter forwarder = new DependencyAdapter();
-		child.eAdapters().add(forwarder);
-		forwarder.setTarget(child);
-	}
-
-	protected void addDOMAdapter() {
-
-		primAddDOMAdapter(fNode, this);
-		if (fDebug) {
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("Adding DOM adapter: " + this); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tto: " + fNode); //$NON-NLS-1$
-		}
-
-		// Go through the maps. All of the DOM nodes that are not listened
-		// to by another DOM Node adapter, must be listened to by this adapter.
-		NodeList childNodes = fNode.getChildNodes();
-		for (int j = 0; j < childNodes.getLength(); j++) {
-			Node childNode = childNodes.item(j);
-			int nodeType = childNode.getNodeType();
-			if (!DOMUtilities.isTextNode(childNode) && nodeType != Node.COMMENT_NODE) {
-				Translator map = findTranslator(childNode.getNodeName(), false);
-				if (map != null && map.isManagedByParent())
-					addDOMAdapter(childNode);
-			}
-		}
-	}
-
-	protected Translator addVariableTranslatorIfNecessary(Notification msg) {
-		VariableTranslatorFactory fact = fTranslator.getVariableTranslatorFactory();
-		Translator trans = null;
-		if (fact != null && fact.accepts(msg)) {
-			trans = fact.create(msg);
-			if (trans != null)
-				childTranslators = (Translator[]) Translator.concat(childTranslators, trans);
-		}
-		return trans;
-	}
-
-	protected Text createTextNode(Document doc, Translator map, String text) {
-		String nonnulltext = (text != null) ? text : ""; //$NON-NLS-1$
-		return map.isCDATAContent() ? doc.createCDATASection(nonnulltext) : doc.createTextNode(nonnulltext);
-	}
-
-	protected String extractReadAheadName() {
-		if (!fTranslator.hasReadAheadNames())
-			return null;
-		String readAheadName = null;
-
-		ReadAheadHelper helper = fTranslator.getReadAheadHelper(fNode.getNodeName());
-		if (helper == null)
-			return null;
-
-		Node child = null;
-		String[] names = helper.getValues();
-		if (helper.getChildDOMName() == null) {
-			for (int i = 0; i < names.length; i++) {
-				child = DOMUtilities.getNodeChild(fNode, names[i]);
-				if (child != null) {
-					readAheadName = names[i];
-					break;
-				}
-			}
-		} else {
-			child = DOMUtilities.getNodeChild(fNode, helper.getChildDOMName());
-			if (child != null)
-				readAheadName = DOMUtilities.getChildText(child);
-		}
-		if (readAheadName == null)
-			readAheadName = names[0];
-		return readAheadName;
-	}
-
-	/**
-	 * Extracts the text from <node>and converts it to an object suitable for setting into <feature>
-	 */
-	protected Object extractValue(Node node, Translator map, EObject emfObject) {
-
-		// Extract the value from the text child
-		Node textNode = DOMUtilities.getChildTextNode(node);
-		String trimmedValue = null;
-		if (textNode != null)
-			trimmedValue = textNode.getNodeValue();
-		try {
-			return map.convertStringToValue(trimmedValue, emfObject);
-		} catch (FeatureValueConversionException ex) {
-			handleFeatureValueConversionException(ex);
-			return null;
-		}
-	}
-
-	/**
-	 * @param ex
-	 */
-	protected void handleFeatureValueConversionException(FeatureValueConversionException ex) {
-		throw ex;
-
-	}
-
-	/*
-	 * Finds the child node that <map> specifies. If there is more than one child that satisfies
-	 * <map> then the first one is returned.
-	 * 
-	 * This method traverses past the domPath if one is specified in the <map>.
-	 */
-	protected Node findDOMNode(Node parent, Translator map) {
-		return findDOMNode(parent, map, false);
-	}
-
-	/*
-	 * Finds the child node that <map> specifies. If there is more than one child that satisfies
-	 * <map> then the first one is returned. The <addAdapters> boolean is used to determine if the
-	 * receiver is added as an adapter to every node found on the path.
-	 * 
-	 * This method traverses past the domPath if one is specified in the <map>.
-	 */
-	protected Node findDOMNode(Node parent, Translator map, boolean addAdapters) {
-
-		// First, trace down the path
-		Node curNode = findDOMPath(parent, map, addAdapters);
-		if (map.isDOMTextValue() || map.isDOMAttribute() || curNode == null)
-			return curNode;
-
-		// Now look for the first DOM name we can find
-		String[] domNames = map.getDOMNames();
-		Node node = null;
-		for (int i = 0; i < domNames.length; i++) {
-			String nodeName = domNames[i];
-			List nodes = DOMUtilities.getNodeChildren(curNode, nodeName);
-			if (nodes != null && !nodes.isEmpty()) {
-				if (nodes.size() > 1)
-					handleInvalidMultiNodes(nodeName);
-				node = (Node) nodes.get(0);
-				if (node != null) {
-					if (addAdapters && (map != null || map.isManagedByParent()))
-						addDOMAdapter(curNode);
-					break;
-				}
-			}
-		}
-		return node;
-	}
-
-	protected void handleInvalidMultiNodes(String nodeName) {
-		throw new IllegalStateException(WFTUtilsResourceHandler.getString(WFTUtilsResourceHandler.EMF2DOMAdapterImpl_ERROR_0, new Object[]{nodeName}));
-	}
-
-	/**
-	 * Creates the path specified by <map>under <node>. Only the portion of the path that does not
-	 * exist (if any) is created
-	 * 
-	 * @param node
-	 *            org.w3c.dom.Node
-	 * @param map
-	 *            com.ibm.etools.mof2dom.Translator
-	 */
-	protected Text findOrCreateTextNode(Node parent, Translator map, String text) {
-		Text textNode = DOMUtilities.getChildTextNode(parent);
-		if (textNode != null) {
-			textNode.setData(text);
-		} else {
-			if (!isEmptyTag((Element) parent)) {
-				Text newNode = createTextNode(parent.getOwnerDocument(), map, text);
-				DOMUtilities.insertBeforeNode(parent, newNode, null);
-				return newNode;
-			}
-		}
-		return textNode;
-	}
-
-	protected Translator findTranslator(String tagName, boolean attributeMap) {
-		Translator[] maps = getChildTranslators();
-		for (int i = 0; i < maps.length; i++) {
-			Translator map = maps[i];
-			if (map.isMapFor(tagName) && attributeMap == map.isDOMAttribute())
-				return maps[i];
-		}
-
-		return null;
-	}
-
-	protected EMF2DOMAdapter getExistingAdapter(Node aNode) {
-		EMF2DOMAdapter adapter = primGetExistingAdapter(aNode);
-		if (adapter != null && adapter.isMOFProxy()) {
-			removeDOMAdapter(aNode, adapter);
-			adapter.getTarget().eAdapters().remove(adapter);
-			adapter = null;
-		}
-		return adapter;
-	}
-
-	protected void handleDependencyFeature(Notification msg) {
-		if (msg.getOldValue() != null)
-			removeDependencyAdapter((EObject) msg.getOldValue());
-		if (msg.getNewValue() != null)
-			addDependencyAdapter((EObject) msg.getNewValue());
-	}
-
-	protected boolean isDependencyFeature(Notification msg) {
-		switch (msg.getEventType()) {
-			case Notification.SET :
-				return fTranslator.isDependencyParent() && fTranslator.getDependencyFeature() == msg.getFeature();
-			default :
-				return false;
-		}
-	}
-
-	protected boolean isEmptyTag(Element parent) {
-		Revisit.toDo();
-		//Determine how to implement this with pure DOM apis, if possible.
-		return false;
-	}
-
-	protected void postUpdateDOMFeature(Translator map, Node node, EObject mofObject) {
-	}
-
-	protected void preUpdateDOMFeature(Translator map, Node node, EObject mofObject) {
-	}
-
-	/**
-	 * Update an attribute of the target DOM object from with the values currently stored in the MOF
-	 * object. The
-	 * 
-	 * @map specifies the name of the MOF attribute to update and the name of the DOM node.
-	 * 
-	 * @param map
-	 *            com.ibm.etools.mof2dom.AttributeTranslator
-	 */
-	protected void primUpdateDOMFeature(Translator map, Node node, EObject mofObject) {
-		Object attrValue = null;
-		boolean isSet = false;
-		if (map.isIDMap()) {
-			try {
-				attrValue = map.getMOFValue(mofObject);
-			} catch (IDTranslator.NoResourceException ex) {
-				//If the object has been removed from the resource,
-				//No need to update
-				return;
-			}
-			isSet = attrValue != null;
-		} else {
-			attrValue = map.getMOFValue(mofObject);
-			isSet = map.isSetMOFValue(mofObject);
-		}
-
-		if (map.isDOMAttribute()) {
-			// An attribute of the MOF object maps to an attribute of the
-			// DOM node. Get the value of the MOF attribute and set it
-			// into DOM node.
-			Element e = (Element) createDOMPath(node, map);
-			if (attrValue != null && isSet)
-				e.setAttribute(map.getDOMName(mofObject), map.convertValueToString(attrValue, mofObject));
-			else
-				e.removeAttribute(map.getDOMName(mofObject));
-		} else {
-			updateDOMSubtree(map, node, mofObject, attrValue);
-		}
-	}
-
-	/**
-	 * Update an attribute of the target DOM object from with the values currently stored in the MOF
-	 * object. The
-	 * 
-	 * @map specifies the name of the MOF attribute to update and the name of the DOM node.
-	 */
-	protected void primUpdateDOMLinkFeature(Translator map, Node node, EObject mofObject) {
-		LinkUpdaterTarget.INSTANCE.updateDOM(map, node, mofObject);
-
-	}
-
-	/**
-	 * Update all the children of the target MOF object in the relationship described by
-	 * 
-	 * @map.
-	 */
-	protected void primUpdateDOMMultiFeature(Translator map, Node node, EObject mofObject) {
-
-		List mofChildren = map.getMOFChildren(mofObject);
-		List domChildren = getDOMChildren(node, map);
-
-		primUpdateDOMMultiFeature(map, node, mofChildren, domChildren, mofObject);
-	}
-
-	/**
-	 * Update an attribute of the target MOF object from the DOM node subtree. The
-	 * 
-	 * @map specifies the name of the MOF attribute to update and the name of the DOM node.
-	 */
-	protected boolean primUpdateMOFFeature(Translator map, Node node, EObject mofObject) {
-		if (!map.featureExists(mofObject))
-			return false;
-		Object domValue = null;
-		boolean updateMOFAttAdapter = false;
-		boolean isUnset = false;
-		EMF2DOMAdapter attrAdapter = null;
-
-		Node child = findDOMNode(node, map, true);
-
-		if (map.isDOMAttribute() && child != null) {
-			// An attribute of the MOF object maps to an attribute of the
-			// DOM node. Get the value of the DOM attribute and set it
-			// into the MOF object.
-
-			Attr domAttr = (Attr) child.getAttributes().getNamedItem(map.getDOMName(mofObject));
-			if (domAttr != null) {
-				domValue = domAttr.getValue();
-				domValue = map.convertStringToValue((String) domValue, mofObject);
-			} else
-				isUnset = true;
-		} else {
-			// An attribute of the MOF object is actually a sub-element
-			// of the DOM node. Search for the first sub-element with
-			// the correct name to use as an attribute.
-			if (child != null) {
-				// Check to see if this is a single valued attribute that has
-				// a MOF object as its value
-				if (!map.isManagedByParent()) {
-					attrAdapter = createAdapter(child, map);
-					updateMOFAttAdapter = true;
-					domValue = attrAdapter.getTarget();
-				} else {
-					// Check to make sure the child is adapted. If not, adapt
-					// it.
-					addDOMAdapter(child);
-
-					// Extract the value from the text child
-					domValue = extractValue(child, map, mofObject);
-				}
-			} else
-				isUnset = true;
-		}
-
-		// Set the attribute extracted from the DOM to the MOF object.
-		boolean hasChanged = true;
-		try {
-			if (map.isIDMap())
-				map.setMOFValue(mofObject, domValue);
-			else {
-				Object oldValue = null;
-				oldValue = map.getMOFValue(mofObject);
-				boolean isSet = map.isSetMOFValue(mofObject);
-				//In the case of enums with default values, we need to trip
-				// the attribute from
-				//default to a set value
-				if (oldValue == domValue) {
-					if (oldValue == null || isSet)
-						hasChanged = false;
-				} else if (domValue == null && !isSet)
-					//If the domValue is null and the feature is not set, then
-					// we don't need
-					//to do anything
-					hasChanged = false;
-				else if (oldValue != null && oldValue.equals(domValue) && isSet)
-					hasChanged = false;
-				if (oldValue == null && domValue == null && map.isSetMOFValue(mofObject) == isUnset)
-					hasChanged = true;
-				if (hasChanged) {
-					if (!(map.isDataType()) && !map.isShared())
-						removeMOFValue((EObject) oldValue, map);
-					if (domValue == null)
-						map.unSetMOFValue(mofObject);
-					else
-						map.setMOFValue(mofObject, domValue);
-
-					if ((domValue == null && !(map.isEnumFeature())) || isUnset)
-						map.unSetMOFValue(mofObject); //unset
-					// null
-					// for
-					// non
-					// enum
-					// features
-
-					if (updateMOFAttAdapter)
-						attrAdapter.updateMOF();
-				}
-			}
-		} catch (FeatureValueConversionException ex) {
-			handleFeatureValueConversionException(ex);
-			map.unSetMOFValue(mofObject);
-		}
-		return hasChanged;
-	}
-
-	/**
-	 * Update an attribute of the target MOF object from the DOM node subtree. This method is only
-	 * called if the DOM node changes and the map is an object link map. The
-	 * 
-	 * @map specifies the name of the MOF attribute to update and the name of the DOM node.
-	 * 
-	 * @param map
-	 *            com.ibm.etools.mof2dom.AttributeTranslator
-	 * @return Return true if the MOF feature was updated, false if no update was done.
-	 */
-	protected void primUpdateMOFLinkFeature(Translator map, Node node, EObject mofObject) {
-		LinkUpdaterTarget.INSTANCE.updateMOF(map, node, mofObject);
-	}
-
-	/**
-	 * Update all the children of the target MOF object in the relationship described by
-	 * 
-	 * @map.
-	 * 
-	 * @param map
-	 *            com.ibm.etools.mof2dom.AttributeTranslator Describes the mapping from the MOF
-	 *            attribute name to the DOM node name
-	 */
-	protected void primUpdateMOFMultiFeature(Translator map, Node node, EObject mofObject) {
-		// If the feature is a collection of strings or ints, call a special
-		// method
-		// that handles this.
-		if (map.isManagedByParent()) {
-			updateMOFMultiPrimitiveFeature(map, node, mofObject);
-			return;
-		}
-
-		List nodeChildren = getDOMChildren(node, map);
-		List mofChildren = map.getMOFChildren(mofObject);
-
-		primUpdateMOFMultiFeature(map, node, mofChildren, nodeChildren);
-	}
-
-	protected void removeDependencyAdapter(EObject obj) {
-		Adapter existing = EcoreUtil.getExistingAdapter(obj, DependencyAdapter.KEY);
-		if (existing != null)
-			obj.eAdapters().remove(existing);
-	}
-
-	/**
-	 * Removes all the DOM children from <parent>that are represented by <map>.
-	 */
-	protected void removeDOMChildren(Node parent, Translator map) {
-		String[] domNames = map.getDOMNames();
-		HashSet domNamesSet = new HashSet(domNames.length);
-		for (int i = 0; i < domNames.length; i++)
-			domNamesSet.add(domNames[i]);
-
-		// Walk through all the children and find any that match the map.
-		NodeList nl = parent.getChildNodes();
-		List toRemove = new ArrayList();
-		for (int i = 0; i < nl.getLength(); i++) {
-			Node childNode = nl.item(i);
-			if (domNamesSet.contains(childNode.getNodeName()))
-				toRemove.add(childNode);
-		}
-
-		// Remove any children that were found.
-		for (int i = 0; i < toRemove.size(); i++) {
-			Node childNode = (Node) toRemove.get(i);
-			removeDOMChild(parent, childNode, true);
-		}
-	}
-
-	protected void setTargetFromNode() {
-		setTarget(fTranslator.createEMFObject(fNode.getNodeName(), extractReadAheadName()));
-	}
-
-	/**
-	 * Update an attribute of the target DOM object from with the values currently stored in the MOF
-	 * object. The
-	 * 
-	 * @map specifies the name of the MOF attribute to update and the name of the DOM node.
-	 * 
-	 * @param map
-	 *            com.ibm.etools.mof2dom.AttributeTranslator
-	 */
-	final public void updateDOMFeature(Translator map, Node node, EObject mofObject) {
-		if (!isNotificationEnabled())
-			return;
-		try {
-			preUpdateDOMFeature(map, node, mofObject);
-			if (map.isMultiValued()) {
-				updateDOMMultiFeature(map, node, mofObject);
-				return;
-			}
-
-			if (fDebug) {
-				org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("Updating DOM Node: " + node); //$NON-NLS-1$
-				org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tfrom: " + mofObject); //$NON-NLS-1$
-				org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tmap : " + map); //$NON-NLS-1$
-			}
-			boolean notificationFlag = isNotificationEnabled();
-			try {
-				setNotificationEnabled(false);
-				primUpdateDOMFeature(map, node, mofObject);
-			} finally {
-				setNotificationEnabled(notificationFlag);
-			}
-
-			if (map.isTargetLinkMap()) {
-				updateDOMLinkFeature(map, node, mofObject);
-			}
-		} finally {
-			postUpdateDOMFeature(map, node, mofObject);
-		}
-	}
-
-	/**
-	 * Update an attribute of the target DOM object from the values currently stored in the MOF
-	 * object. The
-	 * 
-	 * @map specifies the name of the MOF attribute to update and the name of the DOM node.
-	 * 
-	 * @param map
-	 *            com.ibm.etools.mof2dom.AttributeTranslator
-	 */
-	final protected void updateDOMLinkFeature(Translator map, Node node, EObject mofObject) {
-		if (fDebug) {
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("Updating DOM Node (link): " + node); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tfrom: " + mofObject); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tmap : " + map); //$NON-NLS-1$
-		}
-		primUpdateDOMLinkFeature(map, node, mofObject);
-	}
-
-	/**
-	 * Update all the children of the target MOF object in the relationship described by
-	 * 
-	 * @map.
-	 * 
-	 * @param map
-	 *            com.ibm.etools.mof2dom.AttributeTranslator Describes the mapping from the MOF
-	 *            attribute name to the DOM node name
-	 */
-	final protected void updateDOMMultiFeature(Translator map, Node node, EObject mofObject) {
-		if (fDebug) {
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("Updating DOM Node (multi): " + node); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tfrom: " + mofObject); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tmap : " + map); //$NON-NLS-1$
-		}
-		boolean notificationFlag = isNotificationEnabled();
-		try {
-			setNotificationEnabled(false);
-			primUpdateDOMMultiFeature(map, node, mofObject);
-		} finally {
-			setNotificationEnabled(notificationFlag);
-		}
-	}
-
-	/**
-	 * Update a DOM subtree to reflect the mofObject and map passed in. The subtree is of <node>is
-	 * updated.
-	 */
-	protected void updateDOMSubtree(Translator map, Node node, EObject mofObject, Object attrValue) {
-
-		if (map.featureExists(mofObject)) {
-			if ((map.isEnumFeature() || map.isBooleanFeature()) && (map.isUnsettable() && !map.isSetMOFValue(mofObject)))
-				attrValue = null;
-		} else
-			attrValue = map.extractStringValue(mofObject);
-
-		// Create and/or update the DOM subtree
-		if (attrValue != null) {
-			Node parent = createDOMPath(node, map);
-			if (map.isManagedByParent()) {
-				// Handle the case where the mof value is not another
-				// mof object (primitive)
-				if (map.getDOMName(mofObject) != null && map.getDOMName(mofObject).startsWith("#")) //$NON-NLS-1$
-					return;
-
-				Element child = map.isDOMTextValue() ? (Element) parent : findOrCreateNode(parent, map, map.getDOMName(mofObject));
-
-				findOrCreateTextNode(child, map, map.convertValueToString(attrValue, mofObject));
-			} else {
-				// Handle the case were the mof value is a mof object.
-				EObject mofValue = (EObject) attrValue;
-				EMF2DOMAdapter valueAdapter = (EMF2DOMAdapter) EcoreUtil.getExistingAdapter(mofValue, EMF2DOMAdapter.ADAPTER_CLASS);
-				if (valueAdapter != null)
-					valueAdapter.updateDOM();
-				else {
-					removeDOMChildren(parent, map);
-					EMF2DOMAdapter adapter = createAdapter(mofValue, map);
-					List mofChildren = map.getMOFChildren(mofObject);
-					List domChildren = getDOMChildren(parent, map);
-
-					Node insertBeforeNode = findInsertBeforeNode(parent, map, mofChildren, 0, domChildren);
-					DOMUtilities.insertBeforeNodeAndWhitespace(parent, adapter.getNode(), insertBeforeNode);
-					boolean notificationFlag = adapter.isNotificationEnabled();
-					adapter.setNotificationEnabled(false);
-					try {
-						indent(adapter.getNode(), map);
-					} finally {
-						adapter.setNotificationEnabled(notificationFlag);
-					}
-					adapter.updateDOM();
-				}
-			}
-		} else {
-			// The attribute value was set to null or unset. Remove any
-			// existing DOM nodes.
-			Node child = findDOMNode(node, map);
-			if (child != null)
-				removeDOMChild(child.getParentNode(), child);
-		}
-	}
-
-	/**
-	 * Update a feature that is set by linking to another existing object. This method is called
-	 * when the MOF object is updated in order to update DOM nodes.
-	 */
-	final protected void updateMOFLinkFeature(Translator map, Node node, EObject mofObject) {
-		if (fDebug) {
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("Updating MOFObject (link): " + mofObject); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tfrom: " + node); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tmap : " + map); //$NON-NLS-1$
-		}
-		boolean notificationFlag = isNotificationEnabled();
-		try {
-			setNotificationEnabled(false);
-			primUpdateMOFLinkFeature(map, node, mofObject);
-		} finally {
-			setNotificationEnabled(notificationFlag);
-		}
-	}
-
-	/**
-	 * Update all the children of the target MOF object in the relationship described by
-	 * 
-	 * @map.
-	 * 
-	 * @param map
-	 *            com.ibm.etools.mof2dom.AttributeTranslator Describes the mapping from the MOF
-	 *            attribute name to the DOM node name
-	 */
-	final protected void updateMOFMultiFeature(Translator map, Node node, EObject mofObject) {
-		if (fDebug) {
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("Updating MOFObject (multi): " + mofObject); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tfrom: " + node); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tmap : " + map); //$NON-NLS-1$
-		}
-		boolean notificationFlag = isNotificationEnabled();
-		try {
-			setNotificationEnabled(false);
-			primUpdateMOFMultiFeature(map, node, mofObject);
-		} finally {
-			setNotificationEnabled(notificationFlag);
-		}
-	}
-
-	/**
-	 * Update all the children of the target MOF object in the relationship described by
-	 * 
-	 * @map. The relationship MUST BE a collection of string for this method to work.
-	 */
-	protected void updateMOFMultiPrimitiveFeature(Translator map, Node node, EObject mofObject) {
-		List nodeChildren = getDOMChildren(node, map);
-
-		map.clearList(mofObject);
-
-		// Go through the list of nodes and update the MOF collection
-		int addIndex = 0;
-		for (int i = 0; i < nodeChildren.size(); i++) {
-			Node child = (Node) nodeChildren.get(i);
-			Object attributeValue = extractValue(child, map, mofObject);
-			boolean advanceAddIndex = true;
-			if (attributeValue != null){
-				if(map.getFeature() != null && map.getFeature().isUnique() && mofObject.eGet(map.getFeature()) != null && mofObject.eGet(map.getFeature()) instanceof List && ((List) mofObject.eGet(map.getFeature())).contains(attributeValue)){
-					advanceAddIndex = false;
-					String domName = map.domNameAndPath != null ? map.domNameAndPath : "attribute"; //$NON-NLS-1$
-					org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError(new IllegalArgumentException("The 'no duplicates' constraint is violated by "+domName+" = "+attributeValue));
-					handleInvalidMultiNodes(child.getNodeName());
-				} else {
-					map.setMOFValue(mofObject, attributeValue, addIndex);
-				}
-				if(advanceAddIndex){
-					addIndex ++;
-				}
-			}
-			
-			// Adapt the node so update will occur.
-			addDOMAdapter(child);
-		}
-		if (map.hasDOMPath() && nodeChildren.isEmpty() && findDOMPath(node, map, false) != null)
-			map.setMOFValueFromEmptyDOMPath(mofObject);
-	}
-
-	/**
-	 * Update an attribute of the target MOF object from the DOM node subtree. The
-	 * 
-	 * @map specifies the name of the MOF attribute to update and the name of the DOM node.
-	 * 
-	 * @param map
-	 *            com.ibm.etools.mof2dom.AttributeTranslator
-	 */
-	public void updateMOFFeature(Translator map, Node node, EObject mofObject) {
-		if (!isNotificationEnabled())
-			return;
-		if (map.isMultiValued()) {
-			updateMOFMultiFeature(map, node, mofObject);
-			return;
-		} else if (map.isComment()) {
-			updateMOFCommentFeature(map, node, mofObject);
-			return;
-		}
-
-		// TODO MDE Add a map.isComment() and updateMOFCommentFeature(map, node, mofObject);
-
-		if (fDebug) {
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("Updating MOFObject: " + mofObject); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tfrom: " + node); //$NON-NLS-1$
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError("\tmap : " + map); //$NON-NLS-1$
-		}
-		boolean notificationFlag = isNotificationEnabled();
-		boolean hasChanged = false;
-		try {
-			setNotificationEnabled(false);
-			hasChanged = primUpdateMOFFeature(map, node, mofObject);
-		} finally {
-			setNotificationEnabled(notificationFlag);
-		}
-
-		if (map.isTargetLinkMap() && hasChanged)
-			updateMOFLinkFeature(map, node, mofObject);
-	}
-
-	/**
-	 * @param map
-	 * @param node
-	 * @param mofObject
-	 */
-	public void updateMOFCommentFeature(Translator map, Node node, EObject mofObject) {
-		Node commentNode = node;
-		/* scan up the dom to find the first comment node before this node */
-		while ((commentNode = commentNode.getPreviousSibling()) != null && commentNode.getNodeType() != Node.COMMENT_NODE) {
-			/* no comment available */
-			if (commentNode.getNodeType() == Node.ELEMENT_NODE)
-				return;
-		}
-		if (commentNode != null)
-			map.setMOFValue(mofObject, commentNode.getNodeValue());
-
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMRenderer.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMRenderer.java
deleted file mode 100644
index 53fbdc7..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMRenderer.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerConfigurationException;
-import javax.xml.transform.TransformerException;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.TransformerFactoryConfigurationError;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import org.eclipse.emf.common.util.WrappedException;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.internal.emf.utilities.DOMLoadOptions;
-import org.eclipse.wst.common.internal.emf.utilities.DOMUtilities;
-import org.eclipse.wst.common.internal.emf.utilities.Revisit;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.SAXException;
-
-
-
-public class EMF2DOMRenderer extends AbstractRendererImpl implements Renderer {
-
-	protected Map domAdapterRegistry;
-	protected boolean needsToCreateDOM = true;
-	protected Document document;
-
-	/**
-	 * Constructor for DOMRendererImpl.
-	 */
-	public EMF2DOMRenderer() {
-		super();
-		if (managesDOMAdapters())
-			initDOMAdapterRegistry();
-	}
-
-	/**
-	 * @see com.ibm.etools.emf2xml.Renderer#doLoad(InputStream, Map)
-	 */
-	public void doLoad(InputStream in, Map options) throws IOException {
-		if ((in != null) || !useStreamsForIO()) {
-			loadDocument(in, options);
-			EMF2DOMAdapter adapter = createRootDOMAdapter();
-			adapter.updateMOF();
-		}
-	}
-
-	protected void loadDocument(InputStream in, Map options) throws IOException {
-		try {
-			DOMLoadOptions domOpts = new DOMLoadOptions();
-			domOpts.setAllowJavaEncodings(true);
-			domOpts.setExpandEntityRefererences(true);
-			domOpts.setValidate(isValidating());
-			document = DOMUtilities.loadDocument(in, domOpts, getResource().getEntityResolver());
-			needsToCreateDOM = false;
-		} catch (RuntimeException t_rex) {
-			throw t_rex;
-		} catch (IOException iox) {
-			throw iox;
-		} catch (Exception ex) {
-			throw new WrappedException(ex);
-		}
-	}
-
-
-	/**
-	 * @see com.ibm.etools.emf2xml.Renderer#doSave(OutputStream, Map)
-	 */
-	public void doSave(OutputStream outputStream, Map options) throws IOException {
-		createDOMTreeIfNecessary();
-		serializeDocument(outputStream);
-	}
-
-	/**
-	 * Subclasses should override if adapters are not cached within this renderer, e.g., they are
-	 * stored in notifying Nodes
-	 */
-	protected boolean managesDOMAdapters() {
-		return true;
-	}
-
-	protected void initDOMAdapterRegistry() {
-		if (domAdapterRegistry == null)
-			domAdapterRegistry = new HashMap();
-	}
-
-	public void registerDOMAdapter(Node node, EMF2DOMAdapter adapter) {
-		domAdapterRegistry.put(node, adapter);
-	}
-
-	public EMF2DOMAdapter getExistingDOMAdapter(Node node) {
-		return (EMF2DOMAdapter) domAdapterRegistry.get(node);
-	}
-
-	public void removeDOMAdapter(Node aNode, EMF2DOMAdapter anAdapter) {
-		domAdapterRegistry.remove(aNode);
-	}
-
-	/**
-	 * @see com.ibm.etools.emf2xml.Renderer#prepareToAddContents()
-	 */
-	public void prepareToAddContents() {
-		// createDOMTreeIfNecessary();
-	}
-
-	protected Node createDOMTree() {
-		createDocument();
-		EMF2DOMAdapter adapter = createRootDOMAdapter();
-		adapter.updateDOM();
-		needsToCreateDOM = false;
-		return document;
-	}
-
-
-	protected EMF2DOMAdapter createRootDOMAdapter() {
-		EMF2DOMAdapter root = new EMF2DOMAdapterImpl(getResource(), document, this, getResource().getRootTranslator());
-		registerDOMAdapter(document, root);
-		return root;
-	}
-
-
-	protected void createDOMTreeIfNecessary() {
-		if (needsToCreateDOM)
-			createDOMTree();
-	}
-
-	/**
-	 * Create a new Document given
-	 * 
-	 * @aResource.
-	 */
-	protected void createDocument() {
-		TranslatorResource res = getResource();
-		res.setDefaults();
-		try {
-			document = DOMUtilities.createNewDocument(res.getDoctype(), res.getPublicId(), res.getSystemId());
-		} catch (ParserConfigurationException e) {
-			throw new WrappedException(e);
-		} catch (SAXException e) {
-			throw new WrappedException(e);
-		} catch (IOException e) {
-			throw new WrappedException(e);
-		}
-	}
-
-	public void serializeDocument(OutputStream out) throws IOException {
-		/*
-		 * OutputFormat format = createOutputFormat(); Serializer serializer =
-		 * SerializerFactory.getSerializerFactory(Method.XML).makeSerializer(out, format);
-		 * serializer.asDOMSerializer().serialize(document);
-		 */
-		try {
-			TransformerFactory factory = TransformerFactory.newInstance();
-			/*
-			 * try { factory.setAttribute(JAXP_SCHEMA_LANGUAGE, W3C_XML_SCHEMA); } catch
-			 * (IllegalArgumentException x) { }
-			 */
-			Transformer transformer = factory.newTransformer();
-
-			transformer.setOutputProperty(OutputKeys.ENCODING, getResource().getEncoding());
-			transformer.setOutputProperty(OutputKeys.VERSION, getResource().getXMLVersion());
-			transformer.setOutputProperty(OutputKeys.METHOD, "xml"); //$NON-NLS-1$
-			transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "no"); //$NON-NLS-1$
-			if (getResource().getPublicId() != null)
-				transformer.setOutputProperty(OutputKeys.DOCTYPE_PUBLIC, getResource().getPublicId());
-			if (getResource().getSystemId() != null)
-				transformer.setOutputProperty(OutputKeys.DOCTYPE_SYSTEM, getResource().getSystemId());
-			transformer.setOutputProperty(OutputKeys.INDENT, "yes"); //$NON-NLS-1$            
-			transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4"); //$NON-NLS-1$ //$NON-NLS-2$
-			DOMSource source = new DOMSource(document.getDocumentElement());
-			/* source.setSystemId(getResource().getSystemId()); */
-			transformer.transform(source, new StreamResult(out));
-		} catch (TransformerConfigurationException e) {
-			Logger.getLogger().logError(e);
-		} catch (TransformerFactoryConfigurationError e) {
-			Logger.getLogger().logError(e);
-		} catch (TransformerException e) {
-			Logger.getLogger().logError(e);
-		} finally {
-		}
-	}
-
-	/*
-	 * protected OutputFormat createOutputFormat() { OutputFormat format = new OutputFormat();
-	 * format.setIndenting(true); format.setLineSeparator(DOMUtilities.NEWLINE_STRING);
-	 * //$NON-NLS-1$ format.setEncoding(getResource().getEncoding());
-	 * format.setVersion(getResource().getXMLVersion()); return format; }
-	 */
-
-	public void replaceDocumentType(String docTypeName, String publicId, String systemId) {
-		Revisit.revisit();
-		Document newDoc = null;
-		// Need be able to update the doctype directly on the existing document; right now can't
-		// because
-		// of limitations on parser neutral apis
-
-		try {
-			newDoc = DOMUtilities.createNewDocument(docTypeName, publicId, systemId);
-		} catch (ParserConfigurationException e) {
-			throw new WrappedException(e);
-		} catch (SAXException e) {
-			throw new WrappedException(e);
-		} catch (IOException e) {
-			throw new WrappedException(e);
-		}
-
-
-		replaceNode(document.getDocumentElement(), newDoc, newDoc);
-		readapt(document, newDoc);
-		document = newDoc;
-	}
-
-	protected void replaceNode(Node oldChild, Node newParent, Document newDoc) {
-		Node newChild = newDoc.importNode(oldChild, false);
-		newParent.appendChild(newChild);
-		readapt(oldChild, newChild);
-		NodeList children = oldChild.getChildNodes();
-		int length = children.getLength();
-		for (int i = 0; i < length; i++) {
-			replaceNode(children.item(i), newChild, newDoc);
-		}
-	}
-
-	public void preUnload() {
-		EMF2DOMAdapter adapter = (EMF2DOMAdapter) EcoreUtil.getAdapter(resource.eAdapters(), EMF2DOMAdapter.ADAPTER_CLASS);
-		if (adapter != null) {
-			adapter.removeAdapters(adapter.getNode());
-		}
-	}
-
-	protected void readapt(Node oldChild, Node newChild) {
-		EMF2DOMAdapter adapter = getExistingDOMAdapter(oldChild);
-		if (adapter != null) {
-			registerDOMAdapter(newChild, adapter);
-			// Some nodes are managed by the parent and thus the
-			// node should not be set on the parent adapter
-			if (adapter.getNode() == oldChild)
-				adapter.setNode(newChild);
-		}
-	}
-
-	public int getVersionID() {
-		return getResource().getVersionID();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMRendererFactory.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMRendererFactory.java
deleted file mode 100644
index fce5603..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMRendererFactory.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-public class EMF2DOMRendererFactory extends RendererFactory {
-
-	public static final EMF2DOMRendererFactory INSTANCE = new EMF2DOMRendererFactory();
-
-	public EMF2DOMRendererFactory() {
-		super();
-	}
-
-	/**
-	 * @see com.ibm.etools.emf2xml.RendererFactory#createRenderer()
-	 */
-	public Renderer createRenderer() {
-		EMF2DOMRenderer renderer = new EMF2DOMRenderer();
-		renderer.setValidating(isValidating());
-		return renderer;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMRendererFactoryDefaultHandler.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMRendererFactoryDefaultHandler.java
deleted file mode 100644
index 1257a06..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2DOMRendererFactoryDefaultHandler.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Dec 1, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class EMF2DOMRendererFactoryDefaultHandler implements RendererFactoryDefaultHandler {
-
-	public static final EMF2DOMRendererFactoryDefaultHandler INSTANCE = new EMF2DOMRendererFactoryDefaultHandler();
-
-	/**
-	 *  
-	 */
-	protected EMF2DOMRendererFactoryDefaultHandler() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.RendererFactoryDefaultHandler#getDefaultRendererFactory()
-	 */
-	public RendererFactory getDefaultRendererFactory() {
-		return EMF2DOMRendererFactory.INSTANCE;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXDocumentHandler.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXDocumentHandler.java
deleted file mode 100644
index a25bb63..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXDocumentHandler.java
+++ /dev/null
@@ -1,210 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import java.io.IOException;
-
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.xml.sax.Attributes;
-import org.xml.sax.EntityResolver;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXParseException;
-import org.xml.sax.helpers.DefaultHandler;
-
-/**
- * The EMF2SAXDocumentHandler is utilized by the SAX parser to announce XML Events, such as
- * beginning and end of XML elements and the contents of those elements.
- * 
- * @author mdelder
- */
-public class EMF2SAXDocumentHandler extends DefaultHandler {
-
-	private TranslatorResource resource = null;
-	private final CacheEventStack eventStack = new CacheEventStack();
-	private CacheEventPool availableEventPool = new CacheEventPool();
-
-	/**
-	 * Create an EMF2SAXDocumentHandler to populate the given resource.
-	 *  
-	 */
-	public EMF2SAXDocumentHandler(TranslatorResource resource) {
-		this.resource = resource;
-	}
-
-	/**
-	 * @see org.xml.sax.helpers.DefaultHandler#resolveEntity(java.lang.String, java.lang.String)
-	 */
-	public InputSource resolveEntity(String publicId, String systemId) throws SAXException {
-		InputSource result = null;
-		this.resource.setDoctypeValues(publicId, systemId);
-
-		try {
-			EntityResolver entityResolver = this.resource.getEntityResolver();
-
-			if (entityResolver != null)
-				result = entityResolver.resolveEntity(publicId, systemId);
-			else
-				result = super.resolveEntity(publicId, systemId);
-		} catch (IOException ioe) {
-			throw new SAXException(ioe);
-		}
-
-		return result;
-	}
-
-	/**
-	 * @see org.xml.sax.ContentHandler#startDocument()
-	 */
-	public void startDocument() throws SAXException {
-		/*
-		 * The endDocument() method should have frozen the pool, or it may not be warmed yet. In
-		 * either case, this method call will do as little work as necessary
-		 */
-		availableEventPool.warmPool();
-
-		/* This line should not be necessary, but is left for safty */
-		eventStack.clear();
-		this.createRoot(this.resource);
-
-	}
-
-	/**
-	 * @see org.xml.sax.ContentHandler#startElement(java.lang.String, java.lang.String,
-	 *      java.lang.String, org.xml.sax.Attributes)
-	 */
-	public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
-		addToStack(qName, attributes);
-	}
-
-	/**
-	 * @see org.xml.sax.ContentHandler#characters(char[], int, int)
-	 */
-	public void characters(char[] data, int start, int length) throws SAXException {
-
-		CacheEventNode currentRecord = getCurrentRecord();
-		if (currentRecord != null) {
-			currentRecord.appendToBuffer(data, start, length);
-		}
-	}
-
-	/**
-	 * @see org.xml.sax.ContentHandler#endElement(java.lang.String, java.lang.String,
-	 *      java.lang.String)
-	 */
-	public void endElement(String uri, String localName, String qName) throws SAXException {
-
-		CacheEventNode currentRecord = null;
-
-		/*
-		 * This should only happen in the case where the DOMPath was ignored so the stack does not
-		 * quite match with the XML data structure. In this case we do nothing
-		 */
-		if (qName.equals(this.getCurrentRecord().getNodeName())) {
-			currentRecord = this.removeCurrentRecord();
-			if (currentRecord != null) {
-				currentRecord.commit();
-			}
-		}
-	}
-
-	/**
-	 * @see org.xml.sax.ContentHandler#endDocument()
-	 */
-	public void endDocument() throws SAXException {
-		CacheEventNode lastRecord = this.removeCurrentRecord();
-		lastRecord.commit();
-		availableEventPool.freezePool();
-	}
-
-	/**
-	 * @see org.xml.sax.ErrorHandler#error(org.xml.sax.SAXParseException)
-	 */
-	public void error(SAXParseException ex) throws SAXException {
-		throw ex;
-	}
-
-	/**
-	 * @see org.xml.sax.ErrorHandler#fatalError(org.xml.sax.SAXParseException)
-	 */
-	public void fatalError(SAXParseException ex) throws SAXException {
-		throw ex;
-	}
-
-	/**
-	 * @see org.xml.sax.ErrorHandler#warning(org.xml.sax.SAXParseException)
-	 */
-	public void warning(SAXParseException ex) throws SAXException {
-		Logger.getLogger().logWarning(ex);
-	}
-
-	/**
-	 * @return
-	 */
-	public TranslatorResource getResource() {
-		return resource;
-	}
-
-	protected void createRoot(TranslatorResource resourceArg) {
-		this.eventStack.push(availableEventPool.createCacheEventNode(resourceArg));
-	}
-
-	protected void addToStack(String nodeName, Attributes attributes) {
-		CacheEventNode parent = this.getCurrentRecord();
-		if (!parent.isChildIgnorable(nodeName)) {
-			this.eventStack.push(availableEventPool.createCacheEventNode(parent, nodeName, attributes));
-		}
-	}
-
-	/**
-	 * Return the current CENO without removing it from the event stack.
-	 * 
-	 * @return the current CENO without removing it
-	 */
-	protected CacheEventNode getCurrentRecord() {
-		CacheEventNode result = null;
-		if (!this.eventStack.isEmpty()) {
-			result = this.eventStack.peek();
-		}
-		return result;
-	}
-
-	/**
-	 * Return the current CENO and remove it from the event stack.
-	 * 
-	 * @return the current CENO and remove it
-	 */
-	protected CacheEventNode removeCurrentRecord() {
-		CacheEventNode result = null;
-		if (!this.eventStack.isEmpty()) {
-			result = this.eventStack.pop();
-		}
-		return result;
-	}
-
-	//	private final void printStack() {
-	//		// System.out.println("Printing stack ...");
-	//		// for (int i = 0; i < this.eventStack.size(); i++) {
-	//		// debug("stack[" + i + "]: " + eventStack.get(i));
-	//		// }
-	//		// System.out.println("... Printed stack");
-	//	}
-	//
-	//	private final static void debug(Object obj) {
-	//		// System.out.println(obj);
-	//	}
-	//
-	//	private final static void warn(Object obj) {
-	//		//System.err.println(obj);
-	//	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXRenderer.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXRenderer.java
deleted file mode 100644
index 86f721f..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXRenderer.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.Map;
-
-import javax.xml.parsers.SAXParser;
-import javax.xml.parsers.SAXParserFactory;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerConfigurationException;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.TransformerFactoryConfigurationError;
-import javax.xml.transform.sax.SAXTransformerFactory;
-import javax.xml.transform.sax.TransformerHandler;
-import javax.xml.transform.stream.StreamResult;
-
-import org.eclipse.emf.common.util.WrappedException;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXNotRecognizedException;
-import org.xml.sax.XMLReader;
-
-/**
- * @author mdelder
- */
-public class EMF2SAXRenderer extends AbstractRendererImpl {
-
-	/**
-	 *  
-	 */
-	public EMF2SAXRenderer() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#doLoad(java.io.InputStream, java.util.Map)
-	 */
-	public void doLoad(InputStream in, Map options) {
-		try {
-			SAXParserFactory factory = SAXParserFactory.newInstance();
-			factory.setValidating(isValidating());
-			factory.setNamespaceAware(true);
-			/*
-			 * Causes errors in IBM JDK try { factory.setAttribute(JAXP_SCHEMA_LANGUAGE,
-			 * W3C_XML_SCHEMA); } catch (IllegalArgumentException x) { }
-			 */
-			SAXParser parser = factory.newSAXParser();
-			XMLReader reader = parser.getXMLReader();
-			EMF2SAXDocumentHandler handler = new EMF2SAXDocumentHandler(this.getResource());
-			try {
-				reader.setFeature("http://xml.org/sax/features/validation", isValidating()); //$NON-NLS-1$
-			} catch (SAXNotRecognizedException snre) {
-			}
-			try {
-				reader.setFeature("http://xml.org/sax/features/namespace-prefixes", true); //$NON-NLS-1$
-			} catch (SAXNotRecognizedException snre) {
-			}
-			try {
-				reader.setFeature("http://apache.org/xml/features/validation/schema", isValidating()); //$NON-NLS-1$
-			} catch (SAXNotRecognizedException e) {
-				reader.setFeature("http://xml.org/sax/features/validation", false); //$NON-NLS-1$
-				Logger.getLogger().log("Warning: Parser does not support \"http://apache.org/xml/features/validation/schema\". Validation will be disabled."); //$NON-NLS-1$
-			}
-			try {
-				reader.setFeature("http://apache.org/xml/features/allow-java-encodings", true); //$NON-NLS-1$
-			} catch (SAXNotRecognizedException e) {
-				Logger.getLogger().log("Warning: Parser does not support \"http://apache.org/xml/features/allow-java-encodings\"."); //$NON-NLS-1$
-			}
-			/*
-			 * try { reader.setProperty("http://xml.org/sax/properties/lexical-handler", handler); }
-			 * catch (SAXNotRecognizedException e) { }
-			 */
-			reader.setContentHandler(handler);
-			reader.setErrorHandler(handler);
-			//reader.setDTDHandler(handler);
-			reader.setEntityResolver(handler);
-			InputSource testsource = new InputSource(in);
-			reader.parse(testsource);
-		} catch (RuntimeException t_rex) {
-			throw t_rex;
-		} catch (Exception ex) {
-			throw new WrappedException(ex);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#doSave(java.io.OutputStream, java.util.Map)
-	 */
-	public void doSave(OutputStream outputStream, Map options) throws IOException {
-
-		/*
-		 * try { Serializer serializer =
-		 * SerializerFactory.getSerializerFactory(Method.XML).makeSerializer(outputStream,
-		 * createOutputFormat()); serializer.setOutputByteStream(outputStream); ContentHandler
-		 * handler = serializer.asContentHandler();
-		 */
-
-		TransformerHandler handler = null;
-		try {
-			try {
-				SAXTransformerFactory factory = (SAXTransformerFactory) TransformerFactory.newInstance();
-				handler = factory.newTransformerHandler();
-
-				handler.setResult(new StreamResult(outputStream));
-				Transformer transformer = handler.getTransformer();
-				transformer.setOutputProperty(OutputKeys.INDENT, "yes"); //$NON-NLS-1$
-				transformer.setOutputProperty(OutputKeys.ENCODING, getResource().getEncoding());
-				transformer.setOutputProperty(OutputKeys.VERSION, getResource().getXMLVersion());
-				transformer.setOutputProperty(OutputKeys.METHOD, "xml"); //$NON-NLS-1$
-				transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "no"); //$NON-NLS-1$                
-				transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4"); //$NON-NLS-1$ //$NON-NLS-2$
-
-				if (getResource().getPublicId() != null)
-					transformer.setOutputProperty(OutputKeys.DOCTYPE_PUBLIC, getResource().getPublicId());
-				if (getResource().getSystemId() != null)
-					transformer.setOutputProperty(OutputKeys.DOCTYPE_SYSTEM, getResource().getSystemId());
-
-			} catch (TransformerConfigurationException e) {
-				Logger.getLogger().logError(e);
-			} catch (TransformerFactoryConfigurationError e) {
-				Logger.getLogger().logError(e);
-			}
-			if (handler == null) {
-				Logger.getLogger("SAX Writer is null"); //$NON-NLS-1$
-				return;
-			}
-			EMF2SAXWriter writer = new EMF2SAXWriter();
-			writer.serialize(this.resource, handler);
-		} catch (SAXException saxe) {
-			throw new WrappedException(saxe);
-		}
-	}
-
-	/*
-	 * protected OutputFormat createOutputFormat() { OutputFormat format = new OutputFormat();
-	 * format.setIndenting(true); format.setLineSeparator(DOMUtilities.NEWLINE_STRING);
-	 * //$NON-NLS-1$ format.setEncoding(getResource().getEncoding());
-	 * format.setVersion(getResource().getXMLVersion()); if (this.resource != null)
-	 * format.setDoctype(this.resource.getPublicId(), this.resource.getSystemId()); return format; }
-	 */
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#prepareToAddContents()
-	 */
-	public void prepareToAddContents() {
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.Renderer#getVersionID()
-	 */
-	public int getVersionID() {
-		return getResource().getVersionID();
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXRendererFactory.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXRendererFactory.java
deleted file mode 100644
index d3fd5d9..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXRendererFactory.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Aug 19, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-/**
- * Used to create instances of the EMF2SAXRenderer
- * 
- * @author mdelder
- */
-public class EMF2SAXRendererFactory extends RendererFactory {
-
-	public static final EMF2SAXRendererFactory INSTANCE = new EMF2SAXRendererFactory();
-
-	protected EMF2SAXRendererFactory() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.RendererFactory#createRenderer()
-	 */
-	public Renderer createRenderer() {
-		EMF2SAXRenderer renderer = new EMF2SAXRenderer();
-		renderer.setValidating(isValidating());
-		return renderer;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXWriter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXWriter.java
deleted file mode 100644
index 6955734..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/EMF2SAXWriter.java
+++ /dev/null
@@ -1,387 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import java.util.List;
-import java.util.Stack;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-import org.xml.sax.Attributes;
-import org.xml.sax.ContentHandler;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.AttributesImpl;
-
-/**
- * The EMF2SAXWriter handles the serialization of EMF Resources using SAX events. SAX events are
- * triggered to the content handler as the tree is being parsed. These events can then be written
- * into any stream wrapped by the ContentHandler.
- * 
- * @author mdelder
- */
-public class EMF2SAXWriter {
-
-	public static final String NAMESPACE = "";//"http://java.sun.com/xml/ns/j2ee"; //$NON-NLS-1$
-
-	/* Used in those cases where no Attributes are necessary */
-	private static final Attributes EMPTY_ATTRIBUTES = new AttributesImpl();
-
-	/**
-	 * Serialize an EMF resource into an XML Stream using the given ContentHandler. Note that this
-	 * method can also be used to copy a given EMF Resource if the EMF2SAXDocumentHandler is used as
-	 * the given ContentHandler.
-	 * 
-	 * @param resource
-	 * @param handler
-	 */
-	public void serialize(TranslatorResource resource, ContentHandler handler) throws SAXException {
-
-		Translator rootTranslator = resource.getRootTranslator();
-		EList contents = resource.getContents();
-
-		if (contents.size() != 1) {
-			throw new IllegalStateException("The contents of a resource may only contain one EMF Model Object."); //$NON-NLS-1$
-		}
-		handler.startDocument();
-		EObject element = (EObject) contents.get(0);
-		serialize(handler, element, rootTranslator, new WriterHints(resource));
-		handler.endDocument();
-
-	}
-
-	private void serialize(ContentHandler handler, EObject target, Translator translator, WriterHints hints) throws SAXException {
-
-		List mofChildren = null;
-		Object rawValue = null;
-		EObject newTarget = null;
-		Translator currentChildTranslator = null;
-		Translator nextTranslator = null;
-		char[] characterData = null;
-		String convertedValue = null;
-		Attributes attributes = null;
-		String childDomName = null;
-		final int version = hints.getVersion();
-
-		/*
-		 * Processing hints are used to remember where are in the iteration of the translator's
-		 * children. see the TranslatorFilter for more information on how this array is used.
-		 */
-		int[] processingHints = TranslatorFilter.createProcessingHints();
-
-		String targetDomName = translator.getDOMName(target);
-
-		attributes = getAttributes(translator, target, hints);
-
-		handler.startElement(NAMESPACE, targetDomName, targetDomName, attributes);
-
-		currentChildTranslator = TranslatorFilter.getNextObjectTranslator(translator, processingHints[TranslatorFilter.NEXT_START_HINT_INDX], processingHints, target, version);
-		while (currentChildTranslator != null) {
-			/* For each Child Translator of the Translator parameter passed into the method */
-
-			/* Does the Translator have any MOF Children? */
-			mofChildren = currentChildTranslator.getMOFChildren(target);
-			openDomPathIfNecessary(handler, hints, currentChildTranslator, target, mofChildren);
-
-			if (currentChildTranslator.isManagedByParent()) {
-				/*
-				 * Translators which are managed by their parents require less processing -- just
-				 * convert their value to a string and write it out as the content of an XML element
-				 */
-				childDomName = currentChildTranslator.getDOMName(target);
-				if (!currentChildTranslator.isEmptyTag()) {
-					/* The Translator is not an Empty tag. Its text content is significant */
-
-					if (mofChildren.size() > 0) {
-						for (int j = 0; j < mofChildren.size(); j++) {
-
-							/* Text only translators will not have open and close XML elements */
-							if (!currentChildTranslator.isDOMTextValue())
-								handler.startElement(NAMESPACE, childDomName, childDomName, EMPTY_ATTRIBUTES);
-
-							rawValue = mofChildren.get(j);
-							/* convertValueToString should always return a non-null String */
-							convertedValue = currentChildTranslator.convertValueToString(rawValue, target);
-							characterData = XMLEncoderDecoder.escape(convertedValue).toCharArray();
-							handler.characters(characterData, 0, characterData.length);
-
-							if (!currentChildTranslator.isDOMTextValue())
-								handler.endElement(NAMESPACE, childDomName, childDomName);
-						}
-					}
-				} else {
-					/*
-					 * The Translator is an Empty Element (its mere presence has significance) (e.g.
-					 * <cascade-delete/>
-					 */
-
-					if (currentChildTranslator.isBooleanFeature()) {
-						/* Boolean features may or may not be rendered */
-						rawValue = mofChildren.get(0);
-						if (rawValue != null && ((Boolean) rawValue).booleanValue()) {
-							handler.startElement(NAMESPACE, childDomName, childDomName, EMPTY_ATTRIBUTES);
-							handler.endElement(NAMESPACE, childDomName, childDomName);
-						}
-
-					} else {
-						/* Always render any other Empty elements */
-						handler.startElement(NAMESPACE, childDomName, childDomName, EMPTY_ATTRIBUTES);
-						handler.endElement(NAMESPACE, childDomName, childDomName);
-					}
-				}
-			} else {
-
-				/* The Translator is a more complex feature, handle its processing recursively */
-				for (int j = 0; j < mofChildren.size(); j++) {
-					newTarget = (EObject) mofChildren.get(j);
-					serialize(handler, newTarget, currentChildTranslator, hints);
-				}
-			}
-
-			/* Fetch the next peer translator */
-			nextTranslator = TranslatorFilter.getNextObjectTranslator(translator, processingHints[TranslatorFilter.NEXT_START_HINT_INDX], processingHints, target, version);
-
-			closeDomPathIfNecessary(handler, hints, currentChildTranslator, nextTranslator, target, mofChildren);
-
-			/*
-			 * We needed to invoke closeDomPathIfNecessary() with the peer, now we move on to
-			 * process that peer
-			 */
-			currentChildTranslator = nextTranslator;
-
-		}
-		handler.endElement(NAMESPACE, targetDomName, targetDomName);
-	}
-
-	/**
-	 * Determines whether or not a DOM Path should be rendered. This method is particularly useful
-	 * for determining whether Empty XML elements are relevant and should be written to the XML
-	 * stream.
-	 * 
-	 * @param target
-	 *            The EMF Target of the Translation
-	 * @param currentChildTranslator
-	 *            The current Translator
-	 * @param mofChildren
-	 *            The mofChildren that were found for the Translator on the Target
-	 * @return
-	 */
-	private boolean shouldRenderDomPath(EObject target, Translator currentChildTranslator, List mofChildren) {
-		return  (currentChildTranslator.shouldRenderEmptyDOMPath(target) || mofChildren.size() > 0);
-	}
-
-	/**
-	 * openDomPathIfNecessary will write the current DOM Path to the serialization stream if it has
-	 * not been written by a previous peer translator. The processing results in the collapse of
-	 * Peer Translators with matching DOM Paths into a single XML parent element.
-	 * 
-	 * @param handler
-	 *            The ContentHandler which is writing the XML result
-	 * @param hints
-	 *            A Global container for information specific to a single XML document
-	 * @param currentChildTranslator
-	 *            The active Translator being processed
-	 * @param target
-	 *            The EMF Target of the Translation
-	 * @throws SAXException
-	 */
-	private void openDomPathIfNecessary(ContentHandler handler, WriterHints hints, Translator currentChildTranslator, EObject target, List mofChildren) throws SAXException {
-
-		/* If the translator does not have a DOM Path, then we do nothing */
-		if (currentChildTranslator.hasDOMPath() && shouldRenderDomPath(target, currentChildTranslator, mofChildren)) {
-
-			String childDomPath = currentChildTranslator.getDOMPath();
-
-			/*
-			 * IsDomPathActive() will verify whether this DOM Path has already been written to the
-			 * XML stream
-			 */
-			if (!hints.isDomPathActive(childDomPath)) {
-
-				/*
-				 * Write an open element for the DOM Path and "remember" that we have written it
-				 */
-				handler.startElement(NAMESPACE, childDomPath, childDomPath, EMPTY_ATTRIBUTES);
-				hints.pushDomPath(childDomPath);
-			}
-
-		}
-	}
-
-	/**
-	 * closeDomPathIfNecessary will determine whether the next peer Translator shares the active DOM
-	 * Path of the current Translator. If the next peer Translator has the same DOM Path, no action
-	 * will be taken (hence condensing the elements into a single XML parent). However, if the DOM
-	 * Path differs (including the Next Peer Translator has no DOM Path) then the current DOM Path
-	 * will be closed (a close XML element is generated.
-	 * 
-	 * @param handler
-	 *            The ContentHandler which is writing the XML result
-	 * @param hints
-	 *            A Global container for information specific to a single XML document
-	 * @param currentChildTranslator
-	 *            The last Translator to have completed processing
-	 * @param nextTranslator
-	 *            The next peer Translator that will become active
-	 * @param target
-	 *            The EMF Target of the Translation
-	 * @throws SAXException
-	 */
-	private void closeDomPathIfNecessary(ContentHandler handler, WriterHints hints, Translator currentChildTranslator, Translator nextTranslator, EObject target, List mofChildren) throws SAXException {
-
-		if (currentChildTranslator.hasDOMPath() && shouldRenderDomPath(target, currentChildTranslator, mofChildren)) {
-			String childDomPath = currentChildTranslator.getDOMPath();
-			if (nextTranslator != null) { /*
-										   * There are more peers after this element, we can peek
-										   * ahead
-										   */
-				String nextPeerDomPath = nextTranslator.getDOMPath();
-				if (nextPeerDomPath == null || !nextPeerDomPath.equals(childDomPath)) {
-					handler.endElement(NAMESPACE, childDomPath, childDomPath);
-					hints.popDomPath();
-				}
-
-			} else { /* This was the last child element, we must close the dompath */
-				handler.endElement(NAMESPACE, childDomPath, childDomPath);
-				hints.popDomPath();
-			}
-		}
-	}
-
-	/**
-	 * Aggregate the Attribute translator children from a given translator. This method will request
-	 * the AttributesImpl object from the WriterHints object. The WriterHints maintains this
-	 * reusable collection to limit the requirement for new object creation.
-	 * 
-	 * @param translator
-	 * @param target
-	 * @param hints
-	 * @return an initialized set of Attributes for the given Translator and EMF Target
-	 */
-	private Attributes getAttributes(Translator translator, EObject target, WriterHints hints) {
-
-		AttributesImpl attributes = hints.getAttributeHolder();
-		int version = hints.getVersion();
-		Object rawValue = null;
-		String convertedValue = null;
-		String childDomName = null;
-		Translator attributeTranslator = null;
-		int[] processingHints = TranslatorFilter.createProcessingHints();
-
-		while ((attributeTranslator = TranslatorFilter.getNextAttributeTranslator(translator, processingHints[TranslatorFilter.NEXT_START_HINT_INDX], processingHints, target, version)) != null) {
-
-			List mofChildren = attributeTranslator.getMOFChildren(target);
-			if (mofChildren.size() > 0) {
-				for (int j = 0; j < mofChildren.size(); j++) {
-
-					childDomName = attributeTranslator.getDOMName(target);
-					rawValue = mofChildren.get(j);
-					convertedValue = attributeTranslator.convertValueToString(rawValue, target);
-					convertedValue = XMLEncoderDecoder.escape(convertedValue);
-					attributes.addAttribute(NAMESPACE, childDomName, childDomName, "String", convertedValue); //$NON-NLS-1$
-				}
-
-			} else {
-				childDomName = attributeTranslator.getDOMName(target);
-				convertedValue = (String) attributeTranslator.getMOFValue(target);
-				if (convertedValue != null)
-					attributes.addAttribute(NAMESPACE, childDomName, childDomName, "String", convertedValue); //$NON-NLS-1$
-			}
-		}
-		return attributes;
-	}
-
-	/**
-	 * WriterHints is used to "remember" certain pieces of information while the writer is
-	 * processing. Of particular interest are the version and the state of the DOM Path output.
-	 * Consecutive elements with consistent (identical) DOM Paths are collapsed under a single XML
-	 * element.
-	 * 
-	 * The WriterHints provides global state between recursive invocations of serialize(). It should
-	 * be not be used to store local data (e.g. data that is only relevant to a single Translator in
-	 * a given context).
-	 * 
-	 * The WriterHints also stores an AttributesImpl object that is re-used to store attributes. The
-	 * getAttributes() method will request the Attributes Holder.
-	 * 
-	 * @author mdelder
-	 */
-	public final class WriterHints {
-		private final TranslatorResource resource;
-		private final Stack domStack = new Stack();
-		private final AttributesImpl attributesImpl = new AttributesImpl();
-
-		public WriterHints(TranslatorResource res) {
-			this.resource = res;
-		}
-
-		/**
-		 * Push a new domPath onto the stack
-		 * 
-		 * @param domPath
-		 *            a DOMPath which has been written to the XML stream
-		 */
-		public void pushDomPath(String domPath) {
-
-			if (domPath != null && domPath.length() > 0)
-				domStack.push(domPath);
-		}
-
-		/**
-		 * Pop the current domPath from the Array
-		 */
-		public void popDomPath() {
-
-			if (!domStack.isEmpty())
-				domStack.pop();
-		}
-
-		/**
-		 * Determines if the given DOMPath has already been written to the XML stream
-		 * 
-		 * @param domPath
-		 * @return true if the given DOMPath has already been written to the XML stream
-		 */
-		public boolean isDomPathActive(String domPath) {
-			boolean result = false;
-			if (!domStack.isEmpty()) {
-
-				String currentDomPath = (String) domStack.peek();
-				if (currentDomPath != null && domPath != null)
-					result = currentDomPath.equals(domPath);
-				else if (!(currentDomPath == null ^ domPath == null))
-					result = true;
-			}
-
-			return result;
-		}
-
-		/**
-		 * @return the version of the EMF Resource
-		 */
-		public int getVersion() {
-			return this.resource.getVersionID();
-		}
-
-		/**
-		 * Returns an empty AttributesImpl object to store attributes. Within the context of a given
-		 * WriterHints object (and hence single XML document), the object returned is a singleton.
-		 * The same AttributesImpl object is cleared and reused for each invocation.
-		 * 
-		 * @return an empty AttributesImpl object to store attributes
-		 */
-		public AttributesImpl getAttributeHolder() {
-			this.attributesImpl.clear();
-			return this.attributesImpl;
-		}
-
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/FileNameResourceFactoryRegistry.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/FileNameResourceFactoryRegistry.java
deleted file mode 100644
index 41b3dab..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/FileNameResourceFactoryRegistry.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.Resource.Factory;
-import org.eclipse.wst.common.internal.emf.utilities.DefaultOverridableResourceFactoryRegistry;
-
-
-public abstract class FileNameResourceFactoryRegistry extends DefaultOverridableResourceFactoryRegistry {
-
-	private Map/*<String shortName, ResourceFactoryDescriptor>*/ descriptors = new HashMap(); 
-	private Map/*<ResourceFactoryDescriptor, Resource.Factory>*/ factories = new HashMap();
-	
-	public FileNameResourceFactoryRegistry() {
-		super();
-	}
-
-	/**
-	 * Return a Resource.Factory that is registered with the last segment of the URI's file name.
-	 * 
-	 * @see org.eclipse.emf.ecore.resource.impl.ResourceFactoryRegistryImpl#getFactory(URI)
-	 */
-	protected Object getFileNameFactory(URI uri) {
-
-		if(uri != null) {
-			ResourceFactoryDescriptor descriptor = getDescriptor(uri);
-			
-			if(descriptor != null) {
-				return getFactory(descriptor);	
-			}	
-		}
-		return null;
-		
-	}
-
-	public synchronized Resource.Factory getFactory(URI uri) {
-		return getFactory(uri, null);
-	}
-
-	public Resource.Factory getFactory(URI uri, String contentType)
-	{
-		Resource.Factory resourceFactory = null;
-		if(uri != null && uri.lastSegment() != null) {
-			ResourceFactoryDescriptor descriptor = getDescriptor(uri);
-			
-			if(descriptor != null) {
-				resourceFactory = getFactory(descriptor);	
-			}	
-		}
-		if(resourceFactory == null)
-			resourceFactory = super.getFactory(uri, contentType);
-		return resourceFactory; 
-	}
-
-	/**
-	 * Register a file name representing the last segment of a URI with the corresponding
-	 * Resource.Factory.
-	 */
-	public synchronized void registerLastFileSegment(String aSimpleFileName, Resource.Factory aFactory) {
-		URI uri = URI.createURI(aSimpleFileName);
-		String lastSegment = uri.lastSegment(); 
-		addDescriptor(new StaticResourceFactoryDescriptor(lastSegment, aFactory));		
-	} 
-
-	protected synchronized ResourceFactoryDescriptor getDescriptor(URI uri) {
-		return (ResourceFactoryDescriptor) descriptors.get(uri.lastSegment());
-	}
-	protected synchronized Map getDescriptors() {
-		return descriptors;
-	}
-
-	protected final synchronized Resource.Factory getFactory(ResourceFactoryDescriptor descriptor) {  
-		Resource.Factory factory = (Factory) factories.get(descriptor);
-		if(factory == null) {
-			factories.put(descriptor, (factory = descriptor.createFactory()));
-		}
-		return factory;
-	}
-
-	protected void addDescriptor(ResourceFactoryDescriptor descriptor) { 
-		descriptors.put(descriptor.getShortSegment(), descriptor);
-	}
- 
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/GenericTranslator.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/GenericTranslator.java
deleted file mode 100644
index eafe09f..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/GenericTranslator.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 20, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-/**
- * Specialized translator for objects that contain simple mappings with no specialized behavior.
- */
-public class GenericTranslator extends Translator {
-
-	protected Translator[] children;
-
-	/**
-	 * @param domNameAndPath
-	 * @param eClass
-	 */
-	public GenericTranslator(String domNameAndPath, EClass eClass) {
-		super(domNameAndPath, eClass);
-	}
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 */
-	public GenericTranslator(String domNameAndPath, EStructuralFeature aFeature) {
-		super(domNameAndPath, aFeature);
-	}
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 * @param path
-	 */
-	public GenericTranslator(String domNameAndPath, EStructuralFeature aFeature, TranslatorPath path) {
-		super(domNameAndPath, aFeature, path);
-	}
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 * @param paths
-	 */
-	public GenericTranslator(String domNameAndPath, EStructuralFeature aFeature, TranslatorPath[] paths) {
-		super(domNameAndPath, aFeature, paths);
-	}
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 * @param eClass
-	 */
-	public GenericTranslator(String domNameAndPath, EStructuralFeature aFeature, EClass eClass) {
-		super(domNameAndPath, aFeature, eClass);
-	}
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 * @param style
-	 */
-	public GenericTranslator(String domNameAndPath, EStructuralFeature aFeature, int style) {
-		super(domNameAndPath, aFeature, style);
-	}
-
-	/**
-	 * @return Translator[]
-	 */
-	public Translator[] getChildren() {
-		return children;
-	}
-
-	/**
-	 * Sets the children.
-	 * 
-	 * @param children
-	 *            The children to set
-	 */
-	public void setChildren(Translator[] children) {
-		this.children = children;
-	}
-
-
-	public static Translator appendChildren(GenericTranslator tran, Translator[] child) {
-		Translator[] orgChild = tran.getChildren();
-		Translator[] newChildren = (Translator[]) concat(orgChild, child);
-		tran.setChildren(newChildren);
-		return tran;
-	}
-
-	public static Translator appendChild(GenericTranslator tran, Translator child) {
-		Object[] orgChild = tran.getChildren();
-		Translator[] newChildren = (Translator[]) concat(orgChild, child);
-		tran.setChildren(newChildren);
-		return tran;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/IDTranslator.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/IDTranslator.java
deleted file mode 100644
index 64bf6a0..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/IDTranslator.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 19, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.xmi.XMIResource;
-
-/**
- * @author schacher
- */
-public class IDTranslator extends Translator {
-	public class NoResourceException extends RuntimeException {
-
-		public NoResourceException() {
-			super();
-		}
-
-		public NoResourceException(String s) {
-			super(s);
-		}
-	}
-
-	static final public EStructuralFeature ID_FEATURE = EcorePackage.eINSTANCE.getEClass_EIDAttribute();
-	static final public IDTranslator INSTANCE = new IDTranslator();
-
-	public IDTranslator() {
-		super("id", ID_FEATURE, DOM_ATTRIBUTE); //$NON-NLS-1$
-	}
-
-	public void setMOFValue(EObject emfObject, Object value) {
-		XMIResource res = (XMIResource) emfObject.eResource();
-		if (res == null)
-			throw new NoResourceException();
-		String id = res.getID(emfObject);
-		if (id == null && value == null)
-			return;
-		if ((id != null && !id.equals(value)) || (value != null && !value.equals(id)))
-			res.setID(emfObject, (String) value);
-	}
-
-	public Object getMOFValue(EObject emfObject) {
-		if (emfObject == null)
-			throw new NoResourceException();
-		XMIResource res = (XMIResource) emfObject.eResource();
-		if (res == null)
-			throw new NoResourceException();
-		return res.getID(emfObject);
-	}
-
-
-	public boolean featureExists(EObject emfObject) {
-		return true;
-	}
-
-	public boolean isIDMap() {
-		return true;
-	}
-
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/IRootObjectResource.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/IRootObjectResource.java
deleted file mode 100644
index 7048136..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/IRootObjectResource.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.EObject;
-
-public interface IRootObjectResource {
-
-	public EObject getRootObject();
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/LinkUpdaterTarget.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/LinkUpdaterTarget.java
deleted file mode 100644
index f5cd1f9..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/LinkUpdaterTarget.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.w3c.dom.Node;
-
-
-public class LinkUpdaterTarget extends Object {
-
-	public static final LinkUpdaterTarget INSTANCE = new LinkUpdaterTarget();
-
-	/**
-	 * Constructor for LinkUpdaterMultiTarget.
-	 * 
-	 * @param adapter
-	 */
-	private LinkUpdaterTarget() {
-		super();
-	}
-
-
-	public void updateDOM(Translator map, Node node, EObject mofObject) {
-		refreshSourceObjects(map, node, mofObject, true);
-	}
-
-	public void updateMOF(Translator map, Node node, EObject mofObject) {
-		refreshSourceObjects(map, node, mofObject, false);
-	}
-
-	protected void refreshSourceObjects(Translator map, Node node, EObject mofObject, boolean domUpdate) {
-		TranslatorPath[] paths = map.getTranslatorPaths();
-		for (int i = 0; i < paths.length; i++) {
-			TranslatorPath path = paths[i];
-			List allSourceObjects = path.findObjects(mofObject);
-			for (Iterator iter = allSourceObjects.iterator(); iter.hasNext();) {
-				EObject curObject = (EObject) iter.next();
-				EMF2DOMAdapter curAdapter = (EMF2DOMAdapter) EcoreUtil.getAdapter(curObject.eAdapters(), EMF2DOMAdapter.class);
-				if (curAdapter != null) {
-					if (domUpdate)
-						curAdapter.updateDOM();
-					else
-						curAdapter.updateMOF();
-				}
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/MappedXMIHelper.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/MappedXMIHelper.java
deleted file mode 100644
index f0939a2..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/MappedXMIHelper.java
+++ /dev/null
@@ -1,297 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EClass;
-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.ResourceSet;
-import org.eclipse.emf.ecore.resource.URIConverter;
-import org.eclipse.emf.ecore.resource.impl.URIConverterImpl;
-import org.eclipse.emf.ecore.xmi.XMLHelper;
-import org.eclipse.emf.ecore.xmi.XMLResource;
-import org.eclipse.emf.ecore.xmi.impl.XMLHelperImpl;
-import org.eclipse.wst.common.internal.emf.utilities.IDUtil;
-
-public class MappedXMIHelper extends XMLHelperImpl {
-
-	private static final String WORKSPACE_PROTOCOL = "workspace:/"; //$NON-NLS-1$
-	private static final String PLATFORM_RESOURCE_PROTOCOL = "platform:/resource/"; //$NON-NLS-1$
-	private static final EStructuralFeature NULL_FEATURE = new UnsupportedFeature();
-	protected boolean usingMaps = true;
-	protected Map cachedRelativeURIs;
-	protected Map packageURIsToPrefixes;
-
-	/**
-	 * Constructor for MappedXMLHelper.
-	 * 
-	 * @param resource
-	 */
-	public MappedXMIHelper(XMLResource resource, Map prefixesToURIs) {
-		super(resource);
-		this.prefixesToURIs.putAll(prefixesToURIs);
-		pushContext(); //Needed to initialize the context to zero
-		Set keys = prefixesToURIs.keySet();
-		for (Iterator iter = keys.iterator(); iter.hasNext();) {
-			String prefix = (String) iter.next();
-			String uri = (String) prefixesToURIs.get(prefix);
-			namespaceSupport.declarePrefix(prefix, uri);
-		}
-
-	}
-
-	public URI resolve(URI relative, URI base) {
-		URI resolved = null;
-		boolean isMapped = false;
-		ResourceSet set = getResource().getResourceSet();
-		if (set != null) {
-			URI localresourceURI = null;
-			if (relative.hasFragment())
-				localresourceURI = relative.trimFragment();
-			else
-				localresourceURI = relative;
-			isMapped = !(((URIConverterImpl.URIMap) set.getURIConverter().getURIMap()).getURI(localresourceURI).equals(localresourceURI));
-		}
-		if (!isMapped) {
-			if (isUsingContainerRelativePaths() && set != null)
-				resolved = set.getURIConverter().normalize(relative);
-		} else {
-			resolved = relative;
-		}
-		return resolved == null ? super.resolve(relative, base) : resolved;
-	}
-
-	/**
-	 * Method isUsingContainerRelativePaths.
-	 * 
-	 * @return boolean
-	 */
-	private boolean isUsingContainerRelativePaths() {
-		return ((CompatibilityXMIResource) resource).getFormat() == CompatibilityXMIResource.FORMAT_MOF5 || usingMaps;
-	}
-
-	public void addPrefix(String prefix, String uri) {
-		/*
-		 * problem - the incoming key value pair is ejbbnd->ejbbnd.xmi; however, the map already has
-		 * a key value pair of ejbbnd->http:///ejbbnd.ecore
-		 */
-		if (uri.endsWith(".ecore")) { //$NON-NLS-1$
-			usingMaps = false;
-		}
-		String existing = (String) prefixesToURIs.get(prefix);
-		if (existing == null) {
-			prefixesToURIs.put(prefix, uri);
-			namespaceSupport.declarePrefix(prefix, uri);
-		} else if (!existing.equals(uri)) {
-			getCompatibilityResource().addOriginalPackageURI(existing, uri);
-			getCompatibilityResource().setFormat(CompatibilityXMIResource.FORMAT_MOF5);
-		}
-	}
-
-	protected CompatibilityXMIResource getCompatibilityResource() {
-		return (CompatibilityXMIResource) getResource();
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLHelperImpl#getHREF(EObject)
-	 */
-	public String getHREF(EObject obj) {
-		if (!getCompatibilityResource().usesDefaultFormat()) {
-			URIConverter conv = getURIConverter();
-			if (conv != null && conv instanceof CompatibilityURIConverter) {
-				String href = getCompatibliltyHREF(obj, (CompatibilityURIConverter) conv);
-				return useWorkspaceProtocolIfNecessary(href);
-			}
-		}
-		return super.getHREF(obj);
-	}
-
-
-	/**
-	 * @param href
-	 * @return
-	 */
-	protected String useWorkspaceProtocolIfNecessary(String href) {
-		if (href != null && href.startsWith(PLATFORM_RESOURCE_PROTOCOL))
-			return WORKSPACE_PROTOCOL + href.substring(19);
-		return href;
-	}
-
-	private String getCompatibliltyHREF(EObject obj, CompatibilityURIConverter conv) {
-		//Implementation copied from super.getHREF(EObject)
-		InternalEObject o = (InternalEObject) obj;
-
-		URI objectURI = o.eProxyURI();
-		if (objectURI == null) {
-			Resource otherResource = obj.eResource();
-			if (otherResource == null) {
-				objectURI = handleDanglingHREF(obj);
-				if (objectURI == null) {
-					return null;
-				}
-			} else
-				objectURI = otherResource.getURI().appendFragment(otherResource.getURIFragment(obj));
-		}
-
-		//Modified to dispatch back to URI Converter
-		if (!objectURI.isRelative()) {
-			objectURI = makeRelative(objectURI, conv);
-		}
-		return objectURI.toString();
-	}
-
-	protected URI makeRelative(URI objectURI, CompatibilityURIConverter conv) {
-		String fragment = objectURI.fragment();
-		objectURI = objectURI.trimFragment();
-		URI relative = (URI) getCachedRelativeURIs().get(objectURI);
-		if (relative == null) {
-			relative = conv.deNormalize(objectURI);
-			if (relative.isRelative())
-				cachedRelativeURIs.put(objectURI, relative);
-		}
-		return relative.appendFragment(fragment);
-	}
-
-	protected URIConverter getURIConverter() {
-		ResourceSet set = getResource().getResourceSet();
-		if (set != null)
-			return set.getURIConverter();
-		return null;
-	}
-
-	protected Map getCachedRelativeURIs() {
-		if (cachedRelativeURIs == null)
-			cachedRelativeURIs = new HashMap();
-		return cachedRelativeURIs;
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLHelperImpl#getID(EObject)
-	 */
-	public String getID(EObject obj) {
-		if (getCompatibilityResource().usesDefaultFormat())
-			return super.getID(obj);
-		return IDUtil.getOrAssignID(obj, resource);
-	}
-
-	public String[] getNSInfo(EPackage pkg) {
-		String prefix = getMappedPrefix(pkg);
-		if (prefix == null)
-			return new String[]{pkg.getNsPrefix(), pkg.getNsURI()};
-		return new String[]{prefix, prefix + ".xmi"}; //$NON-NLS-1$
-	}
-
-	protected String getMappedPrefix(EPackage pkg) {
-		String nsURI = pkg.getNsURI();
-		if (usingMaps || !getCompatibilityResource().usesDefaultFormat())
-			return (String) packageURIsToPrefixes.get(nsURI);
-		return null;
-	}
-
-	protected String getMappedPrefixOrDefault(EPackage pkg) {
-		String prefix = getMappedPrefix(pkg);
-		return prefix == null ? pkg.getNsPrefix() : prefix;
-	}
-
-
-	/**
-	 * Returns the packageURIsToPrefixes.
-	 * 
-	 * @return Map
-	 */
-	public Map getPackageURIsToPrefixes() {
-		return packageURIsToPrefixes;
-	}
-
-	/**
-	 * Sets the packageURIsToPrefixes.
-	 * 
-	 * @param packageURIsToPrefixes
-	 *            The packageURIsToPrefixes to set
-	 */
-	public void setPackageURIsToPrefixes(Map packageURIsToPrefixes) {
-		this.packageURIsToPrefixes = packageURIsToPrefixes;
-	}
-
-	public String getQName(EClass c) {
-		String name = getName(c);
-
-		if (xmlMap != null) {
-			XMLResource.XMLInfo clsInfo = xmlMap.getInfo(c);
-
-			if (clsInfo != null) {
-				String targetNamespace = clsInfo.getTargetNamespace();
-				return getQName(targetNamespace, name);
-			}
-		}
-
-		EPackage p = c.getEPackage();
-		packages.put(p, null);
-
-		if (p.getNsPrefix().equals("")) //$NON-NLS-1$ 
-			return name;
-
-		//Modified from superclass
-		//return p.getNsPrefix() + ":" + name;
-		return getMappedPrefixOrDefault(p) + ":" + name; //$NON-NLS-1$ 
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLHelperImpl#setValue(EObject, EStructuralFeature,
-	 *      Object, int)
-	 */
-	public void setValue(EObject object, EStructuralFeature feature, Object value, int position) {
-		if (feature == NULL_FEATURE)
-			return;
-		if (!feature.isTransient()) {
-			if (value == null && feature.getEType().getInstanceClass() != null && feature.getEType().getInstanceClass().isPrimitive())
-				//For compatibility with MOF5 where types like Integer might have been set
-				//and serialized as "xsi:nil"
-				return;
-
-			super.setValue(object, feature, value, position);
-		}
-	}
-
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.xmi.XMLHelper#getFeature(org.eclipse.emf.ecore.EClass,
-	 *      java.lang.String, java.lang.String, boolean)
-	 */
-	public EStructuralFeature getFeature(EClass eClass, String namespaceURI, String name, boolean isElement) {
-		if (UnsupportedFeature.isUnsupported(eClass, name))
-			return NULL_FEATURE;
-		return super.getFeature(eClass, namespaceURI, name, isElement);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.xmi.XMLHelper#getFeatureKind(org.eclipse.emf.ecore.EStructuralFeature)
-	 */
-	public int getFeatureKind(EStructuralFeature feature) {
-		if (feature == NULL_FEATURE)
-			return XMLHelper.DATATYPE_SINGLE;
-		return super.getFeatureKind(feature);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/MultiObjectTranslator.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/MultiObjectTranslator.java
deleted file mode 100644
index 91ed5bc..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/MultiObjectTranslator.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 31, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.w3c.dom.Node;
-
-/**
- * @author schacher
- */
-public abstract class MultiObjectTranslator extends Translator {
-	private static final Translator[] EMPTY_TRANSLATORS = new Translator[]{};
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 * @param style
-	 */
-	public MultiObjectTranslator(String domNameAndPath, EStructuralFeature aFeature) {
-		super(domNameAndPath, aFeature);
-	}
-
-	public abstract Translator getDelegateFor(EObject o);
-
-	public abstract Translator getDelegateFor(String domName, String readAheadName);
-
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#createEMFObject(java.lang.String,
-	 *      java.lang.String)
-	 */
-	public EObject createEMFObject(String nodeName, String readAheadName) {
-		return getDelegateFor(nodeName, readAheadName).createEMFObject(nodeName, readAheadName);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#getChildren(java.lang.Object)
-	 */
-	public Translator[] getChildren(Object o, int version) {
-		if (o == null)
-			return EMPTY_TRANSLATORS;
-		return getDelegateFor((EObject) o).getChildren(o, version);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#getDOMName(java.lang.Object)
-	 */
-	public String getDOMName(Object value) {
-		return getDelegateFor((EObject) value).getDOMName(value);
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#isManagedByParent()
-	 */
-	public boolean isManagedByParent() {
-		return false;
-	}
-
-	public boolean shouldIndentEndTag(Node node) {
-		if (node.getNodeName().equals(getDOMPath())) {
-			return super.shouldIndentEndTag(node);
-		}
-		Translator delegate = getDelegateFor(node.getNodeName(), null);
-		if (delegate != null) {
-			return delegate.shouldIndentEndTag(node);
-		}
-		return super.shouldIndentEndTag(node);
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/NamespaceTranslator.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/NamespaceTranslator.java
deleted file mode 100644
index 3c23ed4..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/NamespaceTranslator.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Aug 14, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.wst.common.internal.emf.utilities.Namespace;
-import org.eclipse.wst.common.internal.emf.utilities.NamespaceAdapter;
-
-
-/**
- * @author schacher
- */
-public class NamespaceTranslator extends Translator {
-
-	protected String prefix;
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 */
-	public NamespaceTranslator(String domName) {
-		super(domName, NamespaceAdapter.NOTIFICATION_FEATURE, DOM_ATTRIBUTE);
-		initPrefix();
-	}
-
-	private void initPrefix() {
-		String dName = getDOMName(null);
-		prefix = dName.substring(DefaultTranslatorFactory.XMLNS.length());
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#setMOFValue(org.eclipse.emf.ecore.EObject,
-	 *      java.lang.Object)
-	 */
-	public void setMOFValue(EObject emfObject, Object value) {
-		NamespaceAdapter.addNamespace(prefix, (String) value, emfObject);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#isSetMOFValue(org.eclipse.emf.ecore.EObject)
-	 */
-	public boolean isSetMOFValue(EObject emfObject) {
-		return getMOFValue(emfObject) != null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#getMOFValue(org.eclipse.emf.ecore.EObject)
-	 */
-	public Object getMOFValue(EObject mofObject) {
-		return NamespaceAdapter.getNamespaceURIAtThisLevel(prefix, mofObject);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#unSetMOFValue(org.eclipse.emf.ecore.EObject)
-	 */
-	public void unSetMOFValue(EObject emfObject) {
-		NamespaceAdapter.removeNamespace(prefix, emfObject);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#featureExists(org.eclipse.emf.ecore.EObject)
-	 */
-	public boolean featureExists(EObject emfObject) {
-		return true;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#isDataType()
-	 */
-	public boolean isDataType() {
-		return true;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#isMapFor(java.lang.Object, java.lang.Object,
-	 *      java.lang.Object)
-	 */
-	public boolean isMapFor(Object aFeature, Object oldValue, Object newValue) {
-		if (aFeature == feature) {
-			Namespace namespace = (Namespace) (oldValue == null ? newValue : oldValue);
-			if (namespace != null)
-				return prefix.equals(namespace.getPrefix());
-		}
-		return false;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ObjectTranslatorFilter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ObjectTranslatorFilter.java
deleted file mode 100644
index 918b9ce..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ObjectTranslatorFilter.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-/*
- * Created on Sep 21, 2003
- *  
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-public final class ObjectTranslatorFilter extends TranslatorFilter {
-
-	public ObjectTranslatorFilter() {
-		super(null, -1);
-	}
-
-	public ObjectTranslatorFilter(Translator trans, int version) {
-		super(trans, version);
-	}
-
-	public final int scanNextTranslator(Translator[] children, int start) {
-		int found = start + 1;
-		for (; found < children.length; ++found) {
-			if (!children[found].isDOMAttribute())
-				break;
-		}
-		found = (found < children.length) ? found : -1;
-		return found;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReadAheadHelper.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReadAheadHelper.java
deleted file mode 100644
index a7d1a23..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReadAheadHelper.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 2, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-/**
- * @author schacher
- */
-public class ReadAheadHelper {
-
-	protected String parentDOMName;
-	protected String[] values;
-	protected String childDOMName;
-
-	public ReadAheadHelper(String parentDOMName, String[] values, String childDOMName) {
-		super();
-		this.parentDOMName = parentDOMName;
-		this.values = values;
-		this.childDOMName = childDOMName;
-	}
-
-	/**
-	 * @return
-	 */
-	public String getChildDOMName() {
-		return childDOMName;
-	}
-
-	/**
-	 * @return
-	 */
-	public String getParentDOMName() {
-		return parentDOMName;
-	}
-
-	/**
-	 * @return
-	 */
-	public String[] getValues() {
-		return values;
-	}
-
-	/**
-	 * @param string
-	 */
-	public void setChildDOMName(String string) {
-		childDOMName = string;
-	}
-
-	/**
-	 * @param string
-	 */
-	public void setParentDOMName(String string) {
-		parentDOMName = string;
-	}
-
-	/**
-	 * @param strings
-	 */
-	public void setValues(String[] strings) {
-		values = strings;
-	}
-
-
-	public boolean nodeValueIsReadAheadName(String nodeName) {
-
-		return (childDOMName != null) ? childDOMName.equals(nodeName) : false;
-	}
-
-	public boolean nodeNameIsReadAheadName(String nodeName) {
-		boolean result = false;
-		for (int i = 0; i < values.length; i++) {
-			if (nodeName.equals(values[i])) {
-				result = true;
-				break;
-			}
-		}
-		return result;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReferencedResource.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReferencedResource.java
deleted file mode 100644
index 45faf2b..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReferencedResource.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-
-import org.eclipse.emf.ecore.resource.Resource;
-
-public interface ReferencedResource extends Resource, CompatibilityXMIResource {
-	//TODO - rename packaged
-
-	public static final String DELETED_ERROR_MSG = "This resource has been deleted and can no longer be used."; //$NON-NLS-1$
-
-	public static final int RESOURCE_WAS_SAVED = 601;
-	
-	/**
-	 * A flag used to indicate a ReferencedResource is about
-	 * to save.
-	 */
-	public static final int RESOURCE_ABOUT_TO_SAVE = 602;
-	
-	/**
-	 * A flag used to indicate a ReferencedResource has failed
-	 * to save.
-	 */
-	public static final int RESOURCE_SAVE_FAILED = 603;
-
-	/**
-	 * Access this resource for read only. This call increments the use read count of this resource.
-	 * Clients should call this method before they use the resource. They should call
-	 * releaseFromRead() after they are done modifying this resource.
-	 */
-	void accessForRead();
-
-	/**
-	 * Access this resource for write only. This call increments the use write count of this
-	 * resource. Clients should call this method before they modify the resource. They should call
-	 * releaseFromWrite() after they are done modifying this resource.
-	 */
-	void accessForWrite();
-
-	/**
-	 * Return true if this resource has just been loaded and not yet accessed for read or write.
-	 */
-	boolean isNew();
-
-	/**
-	 * Return true if this resource does not have any write references.
-	 */
-	boolean isReadOnly();
-
-	/**
-	 * Return true if this resource is shared for read or write by more than one accessor.
-	 */
-	boolean isShared();
-
-	/**
-	 * Return true if this resource is shared for write by more than one accessor.
-	 */
-	boolean isSharedForWrite();
-
-	/**
-	 * Release read the access to this resource. This call decrements the use count of this resource
-	 * and will remove the resource from its resource set if the use count goes to 0. Clients should
-	 * call this method when they are done accessing the resource and only after they have called
-	 * accessForRead() to obtain access.
-	 */
-	void releaseFromRead();
-
-	/**
-	 * Release write the access to this resource. This call decrements the write count of this
-	 * resource and will remove the resource from its resource set if the use count goes to 0.
-	 * Clients should call this method when they are done accessing the resource and only after they
-	 * have called accessForWrite() to obtain access.
-	 */
-	void releaseFromWrite();
-
-	/**
-	 * Saves this resource only if the write count is equal to 1.
-	 */
-	void saveIfNecessary() throws Exception;
-
-	/**
-	 * Return true if this resource is dirty and is not shared for write.
-	 */
-	boolean needsToSave();
-
-
-
-	/**
-	 * Set whether we should allow a refresh to take place even when this resource is dirty.
-	 * 
-	 * @param b
-	 */
-	void setForceRefresh(boolean b);
-
-	/**
-	 * Return whether we should allow a refresh to take place even when this resource is dirty.
-	 */
-	boolean shouldForceRefresh();
-
-	boolean wasReverted();
-
-	/**
-	 * Returns the number of open read accesses on this resource
-	 * 
-	 * @return
-	 */
-	int getReadCount();
-
-	/**
-	 * Returns the number of open write accesses on this resource
-	 * 
-	 * @return
-	 */
-	int getWriteCount();
-
-	/**
-	 * If the resource is no longer being accessed, then remove it from the resource set.
-	 */
-	void unloadIfNecessary();
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReferencedXMIFactoryImpl.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReferencedXMIFactoryImpl.java
deleted file mode 100644
index d891c2c..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReferencedXMIFactoryImpl.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
-
-public class ReferencedXMIFactoryImpl extends ResourceFactoryImpl {
-
-	protected static List globalAdapterFactories;
-	protected List localAdapterFactories;
-
-	/**
-	 * ReferencedXMIFactoryImpl constructor comment.
-	 */
-	public ReferencedXMIFactoryImpl() {
-		super();
-	}
-
-	/**
-	 * This is the method that subclasses can override to actually instantiate a new Resource
-	 * 
-	 * @param uri
-	 * @return
-	 */
-	protected Resource doCreateResource(URI uri) {
-		return new ReferencedXMIResourceImpl(uri);
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl#createResource(URI)
-	 */
-	public final Resource createResource(URI uri) {
-		Resource res = doCreateResource(uri);
-		adaptNew(res);
-		return res;
-	}
-
-	protected void adaptNew(Resource res) {
-		if (globalAdapterFactories != null) {
-			for (int i = 0; i < globalAdapterFactories.size(); i++) {
-				AdapterFactory factory = (AdapterFactory) globalAdapterFactories.get(i);
-				factory.adaptAllNew(res);
-			}
-		}
-		if (localAdapterFactories != null) {
-			for (int i = 0; i < localAdapterFactories.size(); i++) {
-				AdapterFactory factory = (AdapterFactory) localAdapterFactories.get(i);
-				factory.adaptAllNew(res);
-			}
-		}
-	}
-
-	/**
-	 * The local adapter factory is an adapter factory that you use to only adapt the resource
-	 * specific to the ResourceFactory instance.
-	 * 
-	 * @param factory
-	 */
-	public void addLocalAdapterFactory(AdapterFactory factory) {
-		if (localAdapterFactories == null)
-			localAdapterFactories = new ArrayList(3);
-		localAdapterFactories.add(factory);
-	}
-
-	public void removeLocalAdapterFactory(AdapterFactory factory) {
-		if (localAdapterFactories != null)
-			localAdapterFactories.remove(factory);
-	}
-
-	/**
-	 * A global adapter factory will be used to adapt any resource created by any ResourceFactory
-	 * instance.
-	 * 
-	 * @param factory
-	 */
-	public static void addGlobalAdapterFactory(AdapterFactory factory) {
-		if (globalAdapterFactories == null)
-			globalAdapterFactories = new ArrayList(3);
-		globalAdapterFactories.add(factory);
-	}
-
-	public static void removeGlobalAdapterFactory(AdapterFactory factory) {
-		if (globalAdapterFactories != null)
-			globalAdapterFactories.remove(factory);
-	}
-}
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReferencedXMIResourceImpl.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReferencedXMIResourceImpl.java
deleted file mode 100644
index 64b9a5c..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ReferencedXMIResourceImpl.java
+++ /dev/null
@@ -1,416 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.common.notify.impl.NotificationImpl;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.internal.emf.utilities.IDUtil;
-
-public class ReferencedXMIResourceImpl extends CompatibilityXMIResourceImpl implements ReferencedResource {
-	//TODO Add toString hook
-	private static final String TO_STRING = "ReferencedXMIResource, file = "; //$NON-NLS-1$
-	private static final String READ_COUNT_TO_STRING = " R= "; //$NON-NLS-1$
-	private static final String WRITE_COUNT_TO_STRING = " W= "; //$NON-NLS-1$
-
-	private int readReferenceCount = 1;
-	private int editReferenceCount = 0;
-	protected boolean isNew = true;
-	protected boolean forceRefresh;
-	
-	  public static class ESynchronizedAdapterList extends EAdapterList
-	  {
-
-	    public ESynchronizedAdapterList(Notifier notifier) {
-			super(notifier);
-		}
-
-		public synchronized boolean add(Object object)
-	    {
-	    return super.add(object);
-	    }
-
-	    public synchronized void add(int index, Object object)
-	    {
-	    super.add(index, object);
-	    }
-
-	    public synchronized boolean addAll(Collection collection)
-	    {
-	    return super.addAll(collection);
-	    }
-
-	    public synchronized boolean remove(Object object)
-	    {
-	    return super.remove(object);
-	    }
-
-	    public synchronized Object remove(int index)
-	    {
-	    return super.remove(index);
-	    }
-
-	    public synchronized boolean removeAll(Collection collection)
-	    {
-	    return super.removeAll(collection);
-	    }
-
-	    public synchronized void clear()
-	    {
-	     super.clear();
-	    }
-
-
-	    public synchronized Object set(int index, Object object)
-	    {
-	    return super.set(index, object);
-	    }
-
-	    public synchronized void move(int newPosition, Object object)
-	    {
-	    super.move(newPosition, object);
-	    }
-
-	    public synchronized Object move(int newPosition, int oldPosition)
-	    {
-	    return super.move(newPosition, oldPosition);
-	    }
-	  }
-
-	 
-	/**
-	 * ReferencableXMIResourceImpl constructor comment.
-	 */
-	public ReferencedXMIResourceImpl() {
-		super();
-	}
-
-	public ReferencedXMIResourceImpl(URI uri) {
-		super(uri);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.ReferencedResource#getReadCount()
-	 */
-	public int getReadCount() {
-		return readReferenceCount;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.ReferencedResource#getWriteCount()
-	 */
-	public int getWriteCount() {
-		return editReferenceCount;
-	}
-
-
-
-	/*
-	 * @see ReferencedResource#accessForRead
-	 */
-	public void accessForRead() {
-		checkDeleted();
-		if (!isNew())
-			readReferenceCount++;
-		isNew = false;
-	}
-
-	/*
-	 * @see ReferencedResource#accessForWrite
-	 */
-	public void accessForWrite() {
-		checkDeleted();
-		editReferenceCount++;
-		if (isNew)
-			releaseFromRead();
-		isNew = false;
-		if (!isTrackingModification())
-			setTrackingModification(true);
-	}
-
-	/*
-	 * Check if this resource has been removed and throw an exception if it does not have a
-	 * ResourceSet.
-	 */
-	protected void checkDeleted() {
-		if (getResourceSet() == null)
-			throw new RuntimeException(DELETED_ERROR_MSG);
-	}
-
-	/**
-	 *  
-	 */
-	public void collectContainedObjects(java.util.List collecting, EObject parentObject) {
-
-		java.util.Iterator children = parentObject.eContents().iterator();
-		while (children.hasNext()) {
-			EObject child = (EObject) children.next();
-			collecting.add(child);
-			collectContainedObjects(collecting, child);
-		}
-	}
-
-	/**
-	 *  
-	 */
-	public void ensureFullIDHydration() {
-		List allRefObjects = new ArrayList();
-		Iterator rootObjects = getContents().iterator();
-		while (rootObjects.hasNext()) {
-			EObject child = (EObject) rootObjects.next();
-			allRefObjects.add(child);
-			collectContainedObjects(allRefObjects, child);
-		}
-
-		Iterator iter = allRefObjects.iterator();
-		while (iter.hasNext())
-			IDUtil.assignID((EObject) iter.next(), this);
-	}
-
-	/**
-	 * If the resource is no longer being accessed, then remove it from the resource set.
-	 */
-	public void unloadIfNecessary() {
-		if ((getTotalReferenceCount() <= 0) || (editReferenceCount <= 0 && isModified()))
-			unload();
-	}
-
-	/**
-	 * Return the number of write accesses to this resource.
-	 * 
-	 * @return int The number of references.
-	 */
-	protected int getTotalReferenceCount() {
-		return editReferenceCount + readReferenceCount;
-	}
-
-	/*
-	 * @see ReferencedResource#isNew
-	 */
-	public boolean isNew() {
-		return isNew;
-	}
-
-	/*
-	 * @see ReferencedResource#isReadOnly
-	 */
-	public boolean isReadOnly() {
-		return editReferenceCount <= 0;
-	}
-
-	/*
-	 * @see ReferencedResource#isShared
-	 */
-	public boolean isShared() {
-		return getTotalReferenceCount() > 1;
-	}
-
-	/*
-	 * @see ReferencedResource#isSharedForWrite
-	 */
-	public boolean isSharedForWrite() {
-		return editReferenceCount > 1;
-	}
-
-	/**
-	 * @see ReferencedResource#preDelete
-	 */
-	public void preDelete() {
-	}
-
-	/*
-	 * @see ReferencedResource#releaseFromRead
-	 */
-	public void releaseFromRead() {
-		readReferenceCount--;
-		if (readReferenceCount < 0)
-			throw new RuntimeException("Read reference count error:  " + this.toString()); //$NON-NLS-1$
-		unloadIfNecessary();
-	}
-
-	/*
-	 * @see ReferencedResource#releaseFromWrite
-	 */
-	public void releaseFromWrite() {
-		editReferenceCount--;
-		if (editReferenceCount < 0)
-			throw new RuntimeException("Write reference count error:  " + this.toString()); //$NON-NLS-1$
-		unloadIfNecessary();
-	}
-
-	/*
-	 * @see ReferencedResource#saveIfNecessary
-	 */
-	public void saveIfNecessary() throws Exception {
-		if (!isSharedForWrite()) // caller is the only referencer
-			save(Collections.EMPTY_MAP);
-	}
-
-	public String toString() {
-		return TO_STRING + getURI().toString() + READ_COUNT_TO_STRING + new Integer(readReferenceCount) + WRITE_COUNT_TO_STRING + new Integer(editReferenceCount);
-	}
-
-	/*
-	 * @see ReferencedResource#needsToSave()
-	 */
-	public boolean needsToSave() {
-		return isModified() && !isSharedForWrite();
-	}
-
-
-	/**
-	 * @see ReferencedResource#setForceRefresh(boolean)
-	 */
-	public void setForceRefresh(boolean b) {
-		forceRefresh = b;
-	}
-
-	/**
-	 * @see ReferencedResource#shouldForceRefresh()
-	 */
-	public boolean shouldForceRefresh() {
-		return forceRefresh;
-	}
-
-	protected void basicDoLoad(InputStream arg0, Map arg1) throws IOException {
-		boolean isTrackingMods = isTrackingModification();
-		try {
-			if (isTrackingMods)
-				setTrackingModification(false);
-			super.basicDoLoad(arg0, arg1);
-		} finally {
-			if (isTrackingMods)
-				setTrackingModification(true);
-		}
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl#doUnload()
-	 */
-	protected void doUnload() {
-		
-		try {
-			// Using load lock to ensure no other threads will attempt a load during the unload process
-			addSynchronizationLoadingAdapter();
-			waitForResourceToLoadIfNecessary();
-			
-			if (isTrackingModification() && editReferenceCount < 1) //do not turn off modification if
-				// we still have a write count
-				setTrackingModification(false);
-			super.doUnload();
-			setForceRefresh(false);
-			setModified(false); //dcb - this is required to ensure that resources without files are
-			// marked as not modified.
-			if (readReferenceCount == 0 && editReferenceCount == 0 && getResourceSet() != null) {
-				getResourceSet().getResources().remove(this);
-			}
-		
-		} finally {
-			//Removing the load lock
-			removeLoadingSynchronizationAdapter();
-		}
-			
-	}
-
-
-	/**
-	 * The resource has been unloaded, and there are no references. Treat the resource like a new
-	 * Resource
-	 */
-	// never used
-//	private void resetAsNew() {
-//		readReferenceCount = 1;
-//		isNew = true;
-//	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.resource.Resource#save(Object)
-	 */
-	public void save(Map options) throws IOException {
-		notifyAboutToSave();
-        try {
-            super.save(options);
-        } catch (Exception e) {
-            notifySaveFailed();
-            if (e instanceof IOException)
-                throw (IOException) e;
-            else
-                Logger.getLogger().write(e);
-        }
-        notifySaved();
-	}
-
-	protected void notifySaved() {
-		notifySaveEvent(RESOURCE_WAS_SAVED);
-	}
-	
-	protected void notifyAboutToSave() {
-        notifySaveEvent(RESOURCE_ABOUT_TO_SAVE);
-    }
-	
-	protected void notifySaveFailed() {
-        notifySaveEvent(RESOURCE_SAVE_FAILED);
-    }
-	
-	private void notifySaveEvent(int eventType) {
-		if (eNotificationRequired()) {
-		  Notification notification =
-			new NotificationImpl(eventType, this, this)
-			{
-			  public Object getNotifier()
-			  {
-				return ReferencedXMIResourceImpl.this;
-			  }
-			  public int getFeatureID(Class expectedClass)
-			  {
-				return eventType;
-			  }
-			};
-			eNotify(notification);
-		}
-	}	
-
-	/**
-	 * @see com.ibm.etools.emf.workbench.ReferencedResource#wasReverted()
-	 */
-	public boolean wasReverted() {
-		return false;
-	}
-	
-	public EList eAdapters()
-	  {
-	    if (eAdapters == null)
-	    {
-	      eAdapters =  new ESynchronizedAdapterList(this);
-	    }
-	    return eAdapters;
-	  }
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/Renderer.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/Renderer.java
deleted file mode 100644
index 4a9c37d..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/Renderer.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.Map;
-
-/**
- * Interface that defines the api for rendering an EMF object to XML and vice versa
- */
-public interface Renderer {
-
-	public static final String JAXP_SCHEMA_LANGUAGE = "http://java.sun.com/xml/jaxp/properties/schemaLanguage"; //$NON-NLS-1$
-
-	public static final String W3C_XML_SCHEMA = "http://www.w3.org/2001/XMLSchema"; //$NON-NLS-1$
-
-	void setResource(TranslatorResource aResource);
-
-	TranslatorResource getResource();
-
-	void doLoad(InputStream in, Map options) throws IOException;
-
-	void doSave(OutputStream outputStream, Map options) throws IOException;
-
-	boolean useStreamsForIO();
-
-	void prepareToAddContents();
-
-	int getVersionID();
-
-	boolean isModified();
-
-	void accessForWrite();
-
-	void accessForRead();
-
-	void releaseFromRead();
-
-	void releaseFromWrite();
-
-	void preDelete();
-
-	void preUnload();
-
-	boolean isShared();
-
-	boolean isSharedForWrite();
-
-	void setBatchMode(boolean isBatch);
-	
-	boolean isBatchMode();
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/RendererFactory.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/RendererFactory.java
deleted file mode 100644
index 19c133c..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/RendererFactory.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.Iterator;
-import java.util.Map;
-import java.util.WeakHashMap;
-
-
-public abstract class RendererFactory {
-
-	public abstract Renderer createRenderer();
-
-	private static RendererFactory defaultRendererFactory;
-
-	private static RendererFactoryDefaultHandler defaultHandler;
-
-	private boolean validating = true;
-
-	/**
-	 * Interested parties can use the
-	 */
-	public final static Notifier NotificationEngine = Notifier.INSTANCE;
-
-	/**
-	 * @return
-	 */
-	public static RendererFactory getDefaultRendererFactory() {
-		if (defaultRendererFactory == null)
-			defaultRendererFactory = getDefaultHandler().getDefaultRendererFactory();
-		return defaultRendererFactory;
-	}
-
-	/**
-	 * @param factory
-	 */
-	public static void setDefaultRendererFactory(RendererFactory factory) {
-
-		//System.out.println("\n\n***Setting factory: " + factory);
-		NotificationEngine.notifyListeners(factory);
-		defaultRendererFactory = factory;
-	}
-
-	public String toString() {
-		return "RendererFactory instance: " + getClass().getName(); //$NON-NLS-1$
-	}
-
-	public static class Notifier {
-
-		private static final Notifier INSTANCE = new Notifier();
-
-		// use a WeakHashMap for a weak HashSet
-		private final Map resourceFactoryListeners = new WeakHashMap();
-
-		private Notifier() {
-		}
-
-		public void notifyListeners(RendererFactory rendererFactory) {
-
-			final int length = resourceFactoryListeners.size();
-			//System.out.println("Notifying " + length + " listeners");
-
-			if (length > 0) {
-				/*
-				 * Since the renderer factories are singletons, this reference check should always
-				 * work
-				 */
-				if (rendererFactory != RendererFactory.getDefaultRendererFactory()) {
-					synchronized (resourceFactoryListeners) {
-						for (Iterator i = resourceFactoryListeners.keySet().iterator(); i.hasNext();) {
-							Listener listener = (Listener) i.next();
-							//System.out.println("Notifying Listener: " + listener);
-							listener.updateRendererFactory(rendererFactory);
-						}
-					}
-				}
-			}
-		}
-
-		public void addListener(Listener l) {
-			//System.out.println("Adding listener: " + l);
-			synchronized (resourceFactoryListeners) {
-				resourceFactoryListeners.put(l, null);
-			}
-		}
-
-		public void removeListener(Listener listenerToRemove) {
-			synchronized (resourceFactoryListeners) {
-				resourceFactoryListeners.remove(listenerToRemove);
-			}
-		}
-
-	}
-
-	public interface Listener {
-		void updateRendererFactory(RendererFactory newRendererFactory);
-	}
-
-	/**
-	 * @return
-	 */
-	public boolean isValidating() {
-		return validating;
-	}
-
-	/**
-	 * @param b
-	 */
-	public void setValidating(boolean b) {
-		validating = b;
-	}
-
-	/**
-	 * @return
-	 */
-	public static RendererFactoryDefaultHandler getDefaultHandler() {
-		if (defaultHandler == null)
-			defaultHandler = EMF2DOMRendererFactoryDefaultHandler.INSTANCE;
-		return defaultHandler;
-	}
-
-	/**
-	 * @param handler
-	 */
-	public static void setDefaultHandler(RendererFactoryDefaultHandler handler) {
-		defaultHandler = handler;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/RendererFactoryDefaultHandler.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/RendererFactoryDefaultHandler.java
deleted file mode 100644
index 575df4f..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/RendererFactoryDefaultHandler.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Dec 1, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public interface RendererFactoryDefaultHandler {
-
-	RendererFactory getDefaultRendererFactory();
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ResourceFactoryDescriptor.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ResourceFactoryDescriptor.java
deleted file mode 100644
index 10850e9..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/ResourceFactoryDescriptor.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-
-public abstract class ResourceFactoryDescriptor {
-	
-	
-	/**
-	 * Returns true if the current descriptor is applicable to the given fileURI.
-	 * 
-	 * @param fileURI The URI of the file to be loaded
-	 * @return True if the current descriptor declares a resource factory applicable to the given URI.
-	 */
-	public abstract boolean isEnabledFor(URI fileURI);
-	
-	/**
-	 * The contentType is one optional way that a ResourceFactory
-	 * might apply to a URI. Clients should call {@link isEnabledFor} 
-	 * instead of comparing the content Types when searching for an
-	 * applicable descriptor from a set.  
-	 * 
-	 * <p><b>Subclasses may return null.(optional)</b></p>
-	 *  
-	 * @return The content type that this descriptor is applicable to.
-	 */
-	public IContentType getContentType(){
-		return null;
-	}
-	
-	/**
-	 * In the case where more than one factory is defined for the same fileName, 
-	 * and creation is passed a uri only a default factory is needed
-	 * 
-	 *  
-	 * @return The boolean describing the default factory
-	 */
-	public boolean isDefault(){
-		return true;
-	}
-	
-	/**
-	 * The short segment is one possible way that a ResourceFactory
-	 * might apply to a URI. Clients should call {@link isEnabledFor} 
-	 * instead of comparing the short segments when searching for an
-	 * applicable descriptor from a set.  
-	 * 
-	 * <p><b>Subclasses may NOT return null unless they also override
-	 * {@link #hashCode()} and {@link #equals(Object)}.</b></p>
-	 *  
-	 * @return The short segment that this descriptor is applicable to.
-	 */
-	public abstract String getShortSegment();
-	
-	
-	/**
-	 * The correct instance of Resource.Factory. The instance returned
-	 * may or may not be unique, so if you require the same instance 
-	 * for each call, you should cache the value returned the first
-	 * time from this method. 
-	 * 
-	 * @return An instance of Resource.Factory.
-	 */
-	public abstract Resource.Factory createFactory();
-	
-	public int hashCode() {
-		return getShortSegment().hashCode();
-	}
-	
-	public boolean equals(Object o) {
-		if(o instanceof ResourceFactoryDescriptor)
-			return getShortSegment().equals(((ResourceFactoryDescriptor)o).getShortSegment());
-		return false;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/RootTranslator.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/RootTranslator.java
deleted file mode 100644
index f5640e9..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/RootTranslator.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-
-public class RootTranslator extends Translator {
-
-	/**
-	 * Constructor for RootTranslator.
-	 * 
-	 * @param domNameAndPath
-	 * @param eClass
-	 */
-	public RootTranslator(String domNameAndPath, EClass eClass) {
-		super(domNameAndPath, eClass);
-	}
-
-	/**
-	 * @see com.ibm.etools.emf2xml.impl.Translator#setMOFValue(Notifier, Object, int)
-	 */
-	public void setMOFValue(Notifier owner, Object value, int newIndex) {
-		((Resource) owner).getContents().add(newIndex, (EObject)value);
-	}
-
-	/**
-	 * @see com.ibm.etools.emf2xml.impl.Translator#removeMOFValue(Notifier, Object)
-	 */
-	public void removeMOFValue(Notifier owner, Object value) {
-		((Resource) owner).getContents().remove(value);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#setMOFValue(org.eclipse.emf.ecore.EObject,
-	 *      java.lang.Object)
-	 */
-	public void setMOFValue(Resource res, Object value) {
-		if (res != null && value != null)
-			res.getContents().add((EObject)value);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#isMultiValued()
-	 */
-	public boolean isMultiValued() {
-		return true;
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/SourceLinkTranslator.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/SourceLinkTranslator.java
deleted file mode 100644
index d5d697b..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/SourceLinkTranslator.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 1, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-/**
- * @author schacher
- */
-public class SourceLinkTranslator extends Translator {
-
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 * @param path
-	 */
-	public SourceLinkTranslator(String domNameAndPath, EStructuralFeature aFeature, TranslatorPath path) {
-		super(domNameAndPath, aFeature, path);
-	}
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 * @param path
-	 */
-	public SourceLinkTranslator(String domNameAndPath, EStructuralFeature aFeature, TranslatorPath path, int style) {
-		super(domNameAndPath, aFeature, path);
-		fStyle |= style;
-	}
-
-	/**
-	 * @param domNameAndPath
-	 * @param aFeature
-	 * @param style
-	 */
-	public SourceLinkTranslator(String domNameAndPath, EStructuralFeature aFeature, int style) {
-		super(domNameAndPath, aFeature, style);
-	}
-
-	public Object convertStringToValue(String strValue, EObject owner) {
-
-		Object value = null;
-		if (strValue != null)
-			// Find the object with the name that matches matchName
-			value = fTranslatorPaths[0].findObject(owner, strValue.trim());
-		if ((fStyle & Translator.STRING_RESULT_OK) != 0)
-			return ((value != null) ? value : strValue);
-		return value;
-	}
-
-	public String convertValueToString(Object value, EObject owner) {
-		TranslatorPath path = fTranslatorPaths[0];
-		Object attrValue = path.getLastMap().getMOFValue((EObject) value);
-		return path.getLastMap().convertValueToString(attrValue, owner);
-	}
-
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/StaticResourceFactoryDescriptor.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/StaticResourceFactoryDescriptor.java
deleted file mode 100644
index 8caf4ea..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/StaticResourceFactoryDescriptor.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-
-/**
- * Declares a subclass to create Resource.Factory(ies) from an extension. 
- */
-class StaticResourceFactoryDescriptor extends ResourceFactoryDescriptor {
-	
-	private final String shortSegment;
-	private final Resource.Factory factory;
-	
-	/**
-	 * 
-	 * @param shortSegment A non-null name of the file associated with the given factory
-	 * @param factory A non-null Resource.Factory that can load files of the given name
-	 */
-	public StaticResourceFactoryDescriptor(String shortSegment, Resource.Factory factory) {
-		Assert.isNotNull(shortSegment);
-		Assert.isNotNull(factory);
-		this.shortSegment = shortSegment;
-		this.factory = factory;
-	}  
-
-	public boolean isEnabledFor(URI fileURI) {
-		/* shortSegment must be non-null for the descriptor to be created, 
-		 * a validation check in init() verifies this requirement */
-		if(fileURI != null && fileURI.lastSegment() != null)
-			return shortSegment.equals(fileURI.lastSegment());
-		return false;
-	} 
-	
-	public Resource.Factory createFactory() {
-		 return factory;			
-	}
-
-	public String getShortSegment() {
-		return shortSegment;
-	}  
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/Translator.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/Translator.java
deleted file mode 100644
index ab28074..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/Translator.java
+++ /dev/null
@@ -1,799 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EDataType;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.impl.EStructuralFeatureImpl;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil;
-import org.eclipse.wst.common.internal.emf.utilities.FeatureValueConverter;
-import org.w3c.dom.Node;
-
-
-public class Translator {
-
-	public final static int NO_STYLE = 0;
-	public final static int DOM_ATTRIBUTE = 1;
-	public final static int EMPTY_TAG = 1 << 1;
-	public final static int CDATA_CONTENT = 1 << 2;
-	/**
-	 * Style bit that indicates that the end tag should NOT be indented; by default it is.
-	 */
-	public final static int END_TAG_NO_INDENT = 1 << 3;
-	/**
-	 * Style bit that indicates that booleans should NOT be converted as "True" and "False"; default
-	 * is that they are
-	 */
-	public final static int BOOLEAN_LOWERCASE = 1 << 4;
-	/**
-	 * Style bit that indicates an enum value contains hyphens If this is true, then internally the
-	 * hyphens are replaced with underscores
-	 */
-	public final static int ENUM_FEATURE_WITH_HYPHENS = 1 << 5;
-
-	protected final static int OBJECT_MAP = 1 << 6;
-	protected final static int BOOLEAN_FEATURE = 1 << 7;
-
-	protected final static int SHARED_REFERENCE = 1 << 8;
-
-	/**
-	 * Indicates that the feature may be significant even if it is empty
-	 */
-	public final static int EMPTY_CONTENT_IS_SIGNIFICANT = 1 << 9;
-
-	/**
-	 * Used to indicate that feature is associated with a comment node
-	 */
-	protected final static int COMMENT_FEATURE = 1 << 10;
-
-	/**
-	 * If the value is null, then an eUnset() will be invoked on the feature
-	 */
-	public final static int UNSET_IF_NULL = 1 << 11;
-
-	/**
-	 * Return the element contents as a String if the feature is unresolveable (Used by the
-	 * SourceLinkTranslator)
-	 */
-	public final static int STRING_RESULT_OK = 1 << 12;
-
-	protected String[] fDOMNames;
-	protected String fDOMPath = ""; //$NON-NLS-1$
-	protected Map readAheadNames;
-	protected int fStyle = NO_STYLE;
-	protected EStructuralFeature feature;
-	protected TranslatorPath[] fTranslatorPaths;
-	protected EClass emfClass;
-	protected String fNameSpace = ""; //$NON-NLS-1$
-	// added by MDE
-	protected String domNameAndPath = null;
-
-	/**
-	 * Indicates if any of the children of this Translator are themselves DependencyTranslators
-	 */
-	protected Boolean isDependencyParent;
-	protected EStructuralFeature dependencyFeature;
-	protected static EcorePackage ECORE_PACKAGE = EcorePackage.eINSTANCE;
-
-	// Use this identifier for the DOMName when the attribute
-	// value is to be extracted directly from the text of the node.
-	// This is rare, but occurs in the web.xml in the case of a
-	// WelcomeFile.
-	static final public String TEXT_ATTRIBUTE_VALUE = "$TEXT_ATTRIBUTE_VALUE"; //$NON-NLS-1$
-
-	static final public EStructuralFeature CONTAINER_FEATURE = new ContainerFeature();
-
-	static final public EStructuralFeature ROOT_FEATURE = new RootFeature();
-
-	protected static class ContainerFeature extends EStructuralFeatureImpl {
-		protected ContainerFeature() {
-			super();
-		}
-	}
-
-	protected static class RootFeature extends EStructuralFeatureImpl {
-		protected RootFeature() {
-			super();
-		}
-	}
-
-	public Translator findChild(String tagName, Object target, int versionID) {
-
-		Translator result = null;
-		Translator[] maps = getChildren(target, versionID);
-
-		if (maps != null) {
-			for (int i = 0; i < maps.length; i++) {
-				Translator map = maps[i];
-				if (map.isMapFor(tagName)) {
-					result = map;
-					break;
-				}
-			}
-		}
-		if (result == null) {
-			VariableTranslatorFactory factory = getVariableTranslatorFactory();
-			if (factory != null && factory.accepts(tagName)) {
-				result = factory.create(tagName);
-			}
-		}
-		return result;
-	}
-
-	/**
-	 * Utility method to string together arrays of children
-	 */
-	public static Object[] concat(Object[] array1, Object[] array2) {
-		Object[] result = (Object[]) java.lang.reflect.Array.newInstance(array1.getClass().getComponentType(), array1.length + array2.length);
-		System.arraycopy(array1, 0, result, 0, array1.length);
-		System.arraycopy(array2, 0, result, array1.length, array2.length);
-		return result;
-	}
-
-	public static Object[] concat(Object[] array1, Object object2) {
-		Object[] newArray = new Object[]{object2};
-		return concat(array1, newArray);
-	}
-
-	public static Translator createParentAndTextAttributeTranslator(String domName, EStructuralFeature parentFeature, EStructuralFeature childFeature) {
-		GenericTranslator parent = new GenericTranslator(domName, parentFeature, END_TAG_NO_INDENT);
-		parent.setChildren(new Translator[]{new Translator(TEXT_ATTRIBUTE_VALUE, childFeature)});
-		return parent;
-	}
-
-	public Translator(String domNameAndPath, EClass eClass) {
-		initializeDOMNameAndPath(domNameAndPath);
-		setEMFClass(eClass);
-	}
-
-	public Translator(String domNameAndPath, EStructuralFeature aFeature) {
-		initializeDOMNameAndPath(domNameAndPath);
-		setFeature(aFeature);
-	}
-
-	public Translator(String domNameAndPath, EStructuralFeature aFeature, EClass eClass) {
-		this(domNameAndPath, aFeature);
-		setEMFClass(eClass);
-	}
-
-	public Translator(String domNameAndPath, EStructuralFeature aFeature, TranslatorPath path) {
-		this(domNameAndPath, aFeature, new TranslatorPath[]{path});
-	}
-
-	public Translator(String domNameAndPath, EStructuralFeature aFeature, TranslatorPath[] paths) {
-		initializeDOMNameAndPath(domNameAndPath);
-		fTranslatorPaths = paths;
-		setFeature(aFeature);
-	}
-
-	public Translator(String domNameAndPath, EStructuralFeature aFeature, int style) {
-		initializeDOMNameAndPath(domNameAndPath);
-		fStyle = style;
-		setFeature(aFeature);
-	}
-
-	public static EcorePackage getEcorePackage() {
-		return EcorePackage.eINSTANCE;
-	}
-
-	public String getDOMName(Object value) {
-		return fDOMNames[0];
-	}
-
-	public String[] getDOMNames() {
-		return fDOMNames;
-	}
-
-	public String getDOMPath() {
-		return fDOMPath;
-	}
-
-	public boolean hasDOMPath() {
-		return fDOMPath != null && fDOMPath.length() != 0;
-	}
-
-	public EStructuralFeature getFeature() {
-		return feature;
-	}
-
-	/**
-	 * Parse the DOM names and path out of <domNameAndPath>and set the appropriate fields.
-	 */
-	protected void initializeDOMNameAndPath(String domNameAndPathArg) {
-		if (domNameAndPathArg == null)
-			return;
-		int inx = domNameAndPathArg.lastIndexOf('/');
-		if (inx != -1) {
-			fDOMNames = parseDOMNames(domNameAndPathArg.substring(inx + 1));
-			fDOMPath = domNameAndPathArg.substring(0, inx);
-		} else {
-			fDOMNames = parseDOMNames(domNameAndPathArg);
-			fDOMPath = ""; //$NON-NLS-1$
-		}
-		// added by MDE
-		this.domNameAndPath = domNameAndPathArg;
-
-	}
-
-	/**
-	 * Indicates whether the node should be written as an empty tag; eg, <distributable/>
-	 */
-	public boolean isCDATAContent() {
-		return (fStyle & CDATA_CONTENT) != 0;
-	}
-
-	/**
-	 * Indicates whether the DOMName represents a sub element name or an attribute name
-	 * 
-	 * @return boolean True if the DOMName is an attribute name.
-	 */
-	public boolean isDOMAttribute() {
-		return (fStyle & DOM_ATTRIBUTE) != 0;
-	}
-
-	/**
-	 * Indicates whether the node should be written as an empty tag; eg, <distributable/>
-	 */
-	public boolean isEmptyTag() {
-		return (fStyle & EMPTY_TAG) != 0;
-	}
-
-	public boolean isBooleanUppercase() {
-		return (fStyle & BOOLEAN_FEATURE) != 0 && (fStyle & BOOLEAN_LOWERCASE) == 0;
-	}
-
-	public boolean isBooleanFeature() {
-		return (fStyle & BOOLEAN_FEATURE) != 0;
-	}
-
-	public boolean shouldIndentEndTag() {
-		return (fStyle & END_TAG_NO_INDENT) == 0;
-	}
-
-	public boolean shouldIndentEndTag(Node node) {
-		return shouldIndentEndTag();
-	}
-
-	public boolean isEmptyContentSignificant() {
-		return ((fStyle & EMPTY_TAG) != 0) || ((fStyle & EMPTY_CONTENT_IS_SIGNIFICANT) != 0);
-	}
-
-	/**
-	 * Returns true if this map is to another MOF object (not a primitive)
-	 */
-	public boolean isObjectMap() {
-		return (fStyle & OBJECT_MAP) != 0;
-	}
-
-	/**
-	 * Returns true if this map is for a shared reference
-	 */
-	public boolean isShared() {
-		return (fStyle & SHARED_REFERENCE) != 0;
-	}
-
-	public boolean isEnumWithHyphens() {
-		return (fStyle & ENUM_FEATURE_WITH_HYPHENS) != 0;
-	}
-
-	/**
-	 * Indicates whether the map represents a case where the text of the DOMNode represents the
-	 * objects one and only attribute value. An example of this case is a <welcome-file>file.txt
-	 * </welcome-file>.
-	 */
-	public boolean isDOMTextValue() {
-		return fDOMNames[0] == TEXT_ATTRIBUTE_VALUE;
-	}
-
-	/**
-	 * Indicates whether the id is the mof attribute that should be set.
-	 */
-	public boolean isIDMap() {
-		return false;
-	}
-
-	/**
-	 * Indicates whether the id is the mof attribute that should be set.
-	 */
-	public boolean isLinkMap() {
-		return fTranslatorPaths != null;
-	}
-
-	public boolean isTargetLinkMap() {
-		return isLinkMap() && !isObjectMap();
-	}
-
-	/**
-	 * Return true if this map is the one representing a node with the name <domName>. By default
-	 * this method simply compares the DOM name of the map against the <domName>parameter
-	 * 
-	 * @return boolean
-	 * @param domName
-	 *            java.lang.String
-	 */
-	public boolean isMapFor(String domName) {
-		if (domName.equals(getDOMPath()))
-			return true;
-		for (int i = 0; i < fDOMNames.length; i++) {
-			if (domName.equals(fDOMNames[i]))
-				return true;
-		}
-		return false;
-	}
-
-	public boolean isMapFor(Object aFeature, Object oldValue, Object newValue) {
-		return feature == aFeature;
-	}
-
-	/**
-	 * Indicates whether feature being mapped is a collection.
-	 * 
-	 * @return boolean True if the feature is multi valued.
-	 */
-	public boolean isMultiValued() {
-		if (feature != null)
-			return feature.isMany();
-		return false;
-	}
-
-	/**
-	 * Parses comma separated names from <domNamesString>. Returns an array containing the names.
-	 * 
-	 * @return java.lang.String[]
-	 * @param domNamesString
-	 *            java.lang.String
-	 */
-	protected String[] parseDOMNames(String domNamesString) {
-		int startInx = 0;
-		int inx = domNamesString.indexOf(',');
-		ArrayList results = new ArrayList(1);
-		while (inx != -1) {
-			results.add(domNamesString.substring(startInx, inx));
-			startInx = inx + 1;
-			inx = domNamesString.indexOf(',', startInx);
-		}
-		if (startInx == 0)
-			results.add(domNamesString);
-		else
-			results.add(domNamesString.substring(startInx));
-		return (String[]) results.toArray(new String[results.size()]);
-	}
-
-	public String toString() {
-		StringBuffer sb = new StringBuffer();
-		String cn = getClass().getName();
-		int i = cn.lastIndexOf('.');
-		cn = cn.substring(++i, cn.length());
-		sb.append(cn);
-		sb.append('(');
-		sb.append(fDOMNames[0]);
-		for (int j = 1; j < fDOMNames.length; j++) {
-			sb.append('|');
-			sb.append(fDOMNames[j]);
-		}
-		sb.append(',');
-		sb.append(hashCode());
-		sb.append(')');
-		return sb.toString();
-	}
-
-	/**
-	 * Gets the TranslatorPath.
-	 * 
-	 * @return Returns a TranslatorPath
-	 */
-	public TranslatorPath[] getTranslatorPaths() {
-		return fTranslatorPaths;
-	}
-
-	/*
-	 * @see Object#equals(Object)
-	 */
-	public boolean equals(Object object) {
-		if (!(object instanceof Translator))
-			return false;
-		Translator mapInfo = (Translator) object;
-		return fDOMNames.equals(mapInfo.getDOMNames()) && (feature == null && mapInfo.getFeature() == null || feature.equals(mapInfo.getFeature()));
-	}
-
-	/**
-	 * Returns the isManagedByParent.
-	 * 
-	 * @return boolean
-	 */
-	public boolean isManagedByParent() {
-		return getChildren(null, -1) == null;
-	}
-
-	/*
-	 * In the 99% case there is only one node name to be concerned with, but subclasses can override
-	 * for the cases where multiple dom names map to one feature
-	 */
-	public EObject createEMFObject(String nodeName, String readAheadName) {
-		if (emfClass == null) {
-			if (feature == null)
-				return null;
-			if (isObjectMap())
-				return createEMFObject(feature);
-		}
-		return createEMFObject(emfClass);
-	}
-
-	public static EObject createEMFObject(EStructuralFeature aFeature) {
-		if (aFeature == null)
-			return null;
-
-		return createEMFObject(((EReference) aFeature).getEReferenceType());
-	}
-
-	public static EObject createEMFObject(EClass anEClass) {
-		if (anEClass == null)
-			return null;
-		return anEClass.getEPackage().getEFactoryInstance().create(anEClass);
-	}
-
-	public void setTextValueIfNecessary(String textValue, Notifier owner, int versionId) {
-		Translator textTranslator = this.findChild(Translator.TEXT_ATTRIBUTE_VALUE, owner, versionId);
-		if (textTranslator != null) {
-			Object objectValue = textTranslator.convertStringToValue(textValue, (EObject) owner);
-			textTranslator.setMOFValue(owner, objectValue);
-		}
-	}
-
-	/**
-	 * Check to see if feature is valid on a particular mofObject.
-	 * 
-	 * @return boolean Return true if the feature specified exists on the MOF object.
-	 * @param emfObject
-	 *            org.eclipse.emf.ecore.EObject
-	 */
-	public boolean featureExists(EObject emfObject) {
-		if (feature == null)
-			return false;
-
-		return emfObject.eClass().getEStructuralFeature(feature.getName()) != null;
-	}
-
-	/**
-	 * Translators which do not have a feature should override this method with custom behavior.
-	 */
-	public String extractStringValue(EObject emfObject) {
-		if (isEmptyTag() && feature == null)
-			return ""; //Fake it out with a value //$NON-NLS-1$
-		return null;
-	}
-
-	public Object convertStringToValue(String nodeName, String readAheadName, String value, Notifier owner) {
-		Object result = null;
-		try {
-
-			if (!this.isManagedByParent()) {
-				result = createEMFObject(nodeName, readAheadName);
-			} else {
-				result = convertStringToValue(value, (EObject) owner);
-			}
-
-		} catch (ClassCastException cce) {
-
-		}
-		return result;
-	}
-
-	/**
-	 * Converts a string value to the appropriate type.
-	 * 
-	 * @return java.lang.Object The converted value
-	 * @param strValue
-	 *            java.lang.String The string to convert.
-	 */
-	public Object convertStringToValue(String strValue, EObject owner) {
-		if (feature == null)
-			return strValue;
-		if (strValue != null) {
-			if (isEnumWithHyphens())
-				strValue = strValue.replace('-', '_');
-			if (!isCDATAContent()) {
-				strValue = strValue.trim();
-			}
-		}
-		Object value = FeatureValueConverter.DEFAULT.convertValue(strValue, feature);
-		if (value == null) {
-			if (isEmptyTag() && !isDOMAttribute() && !isDOMTextValue() && isBooleanFeature())
-				return Boolean.TRUE;
-			EObject convertToType = feature.getEType();
-			if (convertToType == null)
-				value = strValue;
-			else if (convertToType.equals(getEcorePackage().getEString())) {
-				value = ""; //$NON-NLS-1$
-			}
-		}
-		return value;
-	}
-
-	/**
-	 * Converts a value of a specified type to a string value. Subclasses may override for special
-	 * cases where special conversion needs to occur based on the feature and or object type.
-	 * 
-	 * @return String The converted value
-	 * @param value
-	 *            java.lang.Object The object to convert.
-	 */
-	public String convertValueToString(Object value, EObject owner) {
-		if (isEmptyTag() || value == null)
-			return null;
-		else if (isEnumWithHyphens())
-			return value.toString().replace('_', '-');
-		else if (isBooleanUppercase())
-			return ((Boolean) value).booleanValue() ? "True" : "False"; //$NON-NLS-1$ //$NON-NLS-2$
-
-		return value.toString();
-	}
-
-	public Translator[] getVariableChildren(Notifier target, int version) {
-		Translator[] results = null;
-		VariableTranslatorFactory factory = getVariableTranslatorFactory();
-		if (factory != null) {
-			List variableTranslators = factory.create(target);
-			if (variableTranslators != null && variableTranslators.size() > 0) {
-				Object[] vtoa = variableTranslators.toArray();
-
-				results = new Translator[vtoa.length];
-				for (int i = 0; i < results.length; i++)
-					results[i] = (Translator) vtoa[i];
-			}
-
-		}
-		if (results == null)
-			results = new Translator[0];
-		return results;
-	}
-
-	/**
-	 * Returns null by default; subclasses should override to return specific children
-	 */
-	public Translator[] getChildren(Object target, int versionID) {
-		return getChildren();
-	}
-
-	protected Translator[] getChildren() {
-		return null;
-	}
-
-	/**
-	 * Return the list of MOF children that currently exist for the values of an attribute.
-	 */
-	public List getMOFChildren(EObject mofObject) {
-		if (feature == null)
-			return Collections.EMPTY_LIST;
-		Object value = getMOFValue(mofObject);
-		List result = Collections.EMPTY_LIST;
-		if (isMultiValued())
-			result = (List) value;
-		else if (value != null)
-			result = Collections.singletonList(value);
-		return result;
-	}
-
-	public Object getMOFValue(EObject mofObject) {
-		if (feature == null)
-			return null;
-		return mofObject.eGet(feature);
-	}
-
-	/**
-	 * Sets a value of a feature in a mof object.
-	 */
-	public void setMOFValue(Notifier owner, Object value, int newIndex) {
-		if (feature != null) {
-			if ((fStyle & UNSET_IF_NULL) != 0 && value == null)
-				ExtendedEcoreUtil.eUnsetOrRemove((EObject) owner, feature, value);
-			else
-				ExtendedEcoreUtil.eSetOrAdd((EObject) owner, feature, value, newIndex);
-		}
-	}
-
-	public void setMOFValue(Notifier owner, Object value) {
-		if (owner instanceof EObject) {
-			setMOFValue((EObject) owner, value);
-		} else if (owner instanceof Resource) {
-			setMOFValue((Resource) owner, value);
-		}
-	}
-
-	public void setMOFValue(EObject emfObject, Object value) {
-		//		if (feature != null)
-		//			emfObject.eSet(feature, value);
-		setMOFValue(emfObject, value, -1);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.impl.Translator#setMOFValue(org.eclipse.emf.ecore.EObject,
-	 *      java.lang.Object)
-	 */
-	public void setMOFValue(Resource res, Object value) {
-		if (res != null && value != null)
-			res.getContents().add((EObject)value);
-	}
-
-	public void removeMOFValue(Notifier owner, Object value) {
-		if (feature != null)
-			ExtendedEcoreUtil.eUnsetOrRemove((EObject) owner, feature, value);
-	}
-
-	public boolean isSetMOFValue(EObject emfObject) {
-		boolean isSet = feature != null && emfObject.eIsSet(feature);
-		if (isEmptyTag())
-			return isSet && ((Boolean) emfObject.eGet(feature)).booleanValue();
-		return isSet;
-	}
-
-	public void unSetMOFValue(EObject emfObject) {
-		if (feature != null)
-			emfObject.eUnset(feature);
-	}
-
-	public void clearList(EObject mofObject) {
-		if (feature != null)
-			((List) mofObject.eGet(feature)).clear();
-	}
-
-	protected void setFeature(EStructuralFeature aFeature) {
-		this.feature = aFeature;
-		if (feature == null)
-			return;
-		//This way an instance check happens only once
-		if (aFeature instanceof EReference) {
-			fStyle |= OBJECT_MAP;
-			if (!((EReference) aFeature).isContainment())
-				fStyle |= SHARED_REFERENCE;
-		}
-
-		if (getEcorePackage().getEBoolean() == feature.getEType())
-			fStyle |= BOOLEAN_FEATURE;
-	}
-
-	protected void setEMFClass(EClass anEClass) {
-		this.emfClass = anEClass;
-		if (anEClass != null)
-			fStyle |= OBJECT_MAP;
-
-	}
-
-	public boolean hasReadAheadNames() {
-		return readAheadNames != null && !readAheadNames.isEmpty();
-	}
-
-	/**
-	 * Return the read ahead names, if they are defined, for a given parent node name. This is used
-	 * when creation of a specific EMF object is dependent on the value of a child node.
-	 */
-	public ReadAheadHelper getReadAheadHelper(String parentName) {
-		if (readAheadNames == null)
-			return null;
-		return (ReadAheadHelper) readAheadNames.get(parentName);
-	}
-
-	public void addReadAheadHelper(ReadAheadHelper helper) {
-		if (readAheadNames == null)
-			readAheadNames = new HashMap(3);
-		readAheadNames.put(helper.getParentDOMName(), helper);
-	}
-
-	public boolean isDependencyChild() {
-		return false;
-	}
-
-	/**
-	 * @return
-	 */
-	public boolean isDependencyParent() {
-		if (isDependencyParent == null) {
-			isDependencyParent = Boolean.FALSE;
-			Translator[] theChildren = getChildren(null, -1);
-			if (theChildren != null) {
-				for (int i = 0; i < theChildren.length; i++) {
-					//For now we assume one
-					if (theChildren[i].isDependencyChild()) {
-						isDependencyParent = Boolean.TRUE;
-						dependencyFeature = theChildren[i].getDependencyFeature();
-					}
-				}
-			}
-		}
-		return isDependencyParent.booleanValue();
-	}
-
-	/**
-	 * @return
-	 */
-	public EStructuralFeature getDependencyFeature() {
-		return dependencyFeature;
-	}
-
-	public EObject basicGetDependencyObject(EObject parent) {
-		return (EObject) parent.eGet(dependencyFeature);
-	}
-
-	/**
-	 * Use when the DOM path is not null, and there are no children. Default is false, but
-	 * subclasses may wish to override
-	 */
-	public boolean shouldRenderEmptyDOMPath(EObject eObject) {
-		return isEmptyContentSignificant();
-	}
-
-	/**
-	 * Use when the translator tolerates parent nodes that relate to the DOM path, and no children;
-	 * default is do nothing
-	 */
-	public void setMOFValueFromEmptyDOMPath(EObject eObject) {
-
-	}
-
-	/**
-	 * Namespace for the attributes
-	 * 
-	 * @return
-	 */
-	public String getNameSpace() {
-		return fNameSpace;
-	}
-
-	/**
-	 * Set the namespace for the dom attribute
-	 * 
-	 * @param string
-	 */
-	public void setNameSpace(String string) {
-		fNameSpace = string;
-	}
-
-	public VariableTranslatorFactory getVariableTranslatorFactory() {
-		if (isObjectMap())
-			return DefaultTranslatorFactory.INSTANCE;
-		return null;
-	}
-
-	public boolean isEnumFeature() {
-		return feature != null && ECORE_PACKAGE.getEEnum().isInstance(feature.getEType());
-	}
-
-	public boolean isUnsettable() {
-		return feature != null && feature.isUnsettable();
-	}
-
-	public boolean isDataType() {
-		return feature != null && feature.getEType() instanceof EDataType;
-	}
-
-	/**
-	 * @return
-	 */
-	public boolean isComment() {
-		return (fStyle & COMMENT_FEATURE) != 0;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorFilter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorFilter.java
deleted file mode 100644
index b12067d..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorFilter.java
+++ /dev/null
@@ -1,220 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-/*
- * Created on Sep 21, 2003
- *  
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.EObject;
-
-
-/*
- * Translator filters can be used to differentiate between Object and Attribute Translators without
- * breaking them out into seperate data structures. The Filter will rely on the underlying data
- * structure used to store the children of the given Translator.
- * 
- * getNextChild() will return null when no other translators of the given genre are available.
- * 
- * The processing hints which are created and then passed to getNext*Translator() store information
- * that needs to be persisted between calls. The createProcessingHints() will create a properly
- * initialized array. The constants NEXT_START_HINT_INDX and MODE_HINT_INDX provide pointers into
- * the array for the NEXT_START position and the proper mode to operate in
- * (STANDARD_TRANSLATORS_MODE or
- *  
- */
-public abstract class TranslatorFilter {
-
-	protected final Translator translator;
-	protected final int version;
-
-	public static final int NEXT_START_HINT_INDX = 0;
-	public static final int MODE_HINT_INDX = 1;
-
-	public static final int STANDARD_TRANSLATORS_MODE = 0;
-	public static final int VARIABLE_TRANSLATORS_MODE = 1;
-
-	/*
-	 * These TranslatorFilters are used in a stateless mode. Only their scanNextTranslator() methods
-	 * will be invoked
-	 */
-	private static final TranslatorFilter objectTranslatorFilter = new ObjectTranslatorFilter(null, -1);
-	private static final TranslatorFilter attributeTranslatorFilter = new AttributeTranslatorFilter(null, -1);
-
-
-	protected int mode = STANDARD_TRANSLATORS_MODE;
-	protected int index = -1;
-
-	protected Translator cachedPeekAheadTranslator = null;
-
-	public TranslatorFilter(Translator trans, int version) {
-		this.translator = trans;
-		this.version = version;
-	}
-
-	/**
-	 * Calling peek twice will advance the current child
-	 */
-	public Translator peekNextChild(EObject target) {
-		cachedPeekAheadTranslator = getNextChild(target);
-		return cachedPeekAheadTranslator;
-	}
-
-	/**
-	 * getNextChild() will return null when no other translators of the given genre are available.
-	 */
-	public Translator getNextChild(EObject target) {
-
-		Translator result = null;
-		if (cachedPeekAheadTranslator != null) {
-			result = cachedPeekAheadTranslator;
-			cachedPeekAheadTranslator = null;
-			return result;
-		}
-
-		int found = 0;
-		Translator children[] = null;
-		switch (mode) {
-			case STANDARD_TRANSLATORS_MODE :
-				children = this.translator.getChildren(target, this.version);
-
-				/* Look for the next Attribute Translator */
-				found = scanNextTranslator(children, this.index);
-
-				if (found >= 0) {
-					/*
-					 * If found, (1) update the result, (2) update the index so we can skip ahead on
-					 * the next invocation (3) escape the VARIABLE_TRANSLATORS processing
-					 */
-					result = children[found];
-					this.index = found;
-					break;
-				}
-				/*
-				 * Reset the index. DO NOT BREAK. Allow entry into VARIABLE_TRANSLATORS case
-				 */
-				this.index = -1;
-				/*
-				 * update the mode to VARIABLE_TRANSLATORS so we can skip to it directly next time
-				 */
-				this.mode = VARIABLE_TRANSLATORS_MODE;
-			case VARIABLE_TRANSLATORS_MODE :
-				children = this.translator.getVariableChildren(target, this.version);
-				found = scanNextTranslator(children, this.index);
-				if (found >= 0) {
-					/*
-					 * If found, (1) update the result, (2) update the index so we can skip ahead on
-					 * the next invocation
-					 */
-					result = children[found];
-					this.index = found;
-				}
-
-		}
-
-		return result;
-	}
-
-	public static final int[] createProcessingHints() {
-		return new int[]{-1, STANDARD_TRANSLATORS_MODE};
-	}
-
-	public static final Translator getNextAttributeTranslator(Translator translator, int startHint, int[] nextHint, EObject target, int version) {
-
-		return TranslatorFilter.getNextChild(translator, startHint, nextHint, target, version, attributeTranslatorFilter);
-	}
-
-	public static final Translator getNextObjectTranslator(Translator translator, int startHint, int[] nextHint, EObject target, int version) {
-
-		return TranslatorFilter.getNextChild(translator, startHint, nextHint, target, version, objectTranslatorFilter);
-	}
-
-	/**
-	 * getNextChild() takes hints on where to begin in the children array of the given Translator.
-	 * When it finds the translator, it will update the hints array with the start hint for the next
-	 * invocation(hints[0]) and when necessary it will use update the mode (hints[1]) to either
-	 * STANDARD_TRANSLATORS or VARIABLE_TRANSLATORS.
-	 * 
-	 * @param translator
-	 * @param startHint
-	 * @param hints
-	 *            a two-element array: hints[0] will be updated with the next startHint and hints[1]
-	 *            will be used to store the mode.
-	 * @param target
-	 * @param version
-	 * @param translatorFilter
-	 * @return
-	 */
-	public static final Translator getNextChild(Translator translator, int startHint, int[] hints, EObject target, int version, TranslatorFilter translatorFilter) {
-
-		Translator result = null;
-
-		int index = startHint;
-		Translator children[] = null;
-
-		switch (hints[MODE_HINT_INDX]) {
-			case STANDARD_TRANSLATORS_MODE :
-				children = translator.getChildren(target, version);
-				if (children != null && startHint < children.length) {
-
-					/* Look for the next Attribute Translator */
-					index = translatorFilter.scanNextTranslator(children, index);
-
-					if (index >= 0) {
-						/*
-						 * If found, (1) update the result, (2) update the index so we can skip
-						 * ahead on the next invocation (3) escape the VARIABLE_TRANSLATORS
-						 * processing
-						 */
-						result = children[index];
-						break;
-					}
-					/*
-					 * DO NOT BREAK we will default to VARIABLE TRANSLATORS MODE so we must reset
-					 * the startHint appropriately
-					 */
-					startHint = -1;
-				}
-
-			case VARIABLE_TRANSLATORS_MODE :
-				hints[MODE_HINT_INDX] = VARIABLE_TRANSLATORS_MODE;
-				/*
-				 * Reset the index.
-				 */
-				index = startHint;
-				children = translator.getVariableChildren(target, version);
-				if (children != null && children.length > 0 && startHint < children.length) {
-					index = translatorFilter.scanNextTranslator(children, index);
-					result = (index >= 0) ? children[index] : null;
-				}
-		}
-
-		hints[NEXT_START_HINT_INDX] = (result == null && children != null) ? children.length : index;
-
-		return result;
-	}
-
-
-	public abstract int scanNextTranslator(Translator[] children, int start);
-
-	/**
-	 * @return
-	 */
-	public int getIndex() {
-		return index;
-	}
-
-	/**
-	 * @return
-	 */
-	public int getMode() {
-		return mode;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorPath.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorPath.java
deleted file mode 100644
index a2d843e..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorPath.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-
-public class TranslatorPath {
-	protected Translator[] mapInfoPath;
-
-	/**
-	 * Construct with an array of Translator that specifies the path to follow from an object to
-	 * another object
-	 */
-	public TranslatorPath(Translator[] path) {
-		mapInfoPath = path;
-	}
-
-	public List findObjects(EObject startObject) {
-		Object cur = startObject;
-		for (int i = 0; i < mapInfoPath.length; i++) {
-			Translator curMap = mapInfoPath[i];
-			if (cur instanceof EObject) {
-				EStructuralFeature curAttr = curMap.getFeature();
-				if (curAttr == Translator.CONTAINER_FEATURE) {
-					curAttr = ((EObject) cur).eContainmentFeature();
-					cur = ((EObject) cur).eContainer();
-				} else if (curAttr == Translator.ROOT_FEATURE) {
-					cur = ((TranslatorResource) startObject.eResource()).getRootObject();
-				} else {
-					cur = ((EObject) cur).eGet(curAttr);
-				}
-				if (curMap.isMultiValued()) {
-					return (List) cur;
-				}
-			}
-		}
-		return null;
-	}
-
-	public Object findObject(EObject startObject, Object matchValue) {
-		List objects = findObjects(startObject);
-		if (objects == null)
-			return null;
-		return findObject(objects, getLastMap(), matchValue);
-	}
-
-	private Object findObject(List objectList, Translator map, Object matchValue) {
-		for (Iterator iter = objectList.iterator(); iter.hasNext();) {
-			EObject mofObject = (EObject) iter.next();
-			Object curMatchValue = mofObject.eGet(map.getFeature());
-			if (matchValue.equals(curMatchValue))
-				return mofObject;
-		}
-		return null;
-	}
-
-	public Translator getLastMap() {
-		return mapInfoPath[mapInfoPath.length - 1];
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString() {
-		StringBuffer sb = new StringBuffer();
-		String cn = getClass().getName();
-		int i = cn.lastIndexOf('.');
-		cn = cn.substring(++i, cn.length());
-		sb.append(cn);
-		sb.append('(');
-		sb.append(mapInfoPath[0]);
-		for (int j = 1; j < mapInfoPath.length; j++) {
-			sb.append('\n');
-			sb.append(mapInfoPath[j]);
-		}
-		sb.append(')');
-		return sb.toString();
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorResource.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorResource.java
deleted file mode 100644
index 32c9c47..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorResource.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.impl.EStructuralFeatureImpl;
-import org.xml.sax.EntityResolver;
-
-public interface TranslatorResource extends ReferencedResource {
-	/*
-	 * must make a subclass because the constructor for EStructuralFeature is protected
-	 */
-	static class DocTypeFeature extends EStructuralFeatureImpl {
-		protected DocTypeFeature() {
-			super();
-		}
-	}
-
-
-	EStructuralFeature DOC_TYPE_FEATURE = new DocTypeFeature();
-
-	/**
-	 * The public id of the XML document, if specified.
-	 */
-	String getPublicId();
-
-	/**
-	 * Return the first element in the EList.
-	 */
-	EObject getRootObject();
-
-	/**
-	 * The system id of the XML document, if specified.
-	 */
-	String getSystemId();
-
-	/**
-	 * Sets the public id and system id of the XML document.
-	 */
-	void setDoctypeValues(String publicId, String systemId);
-
-	/**
-	 * Sets the default public/system ids if necessary
-	 */
-	void setDefaults();
-
-	/**
-	 * Returns the name that will be in the document type header of the serialized xml file
-	 */
-	String getDoctype();
-
-	/**
-	 * Returns the XML version of this document
-	 */
-	String getXMLVersion();
-
-	Translator getRootTranslator();
-
-	/**
-	 * Entity resolver that can be used when using standard parsers to read the resource
-	 */
-	EntityResolver getEntityResolver();
-
-	boolean usesDTD();
-
-	public int getVersionID();
-
-	void setVersionID(int i);
-
-	Renderer getRenderer();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorResourceFactory.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorResourceFactory.java
deleted file mode 100644
index 20a450b..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorResourceFactory.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-
-public abstract class TranslatorResourceFactory extends ReferencedXMIFactoryImpl implements RendererFactory.Listener {
-
-	protected RendererFactory rendererFactory;
-	private boolean listeningForUpdates = false;
-
-	/**
-	 * Constructor for TranslatorResourceFactory.
-	 */
-	public TranslatorResourceFactory(RendererFactory aRendererFactory, boolean listeningForUpdates) {
-		super();
-		rendererFactory = aRendererFactory;
-		setListeningForUpdates(listeningForUpdates);
-	}
-
-	/**
-	 * Constructor for TranslatorResourceFactory.
-	 */
-	public TranslatorResourceFactory(RendererFactory aRendererFactory) {
-		this(aRendererFactory, true);
-	}
-
-	public void setListeningForUpdates(boolean shouldBeListeningForUpdates) {
-
-		if (this.listeningForUpdates ^ shouldBeListeningForUpdates) {
-			if (!shouldBeListeningForUpdates)
-				RendererFactory.NotificationEngine.removeListener(this);
-			else
-				RendererFactory.NotificationEngine.addListener(this);
-
-			this.listeningForUpdates = shouldBeListeningForUpdates;
-		}
-	}
-
-	public boolean isListeningForUpdates() {
-		return this.listeningForUpdates;
-	}
-
-	public Resource doCreateResource(URI uri) {
-		Renderer aRenderer = rendererFactory.createRenderer();
-		return createResource(uri, aRenderer);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.RendererFactory.Listener#updateRendererFactory(com.ibm.etools.emf2xml.RendererFactory)
-	 */
-	public void updateRendererFactory(RendererFactory newRendererFactory) {
-		//System.out.println("Updating renderer factory");
-		rendererFactory = newRendererFactory;
-	}
-
-	protected abstract TranslatorResource createResource(URI uri, Renderer aRenderer);
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorResourceImpl.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorResourceImpl.java
deleted file mode 100644
index 5d09434..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/TranslatorResourceImpl.java
+++ /dev/null
@@ -1,396 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.Collection;
-import java.util.Map;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.NotificationImpl;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.resource.impl.ResourceImpl;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.internal.emf.utilities.StringUtil;
-import org.xml.sax.EntityResolver;
-
-public abstract class TranslatorResourceImpl extends ReferencedXMIResourceImpl implements TranslatorResource, IRootObjectResource{
-	static final public EStructuralFeature ID_FEATURE = EcorePackage.eINSTANCE.getEClass_EIDAttribute();
-	protected static final String DEFAULT_ENCODING = "UTF-8"; //$NON-NLS-1$
-	protected static final String DEFAULT_VERSION = "1.0"; //$NON-NLS-1$
-	protected Renderer renderer;
-	/**
-	 * The public Id to use at the head of the document.
-	 */
-	protected String publicId;
-	/**
-	 * The system Id to use at the head of the document.
-	 */
-	protected String systemId;
-	protected String xmlVersion;
-	// Default the resources to J2EE 1.4
-	protected int versionID;
-
-	/**
-	 * @deprecated since 4/29/2003 - used for compatibility Subclasses should
-	 *             be using the Renderers and translator framework
-	 */
-	public TranslatorResourceImpl() {
-		super();
-	}
-
-	/**
-	 * @deprecated since 4/29/2003 - used for compatibility Subclasses should
-	 *             be using the Renderers and translator framework
-	 */
-	public TranslatorResourceImpl(URI uri) {
-		super(uri);
-	}
-
-	public TranslatorResourceImpl(URI uri, Renderer aRenderer) {
-		super(uri);
-		setRenderer(aRenderer);
-		versionID = getDefaultVersionID();
-	}
-
-	public TranslatorResourceImpl(Renderer aRenderer) {
-		super();
-		setRenderer(aRenderer);
-	}
-
-	public java.lang.String getEncoding() {
-		if (super.getEncoding() == null)
-			setEncoding(DEFAULT_ENCODING);
-		return super.getEncoding();
-	}
-
-	public String getPublicId() {
-		return publicId;
-	}
-	
-	/**
-	 * Return the first element in the EList.
-	 */
-	public EObject getRootObject() {
-		if (contents == null || contents.isEmpty())
-			return null;
-		return (EObject) getContents().get(0);
-	}
-
-	public String getSystemId() {
-		return systemId;
-	}
-
-	public void setDoctypeValues(String aPublicId, String aSystemId) {
-		boolean changed = !(StringUtil.stringsEqual(publicId, aPublicId) && StringUtil.stringsEqual(systemId, aSystemId));
-		publicId = aPublicId;
-		systemId = aSystemId;
-		if (changed) {
-			eNotify(new NotificationImpl(Notification.SET, null, null) {
-				public Object getFeature() {
-					return DOC_TYPE_FEATURE;
-				}
-
-				public Object getNotifier() {
-					return TranslatorResourceImpl.this;
-				}
-			});
-		}
-	}
-
-	/**
-	 * Returns the xmlVersion.
-	 * 
-	 * @return String
-	 */
-	public String getXMLVersion() {
-		if (xmlVersion == null)
-			xmlVersion = DEFAULT_VERSION;
-		return xmlVersion;
-	}
-
-	/**
-	 * Sets the xmlVersion.
-	 * 
-	 * @param xmlVersion
-	 *            The xmlVersion to set
-	 */
-	public void setXMLVersion(String xmlVersion) {
-		this.xmlVersion = xmlVersion;
-	}
-
-	protected void basicDoLoad(InputStream inputStream, Map options) throws IOException {
-		// long start = System.currentTimeMillis();
-		boolean isTrackingMods = isTrackingModification();
-		try {
-			if (isTrackingMods)
-				setTrackingModification(false);
-			renderer.doLoad(inputStream, options);
-		}
-		finally {
-			if (isTrackingMods)
-				setTrackingModification(true);
-		}
-		// long end = System.currentTimeMillis();
-		// recordTime("Load", start, end);
-	}
-
-	public void save(Map options) throws IOException {
-        if (renderer.useStreamsForIO()) {
-            super.save(options);
-        } else {
-            notifyAboutToSave();
-            try {
-                doSave((OutputStream)null, options);
-                notifySaved();
-            } catch (Exception e) {
-                 notifySaveFailed();
-                if (e instanceof IOException)
-                    throw (IOException) e;
-                else
-                    Logger.getLogger().write(e);
-            }
-            notifySaved();
-        }
-    }
-
-
-	/**
-	 * @see com.ibm.etools.xmi.helpers.CompatibilityXMIResourceImpl#doSave(OutputStream,
-	 *      Map)
-	 */
-	public void doSave(OutputStream outputStream, Map options) throws IOException {
-		// long start = System.currentTimeMillis();
-		renderer.doSave(outputStream, options);
-		setModified(false);
-		// long end = System.currentTimeMillis();
-		// recordTime("Save", start, end);
-	}
-
-	// private void recordTime(String type, long start, long end) {
-	// System.out.println(renderer.getClass().getName() + "\t" + type + "\t" +
-	// (end - start) +
-	// "\t\t\tms" + "\t" + (( this.getVersionID()) / 10.0) + "\t" + this);
-	// //$NON-NLS-1$
-	// //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
-	// }
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl#doUnload()
-	 */
-	protected void doUnload() {
-		renderer.preUnload();
-		super.doUnload();
-	}
-
-	public String toString() {
-		return getClass().getName() + getURI().toString();
-	}
-
-	/**
-	 * Returns the renderer.
-	 * 
-	 * @return Renderer
-	 */
-	public Renderer getRenderer() {
-		return renderer;
-	}
-
-	/**
-	 * Sets the renderer.
-	 * 
-	 * @param renderer
-	 *            The renderer to set
-	 */
-	public void setRenderer(Renderer renderer) {
-		this.renderer = renderer;
-		if (renderer.getResource() != this)
-			renderer.setResource(this);
-	}
-
-	/**
-	 * For compatibility of old subtype resources, returns the super
-	 * implementation
-	 * 
-	 * @return
-	 */
-	protected EList primGetContents() {
-		return super.getContents();
-	}
-
-	public EList getContents() {
-		waitForResourceToLoadIfNecessary();
-		if (contents == null) {
-			initializeContents();
-		}
-		return contents;
-	}
-
-	protected void initializeContents() {
-		contents = new ResourceImpl.ContentsEList() {
-			public boolean add(Object object) {
-				renderer.prepareToAddContents();
-				return super.add(object);
-			}
-
-			public boolean addAll(Collection collection) {
-				renderer.prepareToAddContents();
-				return super.addAll(collection);
-			}
-		};
-	}
-
-	public void setDefaults() {
-		if (systemId != null && publicId != null)
-			return;
-		String pubId = publicId == null ? getDefaultPublicId() : publicId;
-		String sysId = systemId == null ? getDefaultSystemId() : systemId;
-		setDoctypeValues(pubId, sysId);
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl#init()
-	 */
-	protected void init() {
-		super.init();
-		setEncoding(DEFAULT_ENCODING);
-	}
-
-	/**
-	 * Returns null by default; subclasses can override
-	 * 
-	 * @see com.ibm.etools.emf2xml.TranslatorResource#createEntityResolver()
-	 */
-	public EntityResolver getEntityResolver() {
-		return null;
-	}
-
-	protected abstract String getDefaultPublicId();
-
-	protected abstract String getDefaultSystemId();
-
-	protected abstract int getDefaultVersionID();
-
-	/**
-	 * @return
-	 */
-	public int getVersionID() {
-		return versionID;
-	}
-
-	/**
-	 * @param i
-	 */
-	public void setVersionID(int i) {
-		versionID = i;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.TranslatorResource#usesDTD()
-	 */
-	public boolean usesDTD() {
-		return getPublicId() != null && getSystemId() != null;
-	}
-
-	/**
-	 * Overridden to notify when the ID gets set; need this to push it into
-	 * the resource
-	 * 
-	 * @see org.eclipse.emf.ecore.xmi.XMLResource#setID(EObject, String)
-	 */
-	public void setID(EObject eObject, String id) {
-		String oldId = getID(eObject);
-		super.setID(eObject, id);
-		eObject.eNotify(new ENotificationImpl((InternalEObject) eObject, Notification.SET, ID_FEATURE, oldId, id));
-	}
-
-	/**
-	 * This method indicates whether or not the extent associated with the
-	 * resource has been modified since the last time it was loaded or saved.
-	 * 
-	 * @return boolean
-	 */
-	public boolean isModified() {
-		return super.isModified() || renderer.isModified();
-	}
-
-	/*
-	 * Overriden to give the renderer a hook
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.ReferencedResource#accessForWrite()
-	 */
-	public void accessForWrite() {
-		renderer.accessForWrite();
-		super.accessForWrite();
-	}
-
-	/*
-	 * Overriden to give the renderer a hook
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.ReferencedResource#accessForRead()
-	 */
-	public void accessForRead() {
-		renderer.accessForRead();
-		super.accessForRead();
-	}
-
-	public void releaseFromRead() {
-		renderer.releaseFromRead();
-		super.releaseFromRead();
-	}
-
-	public void releaseFromWrite() {
-		renderer.releaseFromWrite();
-		super.releaseFromWrite();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf.workbench.ReferencedXMIResourceImpl#preDelete()
-	 */
-	public void preDelete() {
-		super.preDelete();
-		renderer.preDelete();
-	}
-
-	public boolean isShared() {
-		return super.isShared() || renderer.isShared();
-	}
-
-	public boolean isSharedForWrite() {
-		return super.isSharedForWrite() || renderer.isSharedForWrite();
-	}
-
-	public void load(Map options) throws IOException {
-		
-			if (isLoaded())
-				return;
-			
-			if (renderer.useStreamsForIO()) {
-				super.load(options);
-			}
-			else if (!isLoaded()) {
-				isShared();
-				loadExisting(options);
-			}
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/UnsupportedFeature.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/UnsupportedFeature.java
deleted file mode 100644
index 43c5864..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/UnsupportedFeature.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 13, 2004
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.impl.EAttributeImpl;
-
-/**
- * @author cbridgha
- * 
- * TODO To change the template for this generated type comment go to Window - Preferences - Java -
- * Code Generation - Code and Comments
- */
-public class UnsupportedFeature extends EAttributeImpl {
-	/**
-	 * This is used to capture features that are no longer supported
-	 */
-	public static boolean isUnsupported(EClass anEClass, String featureName) {
-
-		if (featureName.equals("isZeroParams") && anEClass.getName().equals("MethodElement")) //$NON-NLS-1$ //$NON-NLS-2$
-			return true;
-		return false;
-	}
-
-	public UnsupportedFeature() {
-		super();
-		// TODO Auto-generated constructor stub
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/VariableTranslatorFactory.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/VariableTranslatorFactory.java
deleted file mode 100644
index 1a4eef9..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/VariableTranslatorFactory.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Aug 20, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-
-
-/**
- * @author schacher
- */
-public interface VariableTranslatorFactory {
-	/** Returns whether a Translator should be created for the given DOM name */
-	boolean accepts(String domName);
-
-	/** Returns whether a Translator should be created for the given feature */
-	boolean accepts(Notification notif);
-
-	Translator create(Notification notif);
-
-	/** Creates a new Translator for the DOM name */
-	Translator create(String domName);
-
-	/** Creates variable translators for an EMF object to be rendered */
-	List create(Notifier target);
-
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/XMLEncoderDecoder.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/XMLEncoderDecoder.java
deleted file mode 100644
index d7b7f3b..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/resource/XMLEncoderDecoder.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on May 20, 2004
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.resource;
-
-/**
- * @author mdelder
- *  
- */
-public class XMLEncoderDecoder {
-
-	/**
-	 *  
-	 */
-	public XMLEncoderDecoder() {
-		super();
-	}
-
-	/**
-	 * Identifies the last printable character in the Unicode range that is supported by the
-	 * encoding used with this serializer. For 8-bit encodings this will be either 0x7E or 0xFF. For
-	 * 16-bit encodings this will be 0xFFFF. Characters that are not printable will be escaped using
-	 * character references.
-	 */
-	private int _lastPrintable = 0xFFFE;
-
-	protected static XMLEncoderDecoder _singleton;
-
-
-	/**
-	 * Returns a decoded version of the value.
-	 */
-	public String decode(String value) {
-		// NOT_IMPLEMENTED
-		return value;
-	}
-
-
-	/**
-	 * Escapes a string so it may be printed as text content or attribute value. Non printable
-	 * characters are escaped using character references. Where the format specifies a deault entity
-	 * reference, that reference is used (e.g. <tt>&amp;lt;</tt>).
-	 * 
-	 * @param source
-	 *            The string to escape
-	 */
-	public char[] encode(char[] value) {
-		boolean unmodified = true;
-		StringBuffer sbuf = new StringBuffer(value.length);
-		String charRef = null;
-		char ch;
-		for (int i = 0; i < value.length; ++i) {
-			ch = value[i];
-			// If there is a suitable entity reference for this
-			// character, print it. The list of available entity
-			// references is almost but not identical between
-			// XML and HTML.
-			charRef = getEntityRef(ch);
-			if (charRef != null) {
-				sbuf.append('&');
-				sbuf.append(charRef);
-				sbuf.append(';');
-				unmodified = false;
-			} else if ((ch >= ' ' && ch <= _lastPrintable && ch != 0xF7) || ch == '\n' || ch == '\r' || ch == '\t') {
-				// If the character is not printable, print as character
-				// reference.
-				// Non printables are below ASCII space but not tab or line
-				// terminator, ASCII delete, or above a certain Unicode
-				// threshold.
-				sbuf.append(ch);
-			} else {
-				sbuf.append("&#");//$NON-NLS-1$
-				sbuf.append(Integer.toString(ch));
-				sbuf.append(';');
-				unmodified = false;
-			}
-		}
-		if (unmodified)
-			return value;
-		char[] result = new char[sbuf.length()];
-		sbuf.getChars(0, sbuf.length(), result, 0);
-		return result;
-	}
-
-	/**
-	 * Escapes a string so it may be printed as text content or attribute value. Non printable
-	 * characters are escaped using character references. Where the format specifies a deault entity
-	 * reference, that reference is used (e.g. <tt>&amp;lt;</tt>).
-	 * 
-	 * @param source
-	 *            The string to escape
-	 */
-	public String encode(String value) {
-		StringBuffer sbuf = new StringBuffer(value.length());
-		String charRef = null;
-		char ch;
-		for (int i = 0; i < value.length(); ++i) {
-			ch = value.charAt(i);
-			// If there is a suitable entity reference for this
-			// character, print it. The list of available entity
-			// references is almost but not identical between
-			// XML and HTML.
-			charRef = getEntityRef(ch);
-			if (charRef != null) {
-				sbuf.append('&');
-				sbuf.append(charRef);
-				sbuf.append(';');
-			} else if ((ch >= ' ' && ch <= _lastPrintable && ch != 0xF7) || ch == '\n' || ch == '\r' || ch == '\t') {
-				// If the character is not printable, print as character
-				// reference.
-				// Non printables are below ASCII space but not tab or line
-				// terminator, ASCII delete, or above a certain Unicode
-				// threshold.
-				sbuf.append(ch);
-			} else {
-				sbuf.append("&#");//$NON-NLS-1$
-				sbuf.append(Integer.toString(ch));
-				sbuf.append(';');
-			}
-		}
-		return sbuf.toString();
-	}
-
-	public static String escape(String value) {
-		if (_singleton == null) {
-			_singleton = new XMLEncoderDecoder();
-		}
-		return _singleton.encode(value);
-	}
-
-	/**
-	 * Returns the suitable entity reference for this character value, or null if no such entity
-	 * exists. Calling this method with <tt>'&amp;'</tt> will return <tt>"&amp;amp;"</tt>.
-	 * 
-	 * @param ch
-	 *            Character value
-	 * @return Character entity name, or null
-	 */
-	protected String getEntityRef(char ch) {
-		// Encode special XML characters into the equivalent character
-		// references.
-		// These five are defined by default for all XML documents.
-		switch (ch) {
-			case '<' :
-				return "lt";//$NON-NLS-1$
-			case '>' :
-				return "gt";//$NON-NLS-1$
-			case '"' :
-				return "quot";//$NON-NLS-1$
-			case '\'' :
-				return "apos";//$NON-NLS-1$
-			case '&' :
-				return "amp";//$NON-NLS-1$
-		}
-		return null;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/AdapterFactoryDescriptor.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/AdapterFactoryDescriptor.java
deleted file mode 100644
index e6e559b..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/AdapterFactoryDescriptor.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-
-public interface AdapterFactoryDescriptor {
-
-	public AdapterFactory createAdapterFactory();
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/AdapterFactoryUtil.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/AdapterFactoryUtil.java
deleted file mode 100644
index 36d9173..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/AdapterFactoryUtil.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notifier;
-
-public class AdapterFactoryUtil {
-
-	/**
-	 * Constructor for AdapterFactoryUtil.
-	 */
-	public AdapterFactoryUtil() {
-		super();
-	}
-
-	public static void adaptNew(Notifier newObject, List factories) {
-		AdapterFactory fact;
-		for (int i = 0; i < factories.size(); i++) {
-			fact = (AdapterFactory) factories.get(i);
-			fact.adaptNew(newObject, null);
-		}
-	}
-
-	public static void createAdapterFactories(List descriptors, List factories) {
-		AdapterFactoryDescriptor desc;
-		AdapterFactory adapterFact;
-		for (int i = 0; i < descriptors.size(); i++) {
-			desc = (AdapterFactoryDescriptor) descriptors.get(i);
-			adapterFact = desc.createAdapterFactory();
-			if (adapterFact != null)
-				factories.add(adapterFact);
-		}
-		descriptors.clear();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ArrayUtil.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ArrayUtil.java
deleted file mode 100644
index 847b88d..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ArrayUtil.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-
-public class ArrayUtil {
-
-	public static Object[] concat(Object[] array1, Object[] array2) {
-		Class componentType = null;
-		if (array1.getClass().getComponentType() == array2.getClass().getComponentType())
-			componentType = array1.getClass().getComponentType();
-		else
-			componentType = Object.class;
-
-		return concat(array1, array2, componentType);
-	}
-
-	public static Object[] concat(Object[] array1, Object[] array2, Class componentType) {
-		Object[] result = (Object[]) java.lang.reflect.Array.newInstance(componentType, array1.length + array2.length);
-		System.arraycopy(array1, 0, result, 0, array1.length);
-		System.arraycopy(array2, 0, result, array1.length, array2.length);
-		return result;
-	}
-
-	public static Object[] concatAll(java.util.List arrays, Class componentType) {
-		int resultLength = 0;
-		for (int i = 0; i < arrays.size(); i++) {
-			resultLength += ((Object[]) arrays.get(i)).length;
-		}
-		Object[] result = (Object[]) java.lang.reflect.Array.newInstance(componentType, resultLength);
-		int pos = 0;
-		for (int i = 0; i < arrays.size(); i++) {
-			Object[] array = (Object[]) arrays.get(i);
-			System.arraycopy(array, 0, result, pos, array.length);
-			pos += array.length;
-		}
-		return result;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Assert.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Assert.java
deleted file mode 100644
index 3a44751..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Assert.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-
-
-/**
- * <code>Assert</code> is useful for for embedding runtime sanity checks in code. The predicate
- * methods all test a condition and throw some type of unchecked exception if the condition does not
- * hold.
- * <p>
- * Assertion failure exceptions, like most runtime exceptions, are thrown when something is
- * misbehaving. Assertion failures are invariably unspecified behavior; consequently, clients should
- * never rely on these being thrown (and certainly should not being catching them specifically).
- * </p>
- */
-// This class was, originally, copied directly from com.ibm.itp.common.
-// It was copied to our own package just to minimize minor dependencies
-// on other packages and internal APIs.
-public final class Assert {
-	/* This class is not intended to be instantiated. */
-
-	private Assert() {
-	}
-
-	/**
-	 * Asserts that an argument is legal. If the given boolean is not <code>true</code>, an
-	 * <code>IllegalArgumentException</code> is thrown.
-	 * 
-	 * @param expression
-	 *            the outcode of the check
-	 * @return <code>true</code> if the check passes (does not return if the check fails)
-	 * @exception IllegalArgumentException
-	 *                if the legality test failed
-	 */
-	public static boolean isLegal(boolean expression) {
-		return isLegal(expression, "");//$NON-NLS-1$
-	}
-
-	/**
-	 * Asserts that an argument is legal. If the given boolean is not <code>true</code>, an
-	 * <code>IllegalArgumentException</code> is thrown. The given message is included in that
-	 * exception, to aid debugging.
-	 * 
-	 * @param expression
-	 *            the outcode of the check
-	 * @param message
-	 *            the message to include in the exception
-	 * @return <code>true</code> if the check passes (does not return if the check fails)
-	 * @exception IllegalArgumentException
-	 *                if the legality test failed
-	 */
-	public static boolean isLegal(boolean expression, String message) {
-		if (!expression)
-			throw new IllegalArgumentException();
-		return expression;
-	}
-
-	/**
-	 * Asserts that the given object is not <code>null</code>. If this is not the case, some kind
-	 * of unchecked exception is thrown.
-	 * 
-	 * @param object
-	 *            the value to test
-	 * @exception IllegalArgumentException
-	 *                if the object is <code>null</code>
-	 */
-	public static void isNotNull(Object object) {
-		isNotNull(object, "");//$NON-NLS-1$
-	}
-
-	/**
-	 * Asserts that the given object is not <code>null</code>. If this is not the case, some kind
-	 * of unchecked exception is thrown. The given message is included in that exception, to aid
-	 * debugging.
-	 * 
-	 * @param object
-	 *            the value to test
-	 * @param message
-	 *            the message to include in the exception
-	 * @exception IllegalArgumentException
-	 *                if the object is <code>null</code>
-	 */
-	public static void isNotNull(Object object, String message) {
-		if (object == null) {
-			Logger.getLogger().logError("null_argument: " + message);//$NON-NLS-1$
-			throw new AssertionFailedException();
-		}
-	}
-
-	/**
-	 * Asserts that the given boolean is <code>true</code>. If this is not the case, some kind of
-	 * unchecked exception is thrown.
-	 * 
-	 * @param expression
-	 *            the outcode of the check
-	 * @return <code>true</code> if the check passes (does not return if the check fails)
-	 */
-	public static boolean isTrue(boolean expression) {
-		return isTrue(expression, "");//$NON-NLS-1$
-	}
-
-	/**
-	 * Asserts that the given boolean is <code>true</code>. If this is not the case, some kind of
-	 * unchecked exception is thrown. The given message is included in that exception, to aid
-	 * debugging.
-	 * 
-	 * @param expression
-	 *            the outcode of the check
-	 * @param message
-	 *            the message to include in the exception
-	 * @return <code>true</code> if the check passes (does not return if the check fails)
-	 */
-	public static boolean isTrue(boolean expression, String message) {
-		if (!expression) {
-			Logger.getLogger().logError("assertion failed: " + message);//$NON-NLS-1$
-			throw new AssertionFailedException();
-		}
-		return expression;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/AssertionFailedException.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/AssertionFailedException.java
deleted file mode 100644
index 044c60d..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/AssertionFailedException.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-/**
- * <code>AssertionFailedException</code> is a runtime exception thrown by some of the methods in
- * <code>Assert</code>.
- * <p>
- * This class is not declared public to prevent some misuses; programs that catch or otherwise
- * depend on assertion failures are susceptible to unexpected breakage when assertions in the code
- * are added or removed.
- * </p>
- */
-// This class was, originally, copied directly from com.ibm.itp.common.
-// It was copied to our own package just to minimize minor dependencies
-// on other packages and internal APIs.
-class AssertionFailedException extends RuntimeException {
-	/**
-	 * Constructs a new exception.
-	 */
-	public AssertionFailedException() {
-	}
-
-	/**
-	 * Constructs a new exception with the given message.
-	 */
-	public AssertionFailedException(String detail) {
-		super(detail);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Association.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Association.java
deleted file mode 100644
index 485d0c3..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Association.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-/**
- * Insert the type's description here. Creation date: (12/17/2000 7:38:15 PM)
- * 
- * @author: Administrator
- */
-public class Association {
-	protected Object key;
-	protected Object value;
-
-	/**
-	 * Association constructor comment.
-	 */
-	public Association(Object aKey, Object aValue) {
-		setKey(aKey);
-		setValue(aValue);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 7:38:48 PM)
-	 * 
-	 * @return java.lang.Object
-	 */
-	public java.lang.Object getKey() {
-		return key;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 7:38:48 PM)
-	 * 
-	 * @return java.lang.Object
-	 */
-	public java.lang.Object getValue() {
-		return value;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 7:38:48 PM)
-	 * 
-	 * @param newKey
-	 *            java.lang.Object
-	 */
-	public void setKey(java.lang.Object newKey) {
-		key = newKey;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 7:38:48 PM)
-	 * 
-	 * @param newValue
-	 *            java.lang.Object
-	 */
-	public void setValue(java.lang.Object newValue) {
-		value = newValue;
-	}
-}
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/CloneablePublic.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/CloneablePublic.java
deleted file mode 100644
index 2c39fbc..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/CloneablePublic.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Sep 22, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import org.eclipse.emf.common.notify.Adapter;
-
-/**
- * Interface that exposes the clone method, for objects that need to generically copy other
- * cloneable objects
- */
-public interface CloneablePublic extends Cloneable, Adapter.Internal {
-	Object clone();
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/CommandContext.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/CommandContext.java
deleted file mode 100644
index 4dcb883..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/CommandContext.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 27, 2004
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
-
-
-
-/**
- * @author John Mourra
- */
-public class CommandContext implements ICommandContext {
-
-	private IProgressMonitor monitor;
-	private Map properties;
-	private ResourceSet resourceSet;
-
-	/**
-	 * @param monitor
-	 */
-	public CommandContext(IProgressMonitor monitor) {
-		this(monitor, null, null);
-	}
-
-	/**
-	 * @param monitor
-	 * @param configurationProperties
-	 * @param resourceSet
-	 */
-	public CommandContext(IProgressMonitor monitor, Map configurationProperties, ResourceSet resourceSet) {
-		this.monitor = monitor;
-		this.properties = configurationProperties;
-		this.resourceSet = resourceSet;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.ws.rd.command.framework.ICommandContext#getProgressMonitor()
-	 */
-	public IProgressMonitor getProgressMonitor() {
-		if (monitor == null)
-			monitor = new NullProgressMonitor();
-		return monitor;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.ws.rd.command.framework.ICommandContext#getConfigurationProperties()
-	 */
-	public Map getConfigurationProperties() {
-		if (properties == null)
-			properties = new HashMap();
-		return properties;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.ws.rd.command.framework.ICommandContext#getResourceSet()
-	 */
-	public ResourceSet getResourceSet() {
-		if (resourceSet == null)
-			resourceSet = new ResourceSetImpl();
-		return resourceSet;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/CopyGroup.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/CopyGroup.java
deleted file mode 100644
index a23928c..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/CopyGroup.java
+++ /dev/null
@@ -1,320 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-
-/**
- * This class is used to copy a group of RefObjects and/or Resources. This group will ensure that
- * all non-composite relationships are deferred until all Resources and RefObjects are copied. This
- * allows you to make copies of a group of objects that may have non-composite relationships and
- * ensure that these relationships are pointing to the copied object if it is part of the group
- * (either directly or through a containment relationship). Creation date: (12/17/2000 1:21:17 PM)
- * 
- * @author: Administrator
- */
-public class CopyGroup {
-	protected String defaultIdSuffix;
-	protected ResourceSet copyContext;
-	protected List resources;
-	protected List refObjects;
-	protected List copiedResources;
-	protected List copiedRefObjects;
-	protected boolean preserveIds = false;
-
-	/**
-	 * CopyGroup constructor comment.
-	 */
-	public CopyGroup() {
-		super();
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:28:16 PM)
-	 * 
-	 * @param aRefObject
-	 *            org.eclipse.emf.ecore.EObject
-	 */
-	public boolean add(EObject aRefObject) {
-		return add(aRefObject, null);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:28:16 PM)
-	 * 
-	 * @param aRefObject
-	 *            org.eclipse.emf.ecore.EObject
-	 */
-	public boolean add(EObject aRefObject, String idSuffix) {
-		if (aRefObject != null && !containsRefObject(aRefObject)) {
-			getRefObjects().add(createAssociation(aRefObject, idSuffix));
-			return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:27:32 PM)
-	 * 
-	 * @param aResources
-	 *            org.eclipse.emf.ecore.resource.Resource
-	 */
-	public void add(Resource aResource) {
-		add(aResource, null);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:27:32 PM)
-	 * 
-	 * @param aResources
-	 *            org.eclipse.emf.ecore.resource.Resource
-	 */
-	public void add(Resource aResource, String newUri) {
-		if (aResource != null)
-			getResources().add(createAssociation(aResource, newUri));
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:28:16 PM)
-	 * 
-	 * @param aRefObject
-	 *            org.eclipse.emf.ecore.EObject
-	 */
-	public void addCopied(EObject aRefObject) {
-		if (aRefObject != null)
-			getCopiedRefObjects().add(aRefObject);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:27:32 PM)
-	 * 
-	 * @param aResources
-	 *            org.eclipse.emf.ecore.resource.Resource
-	 */
-	public void addCopied(Resource aResource) {
-		if (aResource != null) {
-			getCopiedResources().add(aResource);
-			if (getCopyContext() != null)
-				getCopyContext().getResources().add(aResource);
-		}
-	}
-
-	protected boolean contains(List associations, Object anObject) {
-		if (anObject == null)
-			return false;
-		int size = associations.size();
-		Association assoc;
-		for (int i = 0; i < size; i++) {
-			assoc = (Association) associations.get(i);
-			if (assoc.getKey() == anObject)
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Return true if
-	 * 
-	 * @aRefObject has been added to this group. Creation date: (12/17/2000 1:28:16 PM)
-	 * @param aRefObject
-	 *            org.eclipse.emf.ecore.EObject
-	 */
-	public boolean containsRefObject(EObject aRefObject) {
-		return contains(getRefObjects(), aRefObject);
-	}
-
-	/**
-	 * Return true if
-	 * 
-	 * @aResource has been added to this group. Creation date: (12/17/2000 1:28:16 PM)
-	 * @param aRefObject
-	 *            org.eclipse.emf.ecore.EObject
-	 */
-	public boolean containsResource(Resource aResource) {
-		return contains(getResources(), aResource);
-	}
-
-	private Association createAssociation(Object key, Object value) {
-		return new Association(key, value);
-	}
-
-	/**
-	 * Returns a List of RefObjects that were copied. Creation date: (12/17/2000 1:25:46 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	public java.util.List getCopiedRefObjects() {
-		if (copiedRefObjects == null)
-			copiedRefObjects = new ArrayList();
-		return copiedRefObjects;
-	}
-
-	/**
-	 * Returns a List of Resources that were copied. Creation date: (12/17/2000 1:25:46 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	public java.util.List getCopiedResources() {
-		if (copiedResources == null)
-			copiedResources = new ArrayList();
-		return copiedResources;
-	}
-
-	/**
-	 * The context to add all copied resources into. Creation date: (12/17/2000 8:09:45 PM)
-	 * 
-	 * @return org.eclipse.emf.ecore.resource.ResourceSet
-	 */
-	public org.eclipse.emf.ecore.resource.ResourceSet getCopyContext() {
-		return copyContext;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:44:43 PM)
-	 * 
-	 * @return java.lang.String
-	 */
-	public java.lang.String getDefaultIdSuffix() {
-		return defaultIdSuffix;
-	}
-
-	/**
-	 * Should the id be copied in the case where no suffix is specified? Defaults to false
-	 */
-	public boolean getPreserveIds() {
-		return preserveIds;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:25:46 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	public java.util.List getRefObjects() {
-		if (refObjects == null)
-			refObjects = new ArrayList();
-		return refObjects;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:25:46 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	public java.util.List getResources() {
-		if (resources == null)
-			resources = new ArrayList();
-		return resources;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:25:46 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	public java.util.List primGetRefObjects() {
-		return refObjects;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:25:46 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	public java.util.List primGetResources() {
-		return resources;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:28:16 PM)
-	 * 
-	 * @param aRefObject
-	 *            org.eclipse.emf.ecore.EObject
-	 * @return boolean
-	 */
-	public boolean remove(EObject aRefObject) {
-		if (aRefObject != null && primGetRefObjects() != null) {
-			Iterator it = primGetRefObjects().iterator();
-			Association association;
-			while (it.hasNext()) {
-				association = (Association) it.next();
-				if (association.getKey() == aRefObject)
-					return primGetRefObjects().remove(association);
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/17/2000 1:27:32 PM)
-	 * 
-	 * @param aResources
-	 *            org.eclipse.emf.ecore.resource.Resource
-	 * @return boolean
-	 */
-	public boolean remove(Resource aResource) {
-		if (aResource != null && primGetResources() != null) {
-			Iterator it = primGetResources().iterator();
-			Association association;
-			while (it.hasNext()) {
-				association = (Association) it.next();
-				if (association.getKey() == aResource)
-					return primGetResources().remove(association);
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Set the context to add all copied resources into. Creation date: (12/17/2000 8:09:45 PM)
-	 * 
-	 * @param newCopyContext
-	 *            org.eclipse.emf.ecore.resource.Context
-	 */
-	public void setCopyContext(org.eclipse.emf.ecore.resource.ResourceSet newCopyContext) {
-		copyContext = newCopyContext;
-	}
-
-	/**
-	 * If an ID suffix is not defined for a EObject that is to be copied, this value will be used.
-	 * Creation date: (12/17/2000 1:44:43 PM)
-	 * 
-	 * @param newDefaultIdSuffix
-	 *            java.lang.String
-	 */
-	public void setDefaultIdSuffix(java.lang.String newDefaultIdSuffix) {
-		defaultIdSuffix = newDefaultIdSuffix;
-	}
-
-	/**
-	 * Should the id be copied in the case where no suffix is specified?
-	 */
-	public void setPreserveIds(boolean value) {
-		preserveIds = value;
-	}
-
-	/**
-	 * Subclasses should override this method if they require additional processing after the group
-	 * has been copied.
-	 * 
-	 * @param copyUtil
-	 */
-	public void postCopy(EtoolsCopyUtility copyUtil) {
-	}
-
-}
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DOMLoadOptions.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DOMLoadOptions.java
deleted file mode 100644
index 05ae8a5..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DOMLoadOptions.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 12, 2003
- *
- * To change this generated comment go to 
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-/**
- * @author schacher
- * 
- * To change this generated comment go to Window>Preferences>Java>Code Generation>Code and Comments
- */
-public class DOMLoadOptions {
-	protected boolean validate;
-	protected boolean allowJavaEncodings;
-	protected boolean expandEntityRefererences;
-
-	/**
-	 * @return boolean
-	 */
-	public boolean isAllowJavaEncodings() {
-		return allowJavaEncodings;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean isExpandEntityRefererences() {
-		return expandEntityRefererences;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean isValidate() {
-		return validate;
-	}
-
-	/**
-	 * Sets the allowJavaEncodings.
-	 * 
-	 * @param allowJavaEncodings
-	 *            The allowJavaEncodings to set
-	 */
-	public void setAllowJavaEncodings(boolean allowJavaEncodings) {
-		this.allowJavaEncodings = allowJavaEncodings;
-	}
-
-	/**
-	 * Sets the expandEntityRefererences.
-	 * 
-	 * @param expandEntityRefererences
-	 *            The expandEntityRefererences to set
-	 */
-	public void setExpandEntityRefererences(boolean expandEntityRefererences) {
-		this.expandEntityRefererences = expandEntityRefererences;
-	}
-
-	/**
-	 * Sets the validate.
-	 * 
-	 * @param validate
-	 *            The validate to set
-	 */
-	public void setValidate(boolean validate) {
-		this.validate = validate;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DOMUtilities.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DOMUtilities.java
deleted file mode 100644
index 44f9669..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DOMUtilities.java
+++ /dev/null
@@ -1,703 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStreamWriter;
-import java.io.PrintWriter;
-import java.io.UnsupportedEncodingException;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.w3c.dom.Document;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.w3c.dom.Text;
-import org.xml.sax.EntityResolver;
-import org.xml.sax.ErrorHandler;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXParseException;
-
-/**
- * A class containing common dom manipulation and search functions.
- */
-public class DOMUtilities {
-	// Handy Constants
-	public static final String INDENT_STRING = "\t"; //$NON-NLS-1$
-	public static final String NEWLINE_STRING = System.getProperty("line.separator"); //$NON-NLS-1$
-	//Hack to be removed when the DOM apis change such that there is an easier
-	//way to fluff up and set the doctype
-	private static final String DUMMY_ENTITY_STRING = "dummy"; //$NON-NLS-1$
-	private static final String DUMMY_ENTITY_NODE_STRING = "<dummy/>"; //$NON-NLS-1$
-	private static DocumentBuilder defaultDocumentBuilder;
-	private static EntityResolver defaultEntityResolver;
-
-	/**
-	 * Returns an iterator that iterates over the sub nodes of a path.
-	 */
-	static public Iterator createPathIterator(String path) {
-		String tPath = path.startsWith("/") ? path.substring(1) : path; //$NON-NLS-1$
-		if (tPath.length() == 0)
-			tPath = null;
-		final String aPath = tPath;
-
-		return new Iterator() {
-			int prevIndex = 0;
-			int curIndex = 0;
-			String pathString = aPath;
-
-			public boolean hasNext() {
-				return pathString != null && prevIndex != -1;
-			}
-
-			public Object next() {
-				curIndex = pathString.indexOf('/', prevIndex);
-				String nodeString = null;
-				if (curIndex != -1)
-					nodeString = pathString.substring(prevIndex, curIndex++);
-				else
-					nodeString = pathString.substring(prevIndex);
-				prevIndex = curIndex;
-				return nodeString;
-			}
-
-			public void remove() {
-				throw new UnsupportedOperationException();
-			}
-		};
-	}
-
-	/**
-	 * Get the text for the passed in node.
-	 */
-	static public String getChildText(Node node) {
-		Text textNode = getChildTextNode(node);
-		if (textNode != null)
-			return textNode.getData();
-		return null;
-	}
-
-	/**
-	 * Get the text for the passed in node.
-	 */
-	static public Text getChildTextNode(Node node) {
-		Node textNode = node.getFirstChild();
-		while (textNode != null && DOMUtilities.isTextNode(textNode)) {
-			if (!isWhitespace(textNode))
-				return (Text) textNode;
-			textNode = textNode.getNextSibling();
-		}
-		return null;
-	}
-
-	/**
-	 * Return a string representing the current indentation of the node.
-	 */
-	static public String getIndentString(Node node) {
-		Revisit.toDo();
-		return ""; //$NON-NLS-1$
-	}
-
-	/**
-	 * Get the last non-text child of a node.
-	 * 
-	 * @return org.w3c.dom.Node The last non-text child node of
-	 * @node.
-	 * @param node
-	 *            org.w3c.dom.Node The node
-	 */
-	public static Node getLastNodeChild(Node node) {
-		if (node == null)
-			return null;
-		Node child = node.getLastChild();
-		while (child != null && child.getNodeType() == Node.TEXT_NODE)
-			child = child.getPreviousSibling();
-		return child;
-	}
-
-	/**
-	 * Get the next non-text sibling after a node.
-	 * 
-	 * @return org.w3c.dom.Node The first non-text sibling node after
-	 * @node. If there is no next non-text sibling, null is returned.
-	 * @param node
-	 *            org.w3c.dom.Node The node
-	 */
-	public static Node getNextNodeSibling(Node node) {
-		Node sibling = node.getNextSibling();
-		while (sibling != null && sibling.getNodeType() != Node.ELEMENT_NODE)
-			sibling = sibling.getNextSibling();
-		return sibling;
-	}
-
-	/**
-	 * Get the first child Node with the specified name
-	 */
-	static public Node getNodeChild(Node node, String nodeName) {
-		Node child = null;
-		NodeList children = node.getChildNodes();
-		for (int i = 0; i < children.getLength(); i++) {
-			Node n = children.item(i);
-			if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equals(nodeName)) {
-				child = n;
-				break;
-			}
-		}
-		return child;
-	}
-
-	/**
-	 * Traverses the path passed in <pathName>. The path is a string in the form
-	 * 'node1/node2/node3'. This method starts at node.
-	 */
-	static public Node getNodeChildForPath(Node parent, String pathName) {
-
-		Node curNode = parent;
-		Iterator i = DOMUtilities.createPathIterator(pathName);
-		while (i.hasNext()) {
-			String child = (String) i.next();
-			curNode = DOMUtilities.getNodeChild(curNode, child);
-			if (curNode == null)
-				return null;
-		}
-		return curNode;
-	}
-
-	/**
-	 * Get the Node children with the specified names
-	 */
-	static public List getNodeChildren(Node node, String[] nodeNames) {
-		NodeList childNodes = node.getChildNodes();
-		ArrayList results = new ArrayList();
-
-		for (int i = 0; i < childNodes.getLength(); i++) {
-			Node n = childNodes.item(i);
-			if (n.getNodeType() == Node.ELEMENT_NODE) {
-				boolean found = false;
-				for (int j = 0; j < nodeNames.length; j++) {
-					if (nodeNames[j].equals(n.getNodeName())) {
-						found = true;
-						break;
-					}
-				}
-				if (found)
-					results.add(n);
-			}
-		}
-		return results;
-	}
-
-	/**
-	 * Get the Node children with the specified name
-	 */
-	static public List getNodeChildren(Node node, String nodeName) {
-		NodeList childNodes = node.getChildNodes();
-		ArrayList results = new ArrayList();
-
-		for (int i = 0; i < childNodes.getLength(); i++) {
-			Node n = childNodes.item(i);
-			if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equals(nodeName))
-				results.add(n);
-		}
-		return results;
-	}
-
-	/**
-	 * Get the first non-text sibling before a node.
-	 * 
-	 * @return org.w3c.dom.Node The first non-text sibling node before
-	 * @node. If there is no previous non-text sibling, null is returned.
-	 * @param node
-	 *            org.w3c.dom.Node The node
-	 */
-	public static Node getPreviousNodeSibling(Node node) {
-		if (node == null)
-			return null;
-		Node sibling = node.getPreviousSibling();
-		while (sibling != null && DOMUtilities.isTextNode(sibling))
-			sibling = sibling.getPreviousSibling();
-		return sibling;
-	}
-
-	/**
-	 * Get the first text node before a node.
-	 * 
-	 * @return org.w3c.dom.Node The first text node before
-	 * @node. Null if no such node exist.
-	 * @param node
-	 *            org.w3c.dom.Node The node
-	 */
-	public static Text getPreviousText(Node node) {
-		Text sibling = getPreviousTextSibling(node);
-
-		if (sibling == null && node.getParentNode() != null)
-			sibling = getPreviousText(node.getParentNode());
-
-		return sibling;
-	}
-
-	/**
-	 * Get the first text sibling before a node.
-	 * 
-	 * @return org.w3c.dom.Node The first text sibling node before
-	 * @node. If there is no previous text sibling, null is returned.
-	 * @param node
-	 *            org.w3c.dom.Node The node
-	 */
-	public static Text getPreviousTextSibling(Node node) {
-		Assert.isNotNull(node);
-
-		Node sibling = node.getPreviousSibling();
-		Node lastText = null;
-		while (sibling != null && sibling.getNodeType() == Node.TEXT_NODE) {
-			lastText = sibling;
-			sibling = sibling.getPreviousSibling();
-		}
-		return (Text) lastText;
-	}
-
-	/**
-	 * Get the first text sibling before a node.
-	 * 
-	 * @return org.w3c.dom.Node The first text sibling node before
-	 * @node. If there is no previous text sibling, null is returned.
-	 * @param node
-	 *            org.w3c.dom.Node The node
-	 */
-	public static String getTrailingWhitespace(Text node) {
-		Assert.isNotNull(node);
-
-		String text = node.getData();
-		if (text.length() == 0)
-			return ""; //$NON-NLS-1$
-
-		int i = text.length() - 1;
-		for (; i >= 0; i--) {
-			if (!Character.isWhitespace(text.charAt(i))) {
-				break;
-			}
-		}
-
-		return text.substring(++i);
-	}
-
-	/**
-	 * Inserts <newNode>into <parent>after <refNode>. If <refNode>is null then the node is inserted
-	 * to the beginning of the parent's child nodes.
-	 * 
-	 * @param parent
-	 *            org.w3c.dom.Node
-	 * @param newNode
-	 *            org.w3c.dom.Node
-	 * @param refNode
-	 *            org.w3c.dom.Node
-	 */
-	public static void insertAfterNode(Node parent, Node newNode, Node refNode) {
-		Node insertBeforeNode = null;
-		if (refNode != null) {
-			insertBeforeNode = refNode.getNextSibling();
-		}
-		if (refNode == null)
-			insertBeforeNode(parent, newNode, parent.getFirstChild());
-		else
-			insertBeforeNode(parent, newNode, insertBeforeNode);
-	}
-
-	/**
-	 * Insert a <newNode>into <parent>before <refNode>. This utility method is used to ensure that
-	 * the insertion does not result in two adjacent text nodes. The DOM model does not handle
-	 * adjacent text nodes. They must be joined together.
-	 * 
-	 * @param newNode
-	 *            org.w3c.dom.Node
-	 * @param newNode
-	 *            org.w3c.dom.Node
-	 * @param refNode
-	 *            org.w3c.dom.Node
-	 */
-	static public void insertBeforeNode(Node parent, Node newNode, Node refNode) {
-		if (newNode.getNodeType() == Node.TEXT_NODE) {
-			Text textNewNode = (Text) newNode;
-
-			// If the insert before node is text, join it with the new node.
-			if (refNode != null && refNode.getNodeType() == Node.TEXT_NODE) {
-				Text textRefNode = (Text) refNode;
-				textRefNode.setData(textNewNode.getData() + textRefNode.getData());
-				return;
-			}
-			// If the node we are inserting after is text,
-			// join it with the new node.
-			Node insertAfterNode = (refNode == null) ? parent.getLastChild() : refNode.getPreviousSibling();
-			if (insertAfterNode != null && insertAfterNode.getNodeType() == Node.TEXT_NODE) {
-				Text textInsertAfterNode = (Text) insertAfterNode;
-				textInsertAfterNode.setData(textInsertAfterNode.getData() + textNewNode.getData());
-				return;
-			}
-		}
-		// There is no text node to join to, simple insert the node.
-		parent.insertBefore(newNode, refNode);
-	}
-
-	/**
-	 * Insert a <newNode>into <parent>before <refNode>. This method will also insert the node before
-	 * any whitespace nodes that appear in the tree before <refNode>. This method will also ensure
-	 * that the insertion does not result in two adjacent text nodes. The DOM model does not handle
-	 * adjacent text nodes. They must be joined together.
-	 * 
-	 * @param newNode
-	 *            org.w3c.dom.Node
-	 * @param newNode
-	 *            org.w3c.dom.Node
-	 * @param refNode
-	 *            org.w3c.dom.Node
-	 */
-	static public void insertBeforeNodeAndWhitespace(Node parent, Node newNode, Node refNode) {
-		Node curNode = (refNode == null) ? parent.getLastChild() : refNode.getPreviousSibling();
-		Node lastNode = refNode;
-
-		while (curNode != null && (DOMUtilities.isWhitespace(curNode) || DOMUtilities.isComment(curNode))) {
-			lastNode = curNode;
-			curNode = curNode.getPreviousSibling();
-		}
-
-		insertBeforeNode(parent, newNode, lastNode);
-	}
-
-	/**
-	 * Return whether the node is a text node.
-	 * 
-	 * @return boolean Answer true if the node is a text node, false otherwise.
-	 * @param node
-	 *            org.w3c.dom.Node The node to check
-	 */
-	static public boolean isTextNode(Node node) {
-		Assert.isNotNull(node);
-		return (node.getNodeType() == Node.TEXT_NODE) || (node.getNodeType() == Node.CDATA_SECTION_NODE);
-	}
-
-	/**
-	 * Return whether the node is entirely comment or not.
-	 * 
-	 * @return boolean Answer true if the node is whitespace, false otherwise.
-	 * @param node
-	 *            org.w3c.dom.Node The node to check
-	 */
-	static public boolean isComment(Node node) {
-		Assert.isNotNull(node);
-
-		return node.getNodeType() == Node.COMMENT_NODE;
-	}
-
-	/**
-	 * Return whether the node is entirely whitepace or not.
-	 * 
-	 * @return boolean Answer true if the node is whitespace, false otherwise.
-	 * @param node
-	 *            org.w3c.dom.Node The node to check
-	 */
-	static public boolean isWhitespace(Node node) {
-		Assert.isNotNull(node);
-
-		if (node.getNodeType() != Node.TEXT_NODE)
-			return false;
-
-		Text textNode = (Text) node;
-		String text = textNode.getData();
-		if (text == null)
-			return false;
-
-		for (int i = 0; i < text.length(); i++) {
-			if (!Character.isWhitespace(text.charAt(i))) {
-				return false;
-			}
-		}
-		return true;
-	}
-
-	/**
-	 * Remove all the children of <node>
-	 */
-	static public void removeAllChildren(Node node) {
-		NodeList list = node.getChildNodes();
-		for (int i = 0; i < list.getLength(); i++) {
-			node.removeChild(list.item(i));
-		}
-	}
-
-	// traverses the DOM starting at the specified node and returns a list
-	// of nodes matching the search string
-
-	static public ArrayList getAllNodes(Node node, String nodeName) {
-		ArrayList nodeList = new ArrayList();
-
-		String[] nodeNames = {nodeName};
-		findAllNodes(node, nodeNames, nodeList);
-
-		return nodeList;
-	}
-
-	// traverses the DOM starting at the specified node and returns a list
-	// of nodes matching the search strings
-
-	static public ArrayList getAllNodes(Node node, String[] nodeNamesArray) {
-		ArrayList nodeList = new ArrayList();
-		findAllNodes(node, nodeNamesArray, nodeList);
-
-		return nodeList;
-	}
-
-	// recursive helper for getAllNodes
-	static private void findAllNodes(Node node, String[] nodeNames, ArrayList results) {
-
-		NodeList nodes = node.getChildNodes();
-		if (nodes != null) {
-			for (int i = 0; i < nodes.getLength(); i++) {
-				for (int j = 0; j < nodeNames.length; j++) {
-					if (nodes.item(i).getNodeName().equals(nodeNames[j])) {
-						results.add(nodes.item(i));
-					}
-				}
-				findAllNodes(nodes.item(i), nodeNames, results);
-			}
-		}
-	}
-
-	/**
-	 * Returns the system defined JAXP document builder
-	 */
-	static public DocumentBuilder newDefaultDocumentBuilder(DOMLoadOptions options) throws ParserConfigurationException {
-		DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
-		dbf.setValidating(options.isValidate());
-		dbf.setNamespaceAware(options.isValidate());
-		/*
-		 * Causes errors in IBM JDK try { dbf.setAttribute(Renderer.JAXP_SCHEMA_LANGUAGE,
-		 * Renwderer.W3C_XML_SCHEMA); } catch (IllegalArgumentException x) { }
-		 */
-		try {
-			dbf.setAttribute("http://apache.org/xml/features/allow-java-encodings", new Boolean(options.isAllowJavaEncodings())); //$NON-NLS-1$	        
-		} catch (IllegalArgumentException ignore) {
-			Logger.getLogger().log("Warning: Parser does not support \"http://apache.org/xml/features/allow-java-encodings\"."); //$NON-NLS-1$
-		}
-		try {
-			dbf.setAttribute("http://apache.org/xml/features/validation/schema", new Boolean(options.isValidate())); //$NON-NLS-1$
-		} catch (IllegalArgumentException ignore) {
-			dbf.setValidating(false);
-			Logger.getLogger().log("Warning: Parser does not support \"http://apache.org/xml/features/validation/schema\". Validation will be disabled."); //$NON-NLS-1$
-		}
-		dbf.setExpandEntityReferences(options.isExpandEntityRefererences());
-		DocumentBuilder result = dbf.newDocumentBuilder();
-		result.setErrorHandler(new ErrorHandler() {
-			/*
-			 * (non-Javadoc)
-			 * 
-			 * @see org.xml.sax.ErrorHandler#error(org.xml.sax.SAXParseException)
-			 */
-			public void error(SAXParseException arg0) throws SAXException {
-				throw arg0;
-			}
-
-			/*
-			 * (non-Javadoc)
-			 * 
-			 * @see org.xml.sax.ErrorHandler#fatalError(org.xml.sax.SAXParseException)
-			 */
-			public void fatalError(SAXParseException arg0) throws SAXException {
-				throw arg0;
-			}
-
-			public void warning(SAXParseException arg0) throws SAXException {
-				Logger.getLogger().logWarning(arg0);
-			}
-
-		});
-		return result;
-	}
-
-	/**
-	 * Creates a stub document, where the DocumentType is defined by the parameters.
-	 */
-	static public Document createNewDocument(String doctype, String publicId, String systemId) throws ParserConfigurationException, SAXException, IOException {
-		DocumentBuilder builder = getDefaultDocumentBuilder();
-		InputStream in = createHeaderInputStream(doctype, publicId, systemId, true);
-		Document result = builder.parse(in);
-		removeDummyEntity(result);
-		removeExtraneousComments(result);
-		return result;
-	}
-
-	public static Document loadDocument(InputStream in, DOMLoadOptions options, EntityResolver resolver) throws ParserConfigurationException, SAXException, IOException {
-		DocumentBuilder builder = DOMUtilities.newDefaultDocumentBuilder(options);
-		builder.setEntityResolver(resolver);
-		Document result = builder.parse(in);
-		removeExtraneousComments(result);
-		return result;
-	}
-
-	/**
-	 * At the time of this writing, the DOM Level 2 APIs are not advanced enough for setting the
-	 * document type; so the only parser independent way of accomplishing this is by creating a
-	 * stream and parsing it.
-	 */
-	public static InputStream createHeaderInputStream(String doctype, String publicId, String systemId) {
-		return createHeaderInputStream(doctype, publicId, systemId, false);
-	}
-
-
-	
-	private static InputStream createHeaderInputStream(String doctype, String publicId, String systemId, boolean includeDummy) {
-        ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
-
-		// The prior code (which is still in the catch block), uses
-		// the system default encoding [System.getProperty("file.encoding")];
-		// on Z/OS this is Cp1047. The combination of "UTF-8" in the header
-		// and "Cp1047" in the writer create an unusable input stream.
-
-		PrintWriter writer;
-
-		try {
-			OutputStreamWriter outputWriter = new OutputStreamWriter(outputStream, "UTF-8"); //$NON-NLS-1$
-			// throws UnsupportedEncodingException
-			writer = new PrintWriter(outputWriter);
-		} catch (UnsupportedEncodingException e) {
-			// Should never get here (earlier code)
-			writer = new PrintWriter(outputStream); 
-		}
-
-		writeHeader(writer, doctype, publicId, systemId);
-		if (includeDummy)
-			addDummyEntity(writer);
-		writer.flush();
-		writer.close();
-
-		byte[] bytes = outputStream.toByteArray();
-		return new ByteArrayInputStream(bytes);
-	}
-
-
-	private static void writeHeader(PrintWriter writer, String doctype, String publicId, String systemId) {
-		writer.write("<?xml version=\""); //$NON-NLS-1$
-		writer.write("1.0"); //$NON-NLS-1$
-		writer.write("\" encoding=\""); //$NON-NLS-1$
-		writer.write("UTF-8"); //$NON-NLS-1$
-		writer.write("\"?>"); //$NON-NLS-1$
-		writer.println();
-
-		if (doctype != null) {
-			writer.write("<!DOCTYPE "); //$NON-NLS-1$
-			writer.write(doctype);
-			writer.write(" PUBLIC \""); //$NON-NLS-1$
-			writer.write(publicId);
-			writer.write("\" \""); //$NON-NLS-1$
-			writer.write(systemId);
-			writer.write("\">"); //$NON-NLS-1$
-			writer.println();
-		}
-	}
-
-	private static void addDummyEntity(PrintWriter writer) {
-		Revisit.revisit();
-		writer.println(DUMMY_ENTITY_NODE_STRING);
-		//Major hack because we can not parse an empty document
-	}
-
-	private static void removeDummyEntity(Document doc) {
-		doc.removeChild(getNodeChild(doc, DUMMY_ENTITY_STRING));
-	}
-
-	private static void removeExtraneousComments(Document doc) {
-		//another major hack because of a bug in XML4J 4.0.7 that added all the
-		//comments from the dtd to the document. Can be removed after we move up
-		//Xerces levels
-		Node aNode = doc.getFirstChild();
-		while (aNode != null) {
-			Node nextNode = aNode.getNextSibling();
-			if (aNode.getNodeType() == Node.COMMENT_NODE)
-				doc.removeChild(aNode);
-			aNode = nextNode;
-		}
-	}
-
-	/**
-	 * For performance, cache a static instance of the JAXP registered document builder. Validation
-	 * is disabled for this instance. If you need validation, use
-	 * {@link #newDefaultDocumentBuilder(boolean, boolean, boolean)}
-	 * 
-	 * @return DocumentBuilder
-	 * @throws ParserConfigurationException
-	 *             if JAXP is not configured correctly
-	 */
-	public static DocumentBuilder getDefaultDocumentBuilder() throws ParserConfigurationException {
-		if (defaultDocumentBuilder == null) {
-			DOMLoadOptions opts = new DOMLoadOptions();
-			opts.setAllowJavaEncodings(true);
-			opts.setExpandEntityRefererences(true);
-			opts.setValidate(false);
-			defaultDocumentBuilder = newDefaultDocumentBuilder(opts);
-			defaultDocumentBuilder.setEntityResolver(defaultEntityResolver);
-			defaultDocumentBuilder.setErrorHandler(new ErrorHandler() {
-				/*
-				 * (non-Javadoc)
-				 * 
-				 * @see org.xml.sax.ErrorHandler#error(org.xml.sax.SAXParseException)
-				 */
-				public void error(SAXParseException exception) throws SAXException {
-
-				}
-
-				/*
-				 * (non-Javadoc)
-				 * 
-				 * @see org.xml.sax.ErrorHandler#fatalError(org.xml.sax.SAXParseException)
-				 */
-				public void fatalError(SAXParseException exception) throws SAXException {
-
-				}
-
-				/*
-				 * (non-Javadoc)
-				 * 
-				 * @see org.xml.sax.ErrorHandler#warning(org.xml.sax.SAXParseException)
-				 */
-				public void warning(SAXParseException exception) throws SAXException {
-
-				}
-
-			});
-		}
-
-		return defaultDocumentBuilder;
-	}
-
-	/**
-	 * @return
-	 */
-	public static EntityResolver getDefaultEntityResolver() {
-		return defaultEntityResolver;
-	}
-
-	/**
-	 * @param resolver
-	 */
-	public static void setDefaultEntityResolver(EntityResolver resolver) {
-		defaultEntityResolver = resolver;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DanglingHREFException.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DanglingHREFException.java
deleted file mode 100644
index debd006..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DanglingHREFException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on May 12, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-/**
- * Exception thrown when a proxy can not be resolved
- */
-public class DanglingHREFException extends Exception {
-
-
-	public DanglingHREFException() {
-		super();
-	}
-
-	/**
-	 * @param s
-	 */
-	public DanglingHREFException(String s) {
-		super(s);
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DefaultFeatureValueConverter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DefaultFeatureValueConverter.java
deleted file mode 100644
index ea56697..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DefaultFeatureValueConverter.java
+++ /dev/null
@@ -1,354 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClassifier;
-import org.eclipse.emf.ecore.EEnum;
-import org.eclipse.emf.ecore.EEnumLiteral;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.xml.type.XMLTypePackage;
-
-/**
- * Insert the type's description here. Creation date: (5/10/2001 2:49:49 PM)
- * 
- * @author: Administrator
- */
-public class DefaultFeatureValueConverter implements FeatureValueConverter {
-	private static final String FAILED_CONVERSION_PATTERN = WFTUtilsResourceHandler.Failed_to_convert__0__to___ERROR_;
-
-	/**
-	 * DefaultFeatureValueConverter constructor comment.
-	 */
-	public DefaultFeatureValueConverter() {
-		super();
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a Boolean.
-	 */
-	protected Object convertToBoolean(Object aValue) {
-		if (aValue instanceof String)
-			return Boolean.valueOf((String) aValue);
-		if (aValue instanceof Boolean)
-			return aValue;
-		return failedToConvert(aValue, WFTUtilsResourceHandler.Boolean_UI_);
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a Byte.
-	 */
-	protected Object convertToByte(Object aValue) {
-		if (aValue instanceof String)
-			return Byte.valueOf((String) aValue);
-		if (aValue instanceof Byte)
-			return aValue;
-		return failedToConvert(aValue, WFTUtilsResourceHandler.Byte_UI_);
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a Character.
-	 */
-	protected Object convertToCharacter(Object aValue) {
-		if (aValue instanceof String && ((String) aValue).length() == 1)
-			return new Character(((String) aValue).charAt(0));
-		if (aValue instanceof Character)
-			return aValue;
-		return failedToConvert(aValue, WFTUtilsResourceHandler.Character_UI_);
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a Double.
-	 */
-	protected Object convertToDouble(Object aValue) {
-		if (aValue instanceof String) {
-			try {
-				return Double.valueOf((String) aValue);
-			} catch (NumberFormatException e) {
-				return defaultDouble();
-			}
-		}
-		if (aValue instanceof Double)
-			return aValue;
-		return failedToConvert(aValue, WFTUtilsResourceHandler.Double_UI_);
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a EEnumLiteral.
-	 */
-	protected Object convertToEnum(Object aValue, EStructuralFeature aFeature) {
-		EEnumLiteral literal = null;
-		EEnum eenum = (EEnum) aFeature.getEType();
-		if (aValue instanceof String)
-			literal = eenum.getEEnumLiteral((String) aValue);
-		else if (aValue instanceof Integer)
-			literal = eenum.getEEnumLiteral(((Integer) aValue).intValue());
-		else if (aValue instanceof EEnumLiteral)
-			literal = (EEnumLiteral) aValue;
-
-		if (literal == null)
-			return failedToConvert(aValue, WFTUtilsResourceHandler.Enumeration_UI_);
-
-		return literal.getInstance();
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a Float.
-	 */
-	protected Object convertToFloat(Object aValue) {
-		if (aValue instanceof String) {
-			try {
-				return Float.valueOf((String) aValue);
-			} catch (NumberFormatException e) {
-				return defaultFloat();
-			}
-		}
-		if (aValue instanceof Float)
-			return aValue;
-		return failedToConvert(aValue, WFTUtilsResourceHandler.Float_UI_);
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a Integer.
-	 */
-	protected Object convertToInteger(Object aValue) {
-		if (aValue instanceof String) {
-			try {
-				return Integer.valueOf((String) aValue);
-			} catch (NumberFormatException e) {
-				return defaultInteger();
-			}
-		}
-		if (aValue instanceof Integer)
-			return aValue;
-		return failedToConvert(aValue, WFTUtilsResourceHandler.Integer_UI_);
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a Java Object.
-	 */
-	protected Object convertToJavaObject(Object aValue) {
-		return aValue;
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a Long.
-	 */
-	protected Object convertToLong(Object aValue) {
-		if (aValue instanceof String) {
-			try {
-				return Long.valueOf((String) aValue);
-			} catch (NumberFormatException e) {
-				return defaultLong();
-			}
-		}
-		if (aValue instanceof Long)
-			return aValue;
-		return failedToConvert(aValue, WFTUtilsResourceHandler.Long_UI_);
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a MofObject.
-	 */
-	protected Object convertToMofObject(Object aValue) {
-		if (aValue instanceof EObject)
-			return aValue;
-		return failedToConvert(aValue, WFTUtilsResourceHandler.MofObject_UI_);
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a Short.
-	 */
-	protected Object convertToShort(Object aValue) {
-		if (aValue instanceof String) {
-			try {
-				return Short.valueOf((String) aValue);
-			} catch (NumberFormatException e) {
-				return defaultShort();
-			}
-		}
-		if (aValue instanceof Short)
-			return aValue;
-		return failedToConvert(aValue, WFTUtilsResourceHandler.Short_UI_);
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to a String.
-	 */
-	protected Object convertToString(Object aValue) {
-		return aValue.toString();
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to the type of
-	 * @anAttribute.
-	 */
-	protected Object convertValue(Object aValue, org.eclipse.emf.ecore.EAttribute anAttribute) {
-
-		EClassifier meta = anAttribute.getEType();
-		if (meta.eClass() == EcorePackage.eINSTANCE.getEEnum())
-			return convertToEnum(aValue, anAttribute);
-		if (meta.getEPackage() instanceof EcorePackage)
-		{
-			switch (meta.getClassifierID()) {
-				case EcorePackage.ESTRING :
-					return convertToString(aValue);
-				case EcorePackage.EBOOLEAN_OBJECT :
-				case EcorePackage.EBOOLEAN :
-					return convertToBoolean(aValue);
-				case EcorePackage.EINTEGER_OBJECT :
-				case EcorePackage.EINT :
-					return convertToInteger(aValue);
-				case EcorePackage.EFLOAT_OBJECT :
-				case EcorePackage.EFLOAT :
-					return convertToFloat(aValue);
-				case EcorePackage.ECHARACTER_OBJECT :
-				case EcorePackage.ECHAR :
-					return convertToCharacter(aValue);
-				case EcorePackage.ELONG_OBJECT :
-				case EcorePackage.ELONG :
-					return convertToLong(aValue);
-				case EcorePackage.EBYTE_OBJECT :
-				case EcorePackage.EBYTE :
-					return convertToByte(aValue);
-				case EcorePackage.EDOUBLE_OBJECT :
-				case EcorePackage.EDOUBLE :
-					return convertToDouble(aValue);
-				case EcorePackage.ESHORT_OBJECT :
-				case EcorePackage.ESHORT :
-					return convertToShort(aValue);
-				//		case EcorePackage.EENUM:
-				//			return convertToEnum(aValue, anAttribute);
-				case EcorePackage.EOBJECT :
-					return convertToMofObject(aValue);
-				case EcorePackage.EJAVA_OBJECT :
-					return convertToJavaObject(aValue);
-			}
-		}
-		else if (meta.getEPackage() instanceof XMLTypePackage)
-		{
-			switch (meta.getClassifierID()) {
-			case XMLTypePackage.STRING :
-				return convertToString(aValue);
-			case XMLTypePackage.BOOLEAN_OBJECT :
-			case XMLTypePackage.BOOLEAN :
-				return convertToBoolean(aValue);
-			case XMLTypePackage.INT_OBJECT :
-			case XMLTypePackage.INTEGER :
-			case XMLTypePackage.INT :
-				return convertToInteger(aValue);
-			case XMLTypePackage.FLOAT_OBJECT :
-			case XMLTypePackage.FLOAT :
-				return convertToFloat(aValue);
-			case XMLTypePackage.LONG_OBJECT :
-			case XMLTypePackage.LONG :
-				return convertToLong(aValue);
-			case XMLTypePackage.BYTE_OBJECT :
-			case XMLTypePackage.BYTE :
-				return convertToByte(aValue);
-			case XMLTypePackage.DOUBLE_OBJECT :
-			case XMLTypePackage.DOUBLE :
-				return convertToDouble(aValue);
-			case XMLTypePackage.SHORT_OBJECT :
-			case XMLTypePackage.SHORT :
-				return convertToShort(aValue);
-			}
-		}
-		return aValue;
-	}
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to the type of
-	 * @aFeature.
-	 */
-	public Object convertValue(Object aValue, org.eclipse.emf.ecore.EStructuralFeature aFeature) {
-		if (aValue == null || aFeature == null || !(aFeature instanceof EAttribute))
-			return aValue; //nothing to convert
-		return convertValue(aValue, (EAttribute) aFeature);
-	}
-
-	/**
-	 * Return the default Double value.
-	 */
-	protected Double defaultDouble() {
-		return null;
-	}
-
-	/**
-	 * Return the default Float value.
-	 */
-	protected Float defaultFloat() {
-		return null;
-	}
-
-	/**
-	 * Return the default Integer value.
-	 */
-	protected Integer defaultInteger() {
-		return null;
-	}
-
-	/**
-	 * Return the default Long value.
-	 */
-	protected Long defaultLong() {
-		return null;
-	}
-
-	/**
-	 * Return the default Short value.
-	 */
-	protected Short defaultShort() {
-		return null;
-	}
-
-	/**
-	 * Failed to convert
-	 * 
-	 * @aValue.
-	 */
-	protected Object failedToConvert(Object aValue, String aString) {
-		String errorString = java.text.MessageFormat.format(FAILED_CONVERSION_PATTERN, new String[]{aValue.toString(), aString});
-		throw new FeatureValueConversionException(errorString);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DefaultOverridableResourceFactoryRegistry.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DefaultOverridableResourceFactoryRegistry.java
deleted file mode 100644
index 927c0a4..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DefaultOverridableResourceFactoryRegistry.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 14, 2003
- *
- * To change this generated comment go to 
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.Resource.Factory;
-import org.eclipse.emf.ecore.resource.impl.ResourceFactoryRegistryImpl;
-
-/**
- * @author DABERG
- * 
- * To change this generated comment go to Window>Preferences>Java>Code Generation>Code and Comments
- */
-public class DefaultOverridableResourceFactoryRegistry extends ResourceFactoryRegistryImpl {
-	protected static Resource.Factory GLOBAL_FACTORY = Resource.Factory.Registry.INSTANCE.getFactory(URI.createURI(DEFAULT_EXTENSION));
-
-	/**
-	 *  
-	 */
-	public DefaultOverridableResourceFactoryRegistry() {
-		super();
-	}
-
-	public Resource.Factory getFactory(URI uri) {
-		return getFactory(uri, null);
-	}
-
-	public Resource.Factory getFactory(URI uri, String contentType)
-	{
-		Object resourceFactory = null;
-		if (resourceFactory == null) {
-			String protocol = uri.scheme();
-			resourceFactory = protocolToFactoryMap.get(protocol);
-			if (resourceFactory == null) {
-				String extension = uri.fileExtension();
-				resourceFactory = extensionToFactoryMap.get(extension);
-				if (resourceFactory == null) {
-					resourceFactory = delegatedGetFactory(uri);
-					if (resourceFactory == GLOBAL_FACTORY) {
-						resourceFactory = extensionToFactoryMap.get(Resource.Factory.Registry.DEFAULT_EXTENSION);
-						if (resourceFactory == null)
-							resourceFactory = GLOBAL_FACTORY;
-					}
-
-				}
-			}
-		}
-
-		return resourceFactory instanceof Resource.Factory.Descriptor ? ((Resource.Factory.Descriptor) resourceFactory).createFactory() : (Resource.Factory) resourceFactory;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.ecore.resource.impl.ResourceFactoryRegistryImpl#delegatedGetFactory(org.eclipse.emf.common.util.URI)
-	 */
-	protected Factory delegatedGetFactory(URI uri) {
-		return Resource.Factory.Registry.INSTANCE.getFactory(uri);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DeferredReferenceUtilityAction.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DeferredReferenceUtilityAction.java
deleted file mode 100644
index ec1f668..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/DeferredReferenceUtilityAction.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EReference;
-
-/**
- * Insert the type's description here. Creation date: (12/15/2000 5:25:43 PM)
- * 
- * @author: Administrator
- */
-public abstract class DeferredReferenceUtilityAction {
-	protected EReference reference;
-	protected Object referenceValue;
-	protected EObject copyContainer;
-	protected String idSuffix;
-
-	/**
-	 * DeferredCopy constructor comment.
-	 */
-	public DeferredReferenceUtilityAction(EReference aReference, Object aValue, String aSuffix, EObject aCopyContainer) {
-		reference = aReference;
-		referenceValue = aValue;
-		idSuffix = aSuffix;
-		copyContainer = aCopyContainer;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/16/2000 9:32:28 AM)
-	 * 
-	 * @return org.eclipse.emf.ecore.EObject
-	 */
-	public org.eclipse.emf.ecore.EObject getCopyContainer() {
-		return copyContainer;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/15/2000 5:34:56 PM)
-	 * 
-	 * @return java.lang.String
-	 */
-	public java.lang.String getIdSuffix() {
-		return idSuffix;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/15/2000 5:34:56 PM)
-	 * 
-	 * @return org.eclipse.emf.ecore.EReference
-	 */
-	public org.eclipse.emf.ecore.EReference getReference() {
-		return reference;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/16/2000 9:32:28 AM)
-	 * 
-	 * @return java.lang.Object
-	 */
-	public Object getReferenceValue() {
-		return referenceValue;
-	}
-
-	public abstract void performAction();
-}
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EncoderDecoder.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EncoderDecoder.java
deleted file mode 100644
index 69fe06b..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EncoderDecoder.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-/**
- * Represents an interface to an object which can encode and decode values. This typically involves
- * cryptography algorithms. This interface, along with the supplied adapters provide an extension
- * mechanism for pluggable crytography that can be used when storing and retrieving attribute
- * values, and is used prevalently for encoding and decoding password values of mof objects.
- */
-public interface EncoderDecoder {
-	/**
-	 * Returns a decoded version of the value.
-	 */
-	public String decode(String value);
-
-	/**
-	 * Returns an encoded version of the value.
-	 */
-	public String encode(String value);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EncoderDecoderAdapter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EncoderDecoderAdapter.java
deleted file mode 100644
index 788b300..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EncoderDecoderAdapter.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-/**
- * An adapter for EncoderDecoder implementations
- */
-public abstract class EncoderDecoderAdapter implements EncoderDecoder {
-
-	/**
-	 * EncoderDecoderAdapter constructor comment.
-	 */
-	public EncoderDecoderAdapter() {
-		super();
-	}
-
-	/**
-	 * Returns a decoded version of the value.
-	 */
-	public abstract String decode(String value);
-
-	/**
-	 * Returns an encoded version of the value.
-	 */
-	public abstract String encode(String value);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EncoderDecoderRegistry.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EncoderDecoderRegistry.java
deleted file mode 100644
index d615112..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EncoderDecoderRegistry.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * Registry for storing and retrieving value decoders and encoders. Usage Example:
- * 
- * <pre>
- * 
- * 
- * // Use the standard WebSphere password value encoder/decoder.
- * EncoderDecoderRegistry.getDefaultRegistry().setDefaultEncoderDecoder(new com.ibm.ejs.security.util.WASEncoderDecoder());
- * // Begin tracking changes...
- * WriteBackHelper.begin();
- * // Load a resource which may have un-encoded values...
- * // Note: The WCCM will attempt to detect un-encoded values.  If unencoded values
- * // are found, the value will be encoded, and the resource will be added to the
- * // WriteBackHelper.
- * Resource res = resourceSet.load(&quot;myResource&quot;);
- * // Ensure that any changes due to encoding are written back out.
- * WriteBackHelper.end();
- * </pre>
- */
-public class EncoderDecoderRegistry {
-	protected static EncoderDecoderRegistry _defaultInstance;
-	public static final EncoderDecoder INITIAL_DEFAULT_ENCODER = PassthruEncoderDecoder.INSTANCE;
-	protected Map encoders = new HashMap();
-	protected Object defaultEncoderKey;
-
-	/**
-	 * EncoderDecoderRegistry constructor comment.
-	 */
-	public EncoderDecoderRegistry() {
-		super();
-		initializeDefaultEncoders();
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (2/2/2001 12:43:31 AM)
-	 */
-	public void addEncoderDecoder(EncoderDecoder encoderDecoder) {
-		encoders.put(encoderDecoder.getClass().getName(), encoderDecoder);
-		if (defaultEncoderKey == null)
-			defaultEncoderKey = encoderDecoder.getClass().getName();
-	}
-
-	/**
-	 * Returns an encoder/decoder by key.
-	 */
-	public EncoderDecoder getDefaultEncoderDecoder() {
-		if (defaultEncoderKey == null)
-			return null;
-		return (EncoderDecoder) encoders.get(defaultEncoderKey);
-	}
-
-	/**
-	 * Returns the default registry to use for retrieving value encoders and decoders
-	 */
-	public static EncoderDecoderRegistry getDefaultRegistry() {
-		if (_defaultInstance == null) {
-			_defaultInstance = new EncoderDecoderRegistry();
-		}
-		return _defaultInstance;
-	}
-
-	/**
-	 * Returns an encoder/decoder by key.
-	 */
-	public EncoderDecoder getEncoderDecoder(Object key) {
-		return (EncoderDecoder) encoders.get(key);
-	}
-
-	/**
-	 * Initializes a standard set of encoder/decoders.
-	 */
-	public void initializeDefaultEncoders() {
-		setDefaultEncoderDecoder(INITIAL_DEFAULT_ENCODER);
-		addEncoderDecoder(new XMLValueEncoderDecoder());
-	}
-
-	/**
-	 * Removes the encoder/decoder with the specified key.
-	 */
-	public void removeEncoderDecoder(Object key) {
-		if (encoders.containsKey(key)) {
-			encoders.remove(key);
-		}
-	}
-
-	/**
-	 * Returns an encoder/decoder by key.
-	 */
-	public void setDefaultEncoderDecoder(EncoderDecoder encoder) {
-		defaultEncoderKey = encoder.getClass().getName();
-		if (!encoders.containsKey(defaultEncoderKey)) {
-			addEncoderDecoder(encoder);
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EtoolsCopySession.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EtoolsCopySession.java
deleted file mode 100644
index 0308041..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EtoolsCopySession.java
+++ /dev/null
@@ -1,184 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.emf.common.notify.impl.NotificationImpl;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.xmi.XMLResource;
-
-/**
- * Insert the type's description here. Creation date: (05/04/01 11:25:59 PM)
- * 
- * @author: Administrator
- */
-public class EtoolsCopySession extends EtoolsCopyUtility {
-	public static final int RESOURCE_COPIED = 500;
-	private EtoolsCopyUtility parentCopyUtility;
-	private XMLResource currentResource;
-	private XMLResource currentCopyResource;
-
-	/**
-	 * EtoolsCopySession constructor comment.
-	 */
-	public EtoolsCopySession(EtoolsCopyUtility aCopyUtility) {
-		parentCopyUtility = aCopyUtility;
-		setPreserveIds(aCopyUtility.preserveIds());
-		setCopyAdapters(aCopyUtility.isCopyAdapters());
-	}
-
-	/**
-	 * Copy all Resources and RefObjects within <code>aGroup</code> and add them to
-	 * <code>aGroup</code>. Non composite references will be deferred until all objects are
-	 * copied from <code>aGroup</code>.
-	 * 
-	 * Copy Resources first and then copy RefObjects.
-	 */
-	public void copy(CopyGroup aGroup) {
-		if (aGroup != null) {
-			copyResources(aGroup);
-			copyRefObjects(aGroup);
-			executeDeferredCopyActions();
-			aGroup.postCopy(this);
-			notifyNewResourcesCopied(aGroup);
-		}
-	}
-
-	/**
-	 * This method should be used if you are only going to copy <code>aRefObject</code> in this
-	 * copy execution.
-	 */
-	public EObject copy(EObject aRefObject, String idSuffix) {
-		EObject copied = containmentCopy(aRefObject, idSuffix);
-		executeDeferredCopyActions();
-		return copied;
-	}
-
-	/**
-	 * This method should be used if you are only going to copy <code>aRefObject</code> in this
-	 * copy execution. This method only copies <code>aRefObject</code> attributes.
-	 */
-	public EObject copyObject(EObject aRefObject, String idSuffix) {
-		EObject copied = containmentCopyObject(aRefObject, idSuffix);
-		executeDeferredCopyActions();
-		return copied;
-	}
-
-	/**
-	 * This method should be used if you are only going to copy <code>aResource</code> in this
-	 * copy execution. The copied Resource will have a URI equal to <code>newUri</code>.
-	 */
-	public Resource copy(Resource aResource, String newUri) {
-		Resource copied = containmentCopy(aResource, newUri);
-		executeDeferredCopyActions();
-		copyModificationFlag(aResource, copied);
-		notifyNewResourceCopied(copied);
-		return copied;
-	}
-
-	protected void notifyNewResourcesCopied(CopyGroup group) {
-		List copied = group.getCopiedResources();
-		for (int i = 0; i < copied.size(); i++) {
-			notifyNewResourceCopied((Resource) copied.get(i));
-		}
-	}
-
-	protected void notifyNewResourceCopied(Resource copied) {
-		copied.eNotify(new NotificationImpl(RESOURCE_COPIED, null, null));
-	}
-
-	/**
-	 * @see com.ibm.etools.emf.ecore.utilities.copy.EtoolsCopyUtility#primCopyObject(EObject,
-	 *      String)
-	 */
-	protected EObject primCopyObject(EObject aRefObject, String idSuffix) {
-		EObject copy = super.primCopyObject(aRefObject, idSuffix);
-		copyIdIfNecessary(aRefObject, copy, idSuffix);
-		return copy;
-	}
-
-	protected void copyIdIfNecessary(EObject obj, EObject copy, String idSuffix) {
-		if ((idSuffix == null && !preserveIds) || currentResource == null)
-			return;
-		String id = currentResource.getID(obj);
-		if (id == null)
-			return;
-		id = idSuffix == null ? id : id + idSuffix;
-		currentCopyResource.setID(copy, id);
-	}
-
-
-	/**
-	 * Set delivery back on for all the cached objects and push them to the parentCopyUtility.
-	 */
-	public void flush() {
-		Iterator it = getCopiedObjects().entrySet().iterator();
-		Map parentCopies = getParentCopyUtility().getCopiedObjects();
-		Map.Entry entry;
-		EObject copy;
-		while (it.hasNext()) {
-			entry = (Map.Entry) it.next();
-			copy = (EObject) entry.getValue();
-			copy.eSetDeliver(true);
-			parentCopies.put(entry.getKey(), copy);
-		}
-		copiedObjects = null;
-	}
-
-	/**
-	 * Return a cached copy.
-	 */
-	public EObject getCopy(EObject anObject) {
-		EObject copied = super.getCopy(anObject);
-		if (copied == null)
-			copied = getParentCopyUtility().getCopy(anObject);
-		return copied;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (05/04/01 11:28:07 PM)
-	 * 
-	 * @return com.ibm.etools.emf.ecore.utilities.copy.EtoolsCopyUtility
-	 */
-	protected EtoolsCopyUtility getParentCopyUtility() {
-		return parentCopyUtility;
-	}
-
-	/**
-	 * Return an instance of EObject that is the same type as <code>aRefObject</code>.
-	 */
-	public EObject newInstance(EObject aRefObject) {
-		EObject newType = super.newInstance(aRefObject);
-		newType.eSetDeliver(false);
-		return newType;
-	}
-
-	/**
-	 * @see com.ibm.etools.emf.ecore.utilities.copy.EtoolsCopyUtility#newInstance(Resource, String)
-	 */
-	public Resource newInstance(Resource aResource, String newUri) {
-		Resource copy = super.newInstance(aResource, newUri);
-		if (aResource instanceof XMLResource) {
-			currentResource = (XMLResource) aResource;
-			currentCopyResource = (XMLResource) copy;
-		} else {
-			currentResource = null;
-			currentCopyResource = null;
-		}
-		return copy;
-	}
-
-}
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EtoolsCopyUtility.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EtoolsCopyUtility.java
deleted file mode 100644
index 22d91e0..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/EtoolsCopyUtility.java
+++ /dev/null
@@ -1,669 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EFactory;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.ecore.ETypedElement;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.resource.Resource;
-
-
-/**
- * Insert the type's description here. Creation date: (12/13/2000 9:10:55 PM)
- * 
- * @author: Administrator
- */
-public class EtoolsCopyUtility {
-	protected static final String REFENUMLITERAL_TYPE_NAME = "EEnumLiteral"; //$NON-NLS-1$
-	private final EcorePackage pkg = EcorePackage.eINSTANCE;
-
-	private final ETypedElement METAENAME = pkg.getENamedElement_Name();
-
-	protected HashMap copiedObjects;
-	protected List deferredReferenceCopies;
-	protected boolean preserveIds = false;
-	protected boolean copyAdapters = false;
-	protected HashMap copiedAdapters;
-
-	protected class DeferredSingleReferenceCopyAction extends DeferredReferenceUtilityAction {
-		public DeferredSingleReferenceCopyAction(EReference aReference, Object aValue, String aSuffix, EObject aCopyContainer) {
-			super(aReference, aValue, aSuffix, aCopyContainer);
-		}
-
-		public void performAction() {
-			EObject value = (EObject) getReferenceValue();
-			getCopyContainer().eSet(getReference(), getCopyIfFound(value));
-		}
-	}
-
-	protected class DeferredManyReferenceCopyAction extends DeferredReferenceUtilityAction {
-		public DeferredManyReferenceCopyAction(EReference aReference, List aValue, String aSuffix, EObject aCopyContainer) {
-			super(aReference, aValue, aSuffix, aCopyContainer);
-		}
-
-		public void performAction() {
-			List copyList = (List) getCopyContainer().eGet(getReference());
-			Iterator it = ((List) getReferenceValue()).iterator();
-			EObject next;
-			while (it.hasNext()) {
-				next = (EObject) it.next();
-				copyList.add(getCopyIfFound(next));
-			}
-		}
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/13/2000 9:14:26 PM)
-	 * 
-	 * @param aRefObject
-	 *            org.eclipse.emf.ecore.EObject
-	 */
-	public EtoolsCopyUtility() {
-	}
-
-	/**
-	 * Create a <code>DeferredManyReferenceCopyAction</code> and add it to the list of deferred
-	 * copy actions.
-	 */
-	protected void addDeferredManyReferenceCopy(EReference reference, List aValue, String idSuffix, EObject aCopyContainer) {
-		getDeferredReferenceCopies().add(new DeferredManyReferenceCopyAction(reference, aValue, idSuffix, aCopyContainer));
-	}
-
-	/**
-	 * Create a <code>DeferredSingleReferenceCopyAction</code> and add it to the list of deferred
-	 * copy actions.
-	 */
-	protected void addDeferredSingleReferenceCopy(EReference reference, EObject aValue, String idSuffix, EObject aCopyContainer) {
-		getDeferredReferenceCopies().add(new DeferredSingleReferenceCopyAction(reference, aValue, idSuffix, aCopyContainer));
-	}
-
-	/**
-	 * Check for an already copied object first.
-	 */
-	protected EObject containmentCopy(EObject anObject, String idSuffix) {
-		EObject copied = getCopy(anObject);
-		if (copied == null)
-			copied = primCopy(anObject, idSuffix);
-		return copied;
-	}
-
-	/**
-	 * Check for an already copied object first.
-	 */
-	protected EObject containmentCopyObject(EObject anObject, String idSuffix) {
-		EObject copied = getCopy(anObject);
-		if (copied == null)
-			copied = primCopyObject(anObject, idSuffix);
-		return copied;
-	}
-
-	protected Resource containmentCopy(Resource aResource, String newUri) {
-		/* copied resources are never cached */
-		return primCopy(aResource, newUri);
-	}
-
-	/**
-	 * Copy all Resources and RefObjects within <code>aGroup</code> and add them to
-	 * <code>aGroup</code>. Non composite references will be deferred until all objects are
-	 * copied from <code>aGroup</code>.
-	 * 
-	 * Copy Resources first and then copy RefObjects.
-	 */
-	public void copy(CopyGroup aGroup) {
-		if (aGroup != null) {
-			EtoolsCopySession session = new EtoolsCopySession(this);
-			session.setPreserveIds(aGroup.getPreserveIds());
-			session.copy(aGroup);
-			session.flush();
-		}
-	}
-
-	public EObject copy(EObject aRefObject) {
-		return copy(aRefObject, null);
-	}
-
-	/**
-	 * This method should be used if you are only going to copy <code>aRefObject</code> in this
-	 * copy execution.
-	 */
-	public EObject copy(EObject aRefObject, String idSuffix) {
-		EtoolsCopySession session = new EtoolsCopySession(this);
-		EObject copied = session.copy(aRefObject, idSuffix);
-		session.flush();
-		return copied;
-	}
-
-	/**
-	 * This method should be used if you are only going to copy <code>aRefObject</code> in this
-	 * copy execution. This method only copies <code>aRefObject</code> with its properties, not
-	 * references.
-	 */
-	public EObject copyObject(EObject aRefObject, String idSuffix) {
-		EtoolsCopySession session = new EtoolsCopySession(this);
-		EObject copied = session.copyObject(aRefObject, idSuffix);
-		session.flush();
-		return copied;
-	}
-
-	/**
-	 * This method should be used if you are only going to copy <code>aResource</code> in this
-	 * copy execution. The copied Resource will have a URI equal to <code>newUri</code>.
-	 */
-	public Resource copy(Resource aResource, String newUri) {
-		EtoolsCopySession session = new EtoolsCopySession(this);
-		Resource copied = session.copy(aResource, newUri);
-		session.flush();
-		return copied;
-	}
-
-	/**
-	 * If an attribute is set and its value is not <code>null</code>, then perform copy
-	 * <code>attribute</code> value from <code>aRefObject</code> to <code>copyRef</code>.
-	 * Null is a valid value if the attribute is set.
-	 */
-
-	protected void copyAttribute(EAttribute attribute, EObject aRefObject, String idSuffix, EObject copyRef) {
-		if (!attribute.isChangeable())
-			return; //ignore
-		if (attribute.isMany()) {
-			List value = (List) aRefObject.eGet(attribute);
-			if (value != null)
-				copyManyAttribute(attribute, value, aRefObject, idSuffix, copyRef);
-		} else if (aRefObject.eIsSet(attribute)) {
-			Object value = aRefObject.eGet(attribute);
-			if (value == null)
-				copyRef.eSet(attribute, value);
-			else
-				copySingleAttribute(attribute, value, aRefObject, idSuffix, copyRef);
-		} else if (attribute == METAENAME) {
-			//set name to the ID (this is computed as a default), only get here if isSetName is
-			// false.
-			copyRef.eSet(attribute, aRefObject.eGet(attribute));
-		}
-	}
-
-	/**
-	 * Iterate over the attributes of the receiver and copy each attribute.
-	 */
-	protected void copyCurrentAttributes(EObject aRefObject, String idSuffix, EObject copyRef) {
-		List attributes = aRefObject.eClass().getEAllAttributes();
-		if (attributes != null) {
-			Iterator it = attributes.iterator();
-			EAttribute ra;
-			while (it.hasNext()) {
-				ra = (EAttribute) it.next();
-				copyAttribute(ra, aRefObject, idSuffix, copyRef);
-			}
-		}
-	}
-
-	/**
-	 * This method will iterate over the references of the receiver. If a reference's value is not
-	 * <code>null</code>, then a series of tests are done before setting the value with the
-	 * copied object, <code>copyRef</code>.
-	 * 
-	 * Tests: 1. Do nothing if the reference equals the metaEContainer or metaEContains references.
-	 */
-
-	protected void copyCurrentReferences(EObject aRefObject, String idSuffix, EObject copyRef) {
-		List references = aRefObject.eClass().getEAllReferences();
-		if (references != null) {
-			Iterator it = references.iterator();
-			EReference rr;
-			while (it.hasNext()) {
-				rr = (EReference) it.next();
-				if (shouldCopyReference(rr))
-					copyReference(rr, aRefObject, idSuffix, copyRef);
-			}
-		}
-	}
-
-	/**
-	 * Iterate over <code>anExtent</code> and copy each element to <code>copyExtent</code>.
-	 */
-	protected void copyExtent(EList anExtent, EList copyExtent) {
-		Iterator it = anExtent.iterator();
-		EObject refObject;
-		while (it.hasNext()) {
-			refObject = (EObject) it.next();
-			copyExtent.add(containmentCopy(refObject, null));
-		}
-	}
-
-	/**
-	 * Copy a many value attribute which is treated as a many valued reference.
-	 * 
-	 * Tests:
-	 * 
-	 * 1. If the type is <bold>not </bold> <code>null</code>, then set the value on
-	 * <code>copyRef</code> without making a copy. 2. If the type is <code>null</code>, then
-	 * obtain the list from <code>copyRef</code> and add a copy of each value from the original
-	 * list to it.
-	 */
-
-	protected void copyManyAttribute(EAttribute attribute, List aValue, EObject aRefObject, String idSuffix, EObject copyRef) {
-		if (attribute.getEType() == null)
-			copyRef.eSet(attribute, aValue);
-		else {
-			List copyList = (List) copyRef.eGet(attribute);
-			Iterator it = aValue.iterator();
-			Object next;
-			while (it.hasNext()) {
-				next = it.next();
-				if (next instanceof EObject)
-					copyList.add(containmentCopy((EObject) next, idSuffix));
-				else
-					copyList.add(next);
-			}
-		}
-	}
-
-	/**
-	 * This method will iterate over the references of the receiver. If a reference's value is not
-	 * <code>null</code>, then a series of tests are done before setting the value with the
-	 * copied object, <code>copyRef</code>.
-	 * 
-	 * Tests: 1. If the reference is many, obtain the list from the receiving object and make a copy
-	 * of each value if the reference is composite before adding to the list; otherwise, just add
-	 * each value to the of the <code>copyRef</code>.
-	 */
-
-	protected void copyManyReference(EReference aReference, List aList, EObject aRefObject, String idSuffix, EObject copyRef) {
-		if (!aList.isEmpty()) {
-			if (aReference.isContainment()) {
-				List copyList = (List) copyRef.eGet(aReference);
-				Iterator it = aList.iterator();
-				EObject targetValue;
-				while (it.hasNext()) {
-					targetValue = (EObject) it.next();
-					copyList.add(containmentCopy(targetValue, idSuffix));
-				}
-			} else
-				addDeferredManyReferenceCopy(aReference, aList, idSuffix, copyRef);
-		}
-	}
-
-	/**
-	 * This method will iterate over the references of the receiver. If a reference's value is not
-	 * <code>null</code>, then perform the copy.
-	 */
-
-	protected void copyReference(EReference aReference, EObject aRefObject, String idSuffix, EObject copyRef) {
-		if (aReference.isMany()) {
-			List value = (List) aRefObject.eGet(aReference);
-			if (value != null)
-				copyManyReference(aReference, value, aRefObject, idSuffix, copyRef);
-		} else if (aRefObject.eIsSet(aReference)) {
-			Object value = aRefObject.eGet(aReference);
-			copySingleReference(aReference, (EObject) value, aRefObject, idSuffix, copyRef);
-		}
-	}
-
-	/**
-	 * Copy all RefObjects from <code>aGroup</code> and add the copy back to <code>aGroup</code>.
-	 */
-	protected void copyRefObjects(CopyGroup aGroup) {
-		Association association;
-		EObject refObject;
-		String idSuffix;
-		if (aGroup.primGetRefObjects() != null) {
-			Iterator it = aGroup.primGetRefObjects().iterator();
-			while (it.hasNext()) {
-				association = (Association) it.next();
-				refObject = (EObject) association.getKey();
-				idSuffix = (String) association.getValue();
-				if (idSuffix == null)
-					idSuffix = aGroup.getDefaultIdSuffix();
-				aGroup.addCopied(containmentCopy(refObject, idSuffix));
-			}
-		}
-	}
-
-	/**
-	 * Copy all Resources from <code>aGroup</code> and add the copy back to <code>aGroup</code>.
-	 */
-	protected void copyResources(CopyGroup aGroup) {
-		Association association;
-		Resource resource;
-		String uri;
-		if (aGroup.primGetResources() != null) {
-			Iterator it = aGroup.primGetResources().iterator();
-			while (it.hasNext()) {
-				association = (Association) it.next();
-				resource = (Resource) association.getKey();
-				uri = (String) association.getValue();
-				Resource copied = containmentCopy(resource, uri);
-				copyModificationFlag(resource, copied);
-				aGroup.addCopied(copied);
-			}
-		}
-	}
-
-	/**
-	 * Copy a single value attribute.
-	 * 
-	 * Tests:
-	 * 
-	 * 1. If an attribute type is not <code>null</code> then it is an object type and it must be
-	 * copied. Do not copy the value if the attribute is an Enumeration type. 2. If an attribute
-	 * type is <bold>not </bold> <code>null</code> then copy the value before setting it on
-	 * <code>copyRef</code>.
-	 */
-
-	protected void copySingleAttribute(EAttribute attribute, Object aValue, EObject aRefObject, String idSuffix, EObject copyRef) {
-		if (attribute.getEType() == null) {
-			copyRef.eSet(attribute, aValue);
-		} else {
-			//MOF108
-			// if (attribute.isObjectType())
-			if (attribute.getEType() instanceof EClass)
-				copyRef.eSet(attribute, containmentCopy((EObject) aValue, idSuffix));
-			else
-				copyRef.eSet(attribute, aValue);
-		}
-	}
-
-	/**
-	 * This method will iterate over the references of the receiver. If a reference's value is not
-	 * <code>null</code>, then a series of tests are done before setting the value with the
-	 * copied object, <code>copyRef</code>.
-	 * 
-	 * Tests: 1. If the reference is <bold>not </bold> many, make a copy of the value if the
-	 * reference is composite before setting the value with <code>copyRef</code>; otherwise, just
-	 * set the value as is.
-	 */
-
-	protected void copySingleReference(EReference aReference, EObject aValue, EObject aRefObject, String idSuffix, EObject copyRef) {
-		//Exceptional case; the relationship is not the container relationship
-		//And is not navigable in the other direction; go ahead and copy
-		if (aValue != aRefObject.eContainer() || aReference.getEOpposite() == null) {
-			if (aReference.isContainment())
-				copyRef.eSet(aReference, containmentCopy(aValue, idSuffix));
-			else
-				addDeferredSingleReferenceCopy(aReference, aValue, idSuffix, copyRef);
-		}
-	}
-
-	/**
-	 * Copy all Resources and RefObjects within <code>aGroup</code> and add them to
-	 * <code>aGroup</code>. Non composite references will be deferred until all objects are
-	 * copied from <code>aGroup</code>.
-	 * 
-	 * Copy Resources first and then copy RefObjects.
-	 */
-	public static void createCopy(CopyGroup aGroup) {
-		EtoolsCopyUtility utility = new EtoolsCopyUtility();
-		utility.copy(aGroup);
-	}
-
-	/**
-	 * Copies attributes
-	 */
-	public static void createAttributeCopy(EObject aRefObject, EObject copyObject) {
-		EtoolsCopyUtility utility = new EtoolsCopyUtility();
-		utility.copyCurrentAttributes(aRefObject, null, copyObject);
-	}
-
-	/**
-	 * Copies all set attributes and references based on containment. Thus, it will copy the entire
-	 * containment tree. Use the idSuffix to define the suffix that will be appended to the existing
-	 * IDs of copied objects.
-	 */
-	public static EObject createCopy(EObject aRefObject) {
-		return createCopy(aRefObject, null);
-	}
-
-	/**
-	 * Copies all set attributes and references based on containment. Thus, it will copy the entire
-	 * containment tree. Use the idSuffix to define the suffix that will be appended to the existing
-	 * IDs of copied objects.
-	 */
-	public static EObject createCopy(EObject aRefObject, String idSuffix) {
-		EtoolsCopyUtility utility = new EtoolsCopyUtility();
-		return utility.copy(aRefObject, idSuffix);
-	}
-
-	/**
-	 * Copy <code>aResource</code> using <code>newUri</code> for the URI.
-	 */
-	public static Resource createCopy(Resource aResource, String newUri) {
-		EtoolsCopyUtility utility = new EtoolsCopyUtility();
-		return utility.copy(aResource, newUri);
-	}
-
-	protected void executeDeferredCopyActions() {
-		if (primGetDeferredReferenceCopies() != null) {
-			Iterator it = primGetDeferredReferenceCopies().iterator();
-			DeferredReferenceUtilityAction action;
-			while (it.hasNext()) {
-				action = (DeferredReferenceUtilityAction) it.next();
-				action.performAction();
-			}
-			primGetDeferredReferenceCopies().clear();
-		}
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/13/2000 9:17:35 PM)
-	 * 
-	 * @return java.util.HashMap
-	 */
-	protected java.util.HashMap getCopiedObjects() {
-		if (copiedObjects == null)
-			copiedObjects = new HashMap(200);
-		return copiedObjects;
-	}
-
-	protected java.util.HashMap getCopiedAdapters() {
-		if (copiedAdapters == null)
-			copiedAdapters = new HashMap(200);
-		return copiedAdapters;
-	}
-
-	/**
-	 * Return a cached copy.
-	 */
-	public EObject getCopy(EObject anObject) {
-		if (anObject == null)
-			return null;
-		return (EObject) getCopiedObjects().get(anObject);
-	}
-
-	/**
-	 * Return a cached copy, if none, return the argument.
-	 */
-	public EObject getCopyIfFound(EObject anObject) {
-		EObject copied = getCopy(anObject);
-		return copied == null ? anObject : copied;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/16/2000 9:11:32 AM)
-	 * 
-	 * @return java.util.List
-	 */
-	protected java.util.List getDeferredReferenceCopies() {
-		if (deferredReferenceCopies == null)
-			deferredReferenceCopies = new ArrayList(100);
-		return deferredReferenceCopies;
-	}
-
-	/**
-	 * Return an instance of EObject that is the same type as <code>aRefObject</code>.
-	 */
-	public EObject newInstance(EObject aRefObject) {
-		if (aRefObject == null)
-			return null;
-		EPackage epkg = (EPackage) aRefObject.eClass().eContainer();
-		EFactory factory = epkg.getEFactoryInstance();
-		EClass refObj = aRefObject.eClass();
-		return factory.create(refObj);
-	}
-
-	/**
-	 * Return an instance of Resource that uses the same ResourceFactory as the one used by
-	 * <code>aResource</code>. If <code>newUri</code> is <code>null</code> then use the URI
-	 * from <code>aResource</code>.
-	 */
-	public Resource newInstance(Resource aResource, String newUri) {
-		if (aResource == null)
-			return null;
-		Resource newResource;
-		String originalUri = aResource.getURI().toString();
-		newUri = newUri == null ? originalUri : newUri;
-
-		Resource.Factory factory = null;
-		if (aResource.getResourceSet() == null)
-			factory = Resource.Factory.Registry.INSTANCE.getFactory(URI.createURI(originalUri));
-		else
-			factory = aResource.getResourceSet().getResourceFactoryRegistry().getFactory(URI.createURI(originalUri));
-
-
-		newResource = factory.createResource(URI.createURI(newUri));
-		return newResource;
-	}
-
-	/**
-	 * Should the id be copied in the case where no suffix is specified? Defaults to false
-	 */
-	public boolean preserveIds() {
-		return preserveIds;
-	}
-
-	/**
-	 * Copies all set attributes and references based on containment. Thus, it will copy the entire
-	 * containment tree. Use the idSuffix to define the suffix that will be appended to the existing
-	 * IDs of copied objects. If an idSuffix does not exist, do not set an id on the copied object.
-	 */
-	protected EObject primCopy(EObject aRefObject, String idSuffix) {
-		if (aRefObject == null)
-			return null;
-		EObject copyRef = primCopyObject(aRefObject, idSuffix);
-
-		copyCurrentReferences(aRefObject, idSuffix, copyRef);
-		return copyRef;
-	}
-
-	/**
-	 * Copies all set attributes based on containment. Thus, it will copy the entire containment
-	 * tree. Use the idSuffix to define the suffix that will be appended to the existing IDs of
-	 * copied objects. If an idSuffix does not exist, do not set an id on the copied object.
-	 */
-	protected EObject primCopyObject(EObject aRefObject, String idSuffix) {
-		if (aRefObject == null)
-			return null;
-		EObject copyRef = newInstance(aRefObject);
-
-		recordCopy(aRefObject, copyRef);
-		copyCurrentAttributes(aRefObject, idSuffix, copyRef);
-		if (isCopyAdapters())
-			copyAdapters(aRefObject, copyRef);
-		return copyRef;
-	}
-
-	protected void copyAdapters(EObject aRefObject, EObject copyRef) {
-		List adapters = aRefObject.eAdapters();
-		for (int i = 0; i < adapters.size(); i++) {
-			Adapter adapter = (Adapter) adapters.get(i);
-			copyAdapter(aRefObject, copyRef, adapter);
-
-		}
-	}
-
-	protected void copyAdapter(EObject aRefObject, EObject copyRef, Adapter adapter) {
-		if (!(adapter instanceof CloneablePublic))
-			return;
-		CloneablePublic copyAdapter = (CloneablePublic) getCopiedAdapters().get(adapter);
-		if (copyAdapter == null) {
-			copyAdapter = (CloneablePublic) ((CloneablePublic) adapter).clone();
-			getCopiedAdapters().put(adapter, copyAdapter);
-		}
-		if (copyAdapter != null)
-			copyRef.eAdapters().add(copyAdapter);
-	}
-
-	/**
-	 * Copies all set attributes and references based on containment. Thus, it will copy the entire
-	 * containment tree. Use the idSuffix to define the suffix that will be appended to the existing
-	 * IDs of copied objects.
-	 */
-	protected Resource primCopy(Resource aResource, String newUri) {
-		if (aResource == null)
-			return null;
-		Resource copyResource = newInstance(aResource, newUri);
-		copyExtent(aResource.getContents(), copyResource.getContents());
-		return copyResource;
-	}
-
-	protected void copyModificationFlag(Resource aResource, Resource copied) {
-		if (aResource.isModified())
-			copied.setModified(true);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (12/16/2000 9:11:32 AM)
-	 * 
-	 * @return java.util.List
-	 */
-	private java.util.List primGetDeferredReferenceCopies() {
-		return deferredReferenceCopies;
-	}
-
-	public void recordCopy(EObject aSource, EObject aCopy) {
-		getCopiedObjects().put(aSource, aCopy);
-	}
-
-	public void recordCopy(Adapter aSource, Adapter aCopy) {
-		getCopiedAdapters().put(aSource, aCopy);
-	}
-
-	/**
-	 * Should the id be copied in the case where no suffix is specified?
-	 */
-	public void setPreserveIds(boolean value) {
-		preserveIds = value;
-	}
-
-	protected boolean shouldCopyReference(EReference aReference) {
-		return aReference.isChangeable();
-	}
-
-	/**
-	 * @return
-	 */
-	public boolean isCopyAdapters() {
-		return copyAdapters;
-	}
-
-	/**
-	 * Flag used to indicate whether adapters should be copied as well. In order for an adapter to
-	 * be copied, it must implement the {@link CloneablePublic}interface.
-	 */
-	public void setCopyAdapters(boolean b) {
-		copyAdapters = b;
-	}
-
-}
-
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ExceptionHelper.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ExceptionHelper.java
deleted file mode 100644
index 7d629af..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ExceptionHelper.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.common.frameworks.internal.enablement.nonui.IWFTWrappedException;
-
-
-
-/**
- * Utility class to factor common code for implementers of IArchiveWrappedException
- */
-public class ExceptionHelper {
-
-	/**
-	 * Utility class; cannot be instantiated
-	 */
-	private ExceptionHelper() {
-		super();
-	}
-
-	/**
-	 * Return the messages from
-	 * 
-	 * @exception and
-	 *                all nested exceptions, in order from outermost to innermost
-	 */
-	public static java.lang.String[] getAllMessages(IWFTWrappedException exception) {
-		List messages = new ArrayList(4);
-		messages.add(exception.getMessage());
-		Exception nested = exception.getNestedException();
-		while (nested != null) {
-			messages.add(nested.getMessage());
-			if (nested instanceof IWFTWrappedException)
-				nested = ((IWFTWrappedException) nested).getNestedException();
-			else
-				nested = null;
-		}
-		return (String[]) messages.toArray(new String[messages.size()]);
-	}
-
-	/**
-	 * Return the messages from
-	 * 
-	 * @exception and
-	 *                all nested exceptions, in order from outermost to innermost, concatenated as
-	 *                one
-	 */
-	public static String getConcatenatedMessages(IWFTWrappedException exception) {
-		String[] messages = getAllMessages(exception);
-		StringBuffer sb = new StringBuffer(256);
-		for (int i = 0; i < messages.length; i++) {
-			sb.append(messages[i]);
-			if (i < messages.length - 1)
-				sb.append('\n');
-		}
-		return sb.toString();
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ExtendedEcoreUtil.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ExtendedEcoreUtil.java
deleted file mode 100644
index e9cf914..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ExtendedEcoreUtil.java
+++ /dev/null
@@ -1,274 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import java.io.FileNotFoundException;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EAdapterList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.common.util.WrappedException;
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.ENamedElement;
-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.util.EcoreUtil;
-import org.eclipse.emf.ecore.xmi.XMLResource;
-
-
-
-public class ExtendedEcoreUtil extends EcoreUtil {
-	private static FileNotFoundDetector FILE_NOT_FOUND_DETECTOR;
-	private static String NAME_ATTRIBUTE_STRING = "name"; //$NON-NLS-1$
-
-
-	public interface FileNotFoundDetector {
-		boolean isFileNotFound(WrappedException wrappedEx);
-	}
-
-	public static void setFileNotFoundDetector(FileNotFoundDetector detector) {
-		FILE_NOT_FOUND_DETECTOR = detector;
-	}
-
-	public static FileNotFoundDetector getFileNotFoundDetector() {
-		if (FILE_NOT_FOUND_DETECTOR == null) {
-			FILE_NOT_FOUND_DETECTOR = new FileNotFoundDetector() {
-				public boolean isFileNotFound(WrappedException wrappedEx) {
-					if (getInnerFileNotFoundException(wrappedEx) != null)
-						return true;
-					return false;
-				}
-			};
-		}
-		return FILE_NOT_FOUND_DETECTOR;
-	}
-
-	public static FileNotFoundException getInnerFileNotFoundException(WrappedException wrappedEx) {
-		if (wrappedEx.exception() instanceof java.io.FileNotFoundException) {
-			return (FileNotFoundException) wrappedEx.exception();
-		} else if (wrappedEx.exception() instanceof WrappedException) {
-			return getInnerFileNotFoundException((WrappedException) wrappedEx.exception());
-		}
-		return null;
-	}
-
-	public static void eSetOrAdd(EObject obj, EStructuralFeature feature, Object value) {
-		eSetOrAdd(obj, feature, value, 0);
-	}
-
-	public static void eSetOrAdd(EObject obj, EStructuralFeature feature, Object value, int newIndex) {
-		if (feature.isMany() && value != null) {
-			if (newIndex >= 0)
-				((List) obj.eGet(feature)).add(newIndex, value);
-			else
-				((List) obj.eGet(feature)).add(value);
-		} else {
-			obj.eSet(feature, value);
-		}
-	}
-
-	public static void eUnsetOrRemove(EObject obj, EStructuralFeature feature, Object value) {
-		if (feature == null || feature.isMany())
-			((List) obj.eGet(feature)).remove(value);
-		else
-			obj.eUnset(feature);
-	}
-
-	public static boolean endsWith(URI sourceUri, URI testUri) {
-		//TODO Waiting on new emf URI API
-		String[] sourceSegments = sourceUri.segments();
-		String[] testSegments = testUri.segments();
-		int i = testSegments.length;
-		int j = sourceSegments.length;
-		if (j >= i) {
-			boolean test = true;
-
-			while (test && i > 0) {
-				i--;
-				j--;
-				test = testSegments[i].equals(sourceSegments[j]);
-			}
-			return test;
-		}
-		return false;
-	}
-
-	public static String getName(EObject obj) {
-		if (obj == null)
-			return null;
-		if (obj instanceof ENamedElement)
-			return ((ENamedElement) obj).getName();
-		List allAtts = obj.eClass().getEAllAttributes();
-		int size = allAtts.size();
-		EAttribute att, nameAttribute = null;
-		for (int i = 0; i < size; i++) {
-			att = (EAttribute) allAtts.get(i);
-			if (NAME_ATTRIBUTE_STRING.equals(att.getName())) {
-				nameAttribute = att;
-				break;
-			}
-		}
-		if (nameAttribute != null)
-			return (String) obj.eGet(nameAttribute);
-		return null;
-	}
-
-	/**
-	 * @deprecated No longer needed.
-	 */
-	public static void addLoadingTag(Resource resource) {
-		//resource.eAdapters().add(IsLoadingDetector.INSTANCE);
-	}
-
-	/**
-	 * @deprecated No longer needed.
-	 */
-	public static void removeLoadingTag(Resource resource) {
-		//resource.eAdapters().remove(IsLoadingDetector.INSTANCE);
-	}
-
-	/**
-	 * Return true if the resource is currently being loaded. This is determined by checking for the
-	 * IsLoadingDector in the list of eAdapters on the resource.
-	 * 
-	 * @param resource
-	 * @return boolean
-	 * 
-	 * @see addLoadingTag(Resource)
-	 * @see removeLoadingTag(Resource)
-	 *  @deprecated use {@link Resource.Internal#isLoading()}
-	 */
-	public static boolean isLoading(Resource resource) {
-		return resource != null ? ((Resource.Internal)resource).isLoading() : false; 
-	}
-
-	public static Adapter createAdapterForLoading(Adapter targetAdapter, EObject targetObject) {
-		Resource res = targetObject.eResource();
-		if (res == null || isLoading(res))
-			return new IsLoadingProxyAdapter(targetAdapter, targetObject);
-		return targetAdapter;
-	}
-
-	public static void preRegisterPackage(String nsPrefix, EPackage.Descriptor descriptor) {
-		if (!EPackage.Registry.INSTANCE.containsKey(nsPrefix))
-			EPackage.Registry.INSTANCE.put(nsPrefix, descriptor);
-	}
-	/**
-	   * Returns the adapter of the specified type.
-	 * @param anObject 
-	   * @param adapters list of adapters to search.
-	   * @param type the type of adapter.
-	   * @return an adapter from the list or null.
-	   */
-	  public static Adapter getAdapter(EObject anObject, List adapters, Object type) {
-
-		  	Object [] adaptArray = ((EAdapterList)adapters).data();
-		  	if (adaptArray == null) return null;
-			for (int i = 0; i < adaptArray.length; i++) {
-				Adapter adapter = (Adapter) adaptArray[i];
-				if (adapter != null && adapter.isAdapterForType(type)) {
-					return adapter;
-				}
-			}
-			return null;
-	}
-
-	/**
-	 * Remove this object from it's container, and make it and all it's children
-	 * proxies
-	 */
-	public static void unload(EObject root) {
-		Resource res = root.eResource();
-		EObject container = root.eContainer();
-		/* Making sure the proxy is created first before unloading */
-		if (root != null && res != null)
-			becomeProxy(root, res);
-		if (container == null)
-			if (res != null)
-				res.getContents().remove(root);
-			else {
-				EStructuralFeature feature = root.eContainmentFeature();
-				if (feature != null)
-					eUnsetOrRemove(container, feature, root);
-			}
-		
-	}
-
-	/**
-	 * Turns this object and all it's children to proxies, and removes adapters precondition: The
-	 * object has been removed from it's container
-	 */
-	public static void becomeProxy(EObject root, Resource res) {
-		Iterator iter = root.eAllContents();
-		while (iter.hasNext()) {
-			doBecomeProxy((InternalEObject) iter.next(), res);
-		}
-		doBecomeProxy((InternalEObject) root, res);
-	}
-
-	protected static void doBecomeProxy(InternalEObject p, Resource res) {
-		String id = res.getURIFragment(p);
-		p.eSetProxyURI(res.getURI().appendFragment(id));
-		if (res instanceof XMLResource) {
-			((XMLResource) res).setID(p,null);
-		}
-		p.eAdapters().clear();
-	}
-
-	public static void removeProxy(EObject root, Resource res) {
-		Iterator iter = root.eAllContents();
-		while (iter.hasNext()) {
-			doRemoveProxy((InternalEObject) iter.next(), res);
-		}
-		doRemoveProxy((InternalEObject) root, res);
-	}
-
-	protected static void doRemoveProxy(InternalEObject p, Resource res) {
-		String id = p.eProxyURI().fragment();
-		if (res instanceof XMLResource) {
-			((XMLResource) res).setID(p, id);
-		}
-		p.eSetProxyURI(null);
-	}
-
-
-	/**
-	 * Ensures the passed object is not a proxy; if it is, throws an exception indicating the bad
-	 * HREF. If the object is null, does nothing.
-	 * 
-	 * @param object
-	 * @throws DanglingHREFException
-	 */
-	public static void checkProxy(EObject object) throws DanglingHREFException {
-		if (object == null || !object.eIsProxy())
-			return;
-		String msg = WFTUtilsResourceHandler.getString(WFTUtilsResourceHandler.DANGLING_HREF_ERROR_, new Object[]{((InternalEObject) object).eProxyURI()});
-		throw new DanglingHREFException(msg);
-	}
-
-	/**
-	 * Return true if o1 and o2 are not the same values. This implementation takes into account that
-	 * either parameter can be null.
-	 * 
-	 * @param o1
-	 * @param o2
-	 * @return
-	 */
-	public static boolean valueChanged(Object o1, Object o2) {
-		return (o1 == null ^ o2 == null) || (o1 == null || !o1.equals(o2));
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/FeatureValueConversionException.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/FeatureValueConversionException.java
deleted file mode 100644
index 0525a1f..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/FeatureValueConversionException.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-public class FeatureValueConversionException extends RuntimeException {
-
-	/**
-	 * Constructor for FeatureValueConversionException.
-	 */
-	public FeatureValueConversionException() {
-		super();
-	}
-
-	/**
-	 * Constructor for FeatureValueConversionException.
-	 * 
-	 * @param s
-	 */
-	public FeatureValueConversionException(String s) {
-		super(s);
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/FeatureValueConverter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/FeatureValueConverter.java
deleted file mode 100644
index 786a687..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/FeatureValueConverter.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-/**
- * Insert the type's description here. Creation date: (5/10/2001 2:46:54 PM)
- * 
- * @author: Administrator
- */
-public interface FeatureValueConverter {
-	static final FeatureValueConverter DEFAULT = new DefaultFeatureValueConverter();
-
-	/**
-	 * Convert
-	 * 
-	 * @aValue to the type of
-	 * @aFeature.
-	 */
-	Object convertValue(Object aValue, EStructuralFeature aFeature);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ICommand.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ICommand.java
deleted file mode 100644
index 5ed817b..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ICommand.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * @author John Mourra
- */
-public interface ICommand {
-
-	/*
-	 * This will contain the multi-selection of objects to deploy. This selection could be used to
-	 * filter elements within a Module. Any other setup code should be done here...
-	 */
-	void init(Object[] selection);
-
-	/**
-	 * @param resource
-	 * @param delta
-	 * @param context
-	 * @return
-	 * @throws CoreException
-	 */
-	public boolean execute(IResource resource, IResourceDelta delta, ICommandContext context) throws CoreException;
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ICommandContext.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ICommandContext.java
deleted file mode 100644
index e642717..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ICommandContext.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import java.util.Map;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-
-/**
- * @author John Mourra
- */
-public interface ICommandContext {
-
-	/**
-	 * @return
-	 */
-	public IProgressMonitor getProgressMonitor();
-
-	/**
-	 * @return
-	 */
-	public Map getConfigurationProperties();
-
-	/**
-	 * @return
-	 */
-	public ResourceSet getResourceSet();
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/IDUtil.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/IDUtil.java
deleted file mode 100644
index 388986c..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/IDUtil.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.xmi.XMLResource;
-
-public class IDUtil {
-
-	/**
-	 * This method is invoked to assign a unique ID to the object. The object must be contained in a
-	 * resource.
-	 */
-	public static void assignID(EObject object) {
-		Resource aResource = object.eResource();
-		if (aResource instanceof XMLResource)
-			assignID(object, (XMLResource) aResource);
-
-	}
-
-	public static String getOrAssignID(EObject object) {
-		Resource aResource = object.eResource();
-		if (aResource instanceof XMLResource)
-			return getOrAssignID(object, (XMLResource) aResource);
-		return null;
-	}
-
-	public static String getOrAssignID(EObject object, XMLResource aResource) {
-		String id = aResource.getID(object);
-		if (id == null)
-			return assignID(object, aResource);
-		return id;
-	}
-
-	public static String assignID(EObject object, XMLResource aResource) {
-		String name = getBaseIDForAssignment(object);
-		if (name == null)
-			return null;
-		String id = ensureUniqueID(aResource, name);
-		aResource.setID(object, id);
-		return id;
-	}
-
-	protected static String ensureUniqueID(XMLResource aResource, String baseIDName) {
-		baseIDName += "_"; //$NON-NLS-1$
-		//Change to use the current time instead of incremental numbers to help
-		//support team development.
-		long currentTime = System.currentTimeMillis();
-		String id = baseIDName + currentTime;
-		while (aResource.getEObject(id) != null) {
-			++currentTime;
-			id = baseIDName + currentTime;
-		}
-		return id;
-	}
-
-	protected static String getBaseIDForAssignment(EObject object) {
-		EClass metaO = object.eClass();
-		return metaO.getName();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/InvalidPasswordCipherException.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/InvalidPasswordCipherException.java
deleted file mode 100644
index 5ff513b..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/InvalidPasswordCipherException.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import org.omg.CORBA.UserException;
-
-public class InvalidPasswordCipherException extends UserException {
-}
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/InvalidPasswordDecodingException.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/InvalidPasswordDecodingException.java
deleted file mode 100644
index 2e16808..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/InvalidPasswordDecodingException.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import org.omg.CORBA.UserException;
-
-public class InvalidPasswordDecodingException extends UserException {
-}
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/InvalidPasswordEncodingException.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/InvalidPasswordEncodingException.java
deleted file mode 100644
index dd882d7..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/InvalidPasswordEncodingException.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import org.omg.CORBA.UserException;
-
-public class InvalidPasswordEncodingException extends UserException {
-}
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/IsLoadingDetector.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/IsLoadingDetector.java
deleted file mode 100644
index d7d114c..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/IsLoadingDetector.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-/*
- * Created on Apr 1, 2003
- * 
- * To change the template for this generated file go to Window>Preferences>Java>Code Generation>Code
- * and Comments
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-
-
-public class IsLoadingDetector implements Adapter {
-	public static final IsLoadingDetector INSTANCE = new IsLoadingDetector();
-
-	private IsLoadingDetector() {
-	}
-
-	public void notifyChanged(Notification notification) {
-	}
-
-	public Notifier getTarget() {
-		return null;
-	}
-
-	public void setTarget(Notifier newTarget) {
-	}
-
-	public boolean isAdapterForType(Object type) {
-		return type == this;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/IsLoadingProxyAdapter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/IsLoadingProxyAdapter.java
deleted file mode 100644
index a75b865..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/IsLoadingProxyAdapter.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 1, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-
-/**
- * @author DABERG
- * 
- * To change the template for this generated type comment go to Window>Preferences>Java>Code
- * Generation>Code and Comments
- */
-public class IsLoadingProxyAdapter extends AdapterImpl {
-	private Resource resource;
-	private Adapter targetAdapter;
-	private EObject targetObject;
-
-	public IsLoadingProxyAdapter(Adapter aTargetAdapter, EObject aTargetObject) {
-		targetAdapter = aTargetAdapter;
-		targetObject = aTargetObject;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.notify.impl.AdapterImpl#notifyChanged(org.eclipse.emf.common.notify.Notification)
-	 */
-	public void notifyChanged(Notification msg) {
-		if (resource != null) {
-			//listen for the remove of the loading adapter
-			if (msg.getFeatureID(null) == Resource.RESOURCE__IS_LOADED && msg.getEventType() == Notification.SET) {
-				removeProxySupport();
-				reset();
-			}
-		} else if (cacheResource()) {
-			targetAdapter.notifyChanged(msg);
-			reset();
-		}
-	}
-
-	/**
-	 * Cache the resource variable and return true if we removed the proxy support.
-	 */
-	private boolean cacheResource() {
-		if (getTarget() != null) {
-			EObject eObj = (EObject) getTarget();
-			resource = eObj.eResource();
-			if (resource != null) {
-				eObj.eAdapters().remove(this);
-				if (ExtendedEcoreUtil.isLoading(resource))
-					resource.eAdapters().add(this);
-				else {
-					targetObject.eAdapters().add(targetAdapter);
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	/**
-	 *  
-	 */
-	private void removeProxySupport() {
-		getTarget().eAdapters().remove(this);
-		targetObject.eAdapters().add(targetAdapter);
-	}
-
-	private void reset() {
-		resource = null;
-		targetAdapter = null;
-		targetObject = null;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Namespace.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Namespace.java
deleted file mode 100644
index 1a4a736..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Namespace.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-/*
- * Created on Aug 20, 2003
- *  
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-public class Namespace {
-
-	protected String prefix;
-	protected String nsURI;
-
-
-	public Namespace(String prefix, String uri) {
-		this.prefix = prefix;
-		this.nsURI = uri;
-	}
-
-	public String getNsURI() {
-		return nsURI;
-	}
-
-	public String getPrefix() {
-		return prefix;
-	}
-
-	public void setNsURI(String string) {
-		nsURI = string;
-	}
-
-	public void setPrefix(String string) {
-		prefix = string;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/NamespaceAdapter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/NamespaceAdapter.java
deleted file mode 100644
index 0bdac76..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/NamespaceAdapter.java
+++ /dev/null
@@ -1,205 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Aug 20, 2003
- *
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.common.notify.impl.NotificationImpl;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.impl.EStructuralFeatureImpl;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-
-
-/**
- * Internal class used to hold namespaces parsed from an XML file using the xmlns:prefix="aURI"
- * syntax
- */
-public class NamespaceAdapter extends AdapterImpl implements CloneablePublic {
-
-	protected final static String ADAPTER_TYPE = NamespaceAdapter.class.getName();
-	protected Map prefixesToNS;
-	protected List namespaces;
-
-	public final static EStructuralFeature NOTIFICATION_FEATURE = new EStructuralFeatureImpl() {
-	};
-
-	private static class Notification extends NotificationImpl {
-
-		/**
-		 * @param eventType
-		 * @param oldValue
-		 * @param newValue
-		 */
-		public Notification(int eventType, Object oldValue, Object newValue) {
-			super(eventType, oldValue, newValue);
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.emf.common.notify.impl.NotificationImpl#getFeature()
-		 */
-		public Object getFeature() {
-			return NOTIFICATION_FEATURE;
-		}
-	}
-
-	protected NamespaceAdapter() {
-		super();
-	}
-
-	public static void addNamespace(String prefix, String uri, EObject obj) {
-		if (obj == null)
-			return;
-		NamespaceAdapter adapter = getAdapter(obj);
-		if (adapter != null)
-			adapter.addNamespace(prefix, uri);
-	}
-
-	public static void removeNamespace(String prefix, EObject obj) {
-		if (obj == null)
-			return;
-		NamespaceAdapter adapter = retrieveExistingAdapter(obj);
-		if (adapter != null)
-			adapter.removeNamespace(prefix);
-	}
-
-	/**
-	 * Facade method for resolving prefixes to an actual namespace URI. Used for objects contained
-	 * by instances of {@link com.ibm.etools.emf2xml.TranslatorResource}. Walks up the object
-	 * containment path until a namespace is found, or returns null.
-	 */
-	public static String getResolvedNamespaceURI(String prefix, EObject obj) {
-		if (prefix == null || obj == null)
-			return null;
-		EObject container = obj;
-		String nsURI;
-		while (container != null) {
-			nsURI = getNamespaceURIAtThisLevel(prefix, container);
-			if (nsURI != null)
-				return nsURI;
-			container = container.eContainer();
-		}
-		return null;
-	}
-
-	public static String getNamespaceURIAtThisLevel(String prefix, EObject obj) {
-		if (obj == null)
-			return null;
-		NamespaceAdapter adapter = retrieveExistingAdapter(obj);
-		return adapter == null ? null : adapter.getNamespaceURI(prefix);
-	}
-
-	public static List getNamespaces(EObject obj) {
-		if (obj == null)
-			return Collections.EMPTY_LIST;
-		NamespaceAdapter adapter = retrieveExistingAdapter(obj);
-		return adapter == null ? null : adapter.getNamespaces();
-
-	}
-
-	protected static NamespaceAdapter retrieveExistingAdapter(EObject obj) {
-		return (NamespaceAdapter) EcoreUtil.getExistingAdapter(obj, ADAPTER_TYPE);
-	}
-
-	protected static NamespaceAdapter getAdapter(EObject obj) {
-		NamespaceAdapter adapter = retrieveExistingAdapter(obj);
-		return adapter == null ? createAdapter(obj) : adapter;
-	}
-
-	protected static NamespaceAdapter createAdapter(EObject obj) {
-		NamespaceAdapter adapter = new NamespaceAdapter();
-		adapter.setTarget(obj);
-		obj.eAdapters().add(adapter);
-		return adapter;
-	}
-
-	protected void addNamespace(String prefix, String uri) {
-		Namespace ns = new Namespace(prefix, uri);
-		if (namespaces == null)
-			namespaces = new ArrayList();
-		if (prefixesToNS == null)
-			prefixesToNS = new HashMap();
-
-		prefixesToNS.put(prefix, ns);
-		namespaces.add(ns);
-		fireNotification(org.eclipse.emf.common.notify.Notification.ADD, null, ns);
-
-	}
-
-	protected void removeNamespace(String prefix) {
-		Namespace ns = null;
-		if (prefixesToNS != null)
-			ns = (Namespace) prefixesToNS.get(prefix);
-
-		if (ns != null)
-			namespaces.remove(ns);
-		fireNotification(org.eclipse.emf.common.notify.Notification.REMOVE, ns, null);
-	}
-
-	protected String getNamespaceURI(String prefix) {
-		if (prefixesToNS == null)
-			return null;
-		Namespace ns = (Namespace) prefixesToNS.get(prefix);
-		if (ns != null)
-			return ns.getNsURI();
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.notify.impl.AdapterImpl#isAdapterForType(java.lang.Object)
-	 */
-	public boolean isAdapterForType(Object type) {
-		return ADAPTER_TYPE.equals(type);
-	}
-
-	public List getNamespaces() {
-		return namespaces == null ? Collections.EMPTY_LIST : Collections.unmodifiableList(namespaces);
-	}
-
-	protected void fireNotification(int type, Object oldValue, Object newValue) {
-		if (target != null)
-			target.eNotify(new Notification(type, oldValue, newValue));
-	}
-
-	public boolean hasNamespaces() {
-		return namespaces != null && !namespaces.isEmpty();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf.ecore.utilities.CloneablePublic#clone()
-	 */
-	public Object clone() {
-		NamespaceAdapter result = new NamespaceAdapter();
-		if (hasNamespaces()) {
-			for (int i = 0; i < namespaces.size(); i++) {
-				Namespace ns = (Namespace) namespaces.get(i);
-				result.addNamespace(ns.getPrefix(), ns.getNsURI());
-			}
-		}
-		return result;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PassthruEncoderDecoder.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PassthruEncoderDecoder.java
deleted file mode 100644
index e684059..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PassthruEncoderDecoder.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-/**
- * A passthru EncoderDecoder implementation
- */
-public class PassthruEncoderDecoder extends EncoderDecoderAdapter implements EncoderDecoder {
-	public static final PassthruEncoderDecoder INSTANCE = new PassthruEncoderDecoder();
-	public static final String KEY = PassthruEncoderDecoder.class.getName();
-
-	/**
-	 * EncoderDecoderAdapter constructor comment.
-	 */
-	private PassthruEncoderDecoder() {
-		super();
-	}
-
-	/**
-	 * Returns a decoded version of the value.
-	 */
-	public String decode(String value) {
-		return value;
-	}
-
-	/**
-	 * Returns an encoded version of the value.
-	 */
-	public String encode(String value) {
-		return value;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PasswordCipherUtil.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PasswordCipherUtil.java
deleted file mode 100644
index f237158..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PasswordCipherUtil.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-public class PasswordCipherUtil {
-	private static final String DEFAULT_SUPPORTED_CRYPTO_ALGORITHMS[] = {"xor"}; //$NON-NLS-1$
-	private static String _supported_crypto_algorithms[];
-
-	public PasswordCipherUtil() {
-	}
-
-	public static byte[] decipher(byte abyte0[], String s) throws InvalidPasswordCipherException, UnsupportedCryptoAlgorithmException {
-		if (s == null)
-			throw new UnsupportedCryptoAlgorithmException();
-		byte abyte1[] = null;
-		if (s.equalsIgnoreCase(DEFAULT_SUPPORTED_CRYPTO_ALGORITHMS[0]))
-			abyte1 = xor(abyte0);
-		else
-			throw new UnsupportedCryptoAlgorithmException();
-
-		if (abyte1 == null)
-			throw new InvalidPasswordCipherException();
-
-		return abyte1;
-	}
-
-	public static byte[] encipher(byte abyte0[], String s) throws InvalidPasswordCipherException, UnsupportedCryptoAlgorithmException {
-		if (s == null)
-			throw new UnsupportedCryptoAlgorithmException();
-		byte abyte1[] = null;
-		if (s.equalsIgnoreCase(DEFAULT_SUPPORTED_CRYPTO_ALGORITHMS[0]))
-			abyte1 = xor(abyte0);
-		else
-			throw new UnsupportedCryptoAlgorithmException();
-
-		if (abyte1 == null)
-			throw new InvalidPasswordCipherException();
-		return abyte1;
-	}
-
-	public static String[] getSupportedCryptoAlgorithms() {
-		return _supported_crypto_algorithms;
-	}
-
-	private static byte[] xor(byte abyte0[]) {
-		byte abyte1[] = null;
-		if (abyte0 != null) {
-			abyte1 = new byte[abyte0.length];
-			for (int i = 0; i < abyte0.length; i++)
-				abyte1[i] = (byte) (0x5f ^ abyte0[i]);
-		}
-		return abyte1;
-	}
-
-	static {
-		_supported_crypto_algorithms = null;
-		if (_supported_crypto_algorithms == null)
-			_supported_crypto_algorithms = DEFAULT_SUPPORTED_CRYPTO_ALGORITHMS;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PasswordEncoderDecoder.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PasswordEncoderDecoder.java
deleted file mode 100644
index 2c82ced..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PasswordEncoderDecoder.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-public class PasswordEncoderDecoder extends EncoderDecoderAdapter implements EncoderDecoder {
-	public static final String KEY = "password-security-coder"; //$NON-NLS-1$
-
-	public PasswordEncoderDecoder() {
-	}
-
-	public String decode(String s) {
-		return PasswordUtil.passwordDecode(s);
-	}
-
-	public String encode(String s) {
-		return PasswordUtil.passwordEncode(s);
-	}
-
-	public Object getKey() {
-		return KEY;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PasswordUtil.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PasswordUtil.java
deleted file mode 100644
index 012f2c2..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PasswordUtil.java
+++ /dev/null
@@ -1,331 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import java.io.UnsupportedEncodingException;
-
-public class PasswordUtil {
-	public static final String STRING_CONVERSION_CODE = "UTF8"; //$NON-NLS-1$
-	public static final String EMPTY_STRING = ""; //$NON-NLS-1$
-	public static final byte[] EMPTY_BYTE_ARRAY = new byte[0];
-	public static final String DEFAULT_CRYPTO_ALGORITHM;
-	private static final String SUPPORTED_CRYPTO_ALGORITHMS[];
-	private static final byte BASE64_ENCODE_MAP[];
-	private static final byte BASE64_DECODE_MAP[];
-
-	public PasswordUtil() {
-	}
-
-	public static String decode(String s) throws InvalidPasswordDecodingException, UnsupportedCryptoAlgorithmException {
-		if (s == null)
-			throw new InvalidPasswordDecodingException();
-		String s1 = getCryptoAlgorithm(s);
-		if (s1 == null)
-			throw new InvalidPasswordDecodingException();
-
-		if (!isValidCryptoAlgorithm(s1))
-			throw new UnsupportedCryptoAlgorithmException();
-
-		String s2 = decode_password(removeCryptoAlgorithmTag(s), s1);
-		if (s2 == null)
-			throw new InvalidPasswordDecodingException();
-		return s2;
-	}
-
-	public static String encode(String s) throws InvalidPasswordEncodingException, UnsupportedCryptoAlgorithmException {
-		return encode(s, DEFAULT_CRYPTO_ALGORITHM);
-	}
-
-	public static String encode(String s, String s1) throws InvalidPasswordEncodingException, UnsupportedCryptoAlgorithmException {
-		if (!isValidCryptoAlgorithm(s1))
-			throw new UnsupportedCryptoAlgorithmException();
-		if (s == null)
-			throw new InvalidPasswordEncodingException();
-
-		if (getCryptoAlgorithm(s) != null)
-			throw new InvalidPasswordEncodingException();
-
-		String s2 = encode_password(s.trim(), s1.trim());
-		if (s2 == null)
-			throw new InvalidPasswordEncodingException();
-		return s2;
-	}
-
-	public static String getCryptoAlgorithm(String s) {
-		String s1 = null;
-		if (s != null) {
-			s = s.trim();
-			if (s.length() >= 2) {
-				int i = s.indexOf("{"); //$NON-NLS-1$
-				if (i == 0) {
-					int j = s.indexOf("}", ++i); //$NON-NLS-1$
-					if (j > 0)
-						if (i < j)
-							s1 = s.substring(i, j).trim();
-						else
-							s1 = EMPTY_STRING;
-				}
-			}
-		}
-		return s1;
-	}
-
-	public static String getCryptoAlgorithmTag(String s) {
-		String s1 = null;
-		String s2 = getCryptoAlgorithm(s);
-		if (s2 != null) {
-			StringBuffer stringbuffer = new StringBuffer("{"); //$NON-NLS-1$
-			if (s2.length() > 0)
-				stringbuffer.append(s2);
-			stringbuffer.append("}"); //$NON-NLS-1$
-			s1 = stringbuffer.toString();
-		}
-		return s1;
-	}
-
-	public static boolean isValidCryptoAlgorithm(String s) {
-		if (s != null) {
-			s = s.trim();
-			if (s.length() == 0)
-				return true;
-			for (int i = 0; i < SUPPORTED_CRYPTO_ALGORITHMS.length; i++)
-				if (s.equalsIgnoreCase(SUPPORTED_CRYPTO_ALGORITHMS[i]))
-					return true;
-		}
-		return false;
-	}
-
-	public static boolean isValidCryptoAlgorithmTag(String s) {
-		return isValidCryptoAlgorithm(getCryptoAlgorithm(s));
-	}
-
-	public static String passwordDecode(String s) {
-		if (s == null)
-			return null;
-		String s1 = getCryptoAlgorithm(s);
-		if (s1 == null)
-			return s;
-		if (!isValidCryptoAlgorithm(s1))
-			return null;
-		return decode_password(removeCryptoAlgorithmTag(s), s1);
-	}
-
-	public static String passwordEncode(String s) {
-		return passwordEncode(s, DEFAULT_CRYPTO_ALGORITHM);
-	}
-
-	public static String passwordEncode(String s, String s1) {
-		if (!isValidCryptoAlgorithm(s1))
-			return null;
-		if (s == null)
-			return null;
-		String s2 = getCryptoAlgorithm(s);
-		if (s2 != null) {
-			if (s2.equalsIgnoreCase(s1.trim()))
-				return s.trim();
-			return null;
-		}
-		return encode_password(s.trim(), s1.trim());
-	}
-
-	public static String removeCryptoAlgorithmTag(String s) {
-		String s1 = null;
-		if (s != null) {
-			s = s.trim();
-			if (s.length() >= 2) {
-				int i = s.indexOf("{"); //$NON-NLS-1$
-				if (i == 0) {
-					int j = s.indexOf("}", ++i); //$NON-NLS-1$
-					if (j > 0)
-						if (++j < s.length())
-							s1 = s.substring(j).trim();
-						else
-							s1 = EMPTY_STRING;
-				}
-			}
-		}
-		return s1;
-	}
-
-	private static byte[] convert_to_bytes(String s) {
-		byte abyte0[] = null;
-		if (s != null)
-			if (s.length() == 0)
-				abyte0 = EMPTY_BYTE_ARRAY;
-			else
-				try {
-					abyte0 = s.getBytes(STRING_CONVERSION_CODE);
-				} catch (UnsupportedEncodingException unsupportedencodingexception) {
-					abyte0 = null;
-				}
-		return abyte0;
-	}
-
-	private static String convert_to_string(byte abyte0[]) {
-		String s = null;
-		if (abyte0 != null)
-			if (abyte0.length == 0)
-				s = EMPTY_STRING;
-			else
-				try {
-					s = new String(abyte0, STRING_CONVERSION_CODE);
-				} catch (UnsupportedEncodingException unsupportedencodingexception) {
-					s = null;
-				}
-		return s;
-	}
-
-	private static byte[] convert_viewable_to_bytes(String s) {
-		byte abyte0[] = null;
-		if (s != null)
-			if (s.length() == 0)
-				abyte0 = EMPTY_BYTE_ARRAY;
-			else
-				try {
-					abyte0 = base64Decode(convert_to_bytes(s));
-				} catch (Exception exception) {
-					abyte0 = null;
-				}
-		return abyte0;
-	}
-
-	private static byte[] base64Decode(byte abyte0[]) {
-		int i;
-		for (i = abyte0.length; abyte0[--i] == 61;);
-		byte abyte1[] = new byte[(i + 1) - abyte0.length / 4];
-		for (int j = 0; j < abyte0.length; j++)
-			abyte0[j] = BASE64_DECODE_MAP[abyte0[j]];
-		int k = abyte1.length - 2;
-		int l = 0;
-		int i1;
-		for (i1 = 0; l < k; i1 += 4) {
-			abyte1[l] = (byte) (abyte0[i1] << 2 & 0xff | abyte0[i1 + 1] >>> 4 & 0x3);
-			abyte1[l + 1] = (byte) (abyte0[i1 + 1] << 4 & 0xff | abyte0[i1 + 2] >>> 2 & 0xf);
-			abyte1[l + 2] = (byte) (abyte0[i1 + 2] << 6 & 0xff | abyte0[i1 + 3] & 0x3f);
-			l += 3;
-		}
-		if (l < abyte1.length) {
-			abyte1[l++] = (byte) (abyte0[i1] << 2 & 0xff | abyte0[i1 + 1] >>> 4 & 0x3);
-			if (l < abyte1.length)
-				abyte1[l] = (byte) (abyte0[i1 + 1] << 4 & 0xff | abyte0[i1 + 2] >>> 2 & 0xf);
-		}
-		return abyte1;
-	}
-
-	private static String convert_viewable_to_string(byte abyte0[]) {
-		String s = null;
-		if (abyte0 != null)
-			if (abyte0.length == 0)
-				s = EMPTY_STRING;
-			else
-				try {
-					s = convert_to_string(base64Encode(abyte0));
-				} catch (Exception exception) {
-					s = null;
-				}
-		return s;
-	}
-
-	private static byte[] base64Encode(byte abyte0[]) {
-		byte abyte1[] = new byte[((abyte0.length + 2) / 3) * 4];
-		int i = 0;
-		int j = 0;
-		for (; i < abyte0.length - 2; i += 3) {
-			abyte1[j++] = BASE64_ENCODE_MAP[abyte0[i] >>> 2 & 0x3f];
-			abyte1[j++] = BASE64_ENCODE_MAP[abyte0[i + 1] >>> 4 & 0xf | abyte0[i] << 4 & 0x3f];
-			abyte1[j++] = BASE64_ENCODE_MAP[abyte0[i + 2] >>> 6 & 0x3 | abyte0[i + 1] << 2 & 0x3f];
-			abyte1[j++] = BASE64_ENCODE_MAP[abyte0[i + 2] & 0x3f];
-		}
-		if (i < abyte0.length) {
-			abyte1[j++] = BASE64_ENCODE_MAP[abyte0[i] >>> 2 & 0x3f];
-			if (i < abyte0.length - 1) {
-				abyte1[j++] = BASE64_ENCODE_MAP[abyte0[i + 1] >>> 4 & 0xf | abyte0[i] << 4 & 0x3f];
-				abyte1[j++] = BASE64_ENCODE_MAP[abyte0[i + 1] << 2 & 0x3f];
-			} else {
-				abyte1[j++] = BASE64_ENCODE_MAP[abyte0[i] << 4 & 0x3f];
-			}
-		}
-		for (; j < abyte1.length; j++)
-			abyte1[j] = 61;
-		return abyte1;
-	}
-
-	private static String decode_password(String s, String s1) {
-		StringBuffer stringbuffer = new StringBuffer();
-		if (s1.length() == 0) {
-			stringbuffer.append(s);
-		} else {
-			String s2 = null;
-			if (s.length() > 0) {
-				byte abyte0[] = convert_viewable_to_bytes(s);
-				if (abyte0 == null)
-					return null;
-				if (abyte0.length > 0) {
-					byte abyte1[] = null;
-					try {
-						abyte1 = PasswordCipherUtil.decipher(abyte0, s1);
-					} catch (InvalidPasswordCipherException invalidpasswordcipherexception) {
-						return null;
-					} catch (UnsupportedCryptoAlgorithmException unsupportedcryptoalgorithmexception) {
-						return null;
-					}
-					if (abyte1 != null && abyte1.length > 0)
-						s2 = convert_to_string(abyte1);
-				}
-			}
-			if (s2 != null && s2.length() > 0)
-				stringbuffer.append(s2);
-		}
-		return stringbuffer.toString();
-	}
-
-	private static String encode_password(String s, String s1) {
-		StringBuffer stringbuffer = new StringBuffer("{"); //$NON-NLS-1$
-		if (s1.length() == 0) {
-			stringbuffer.append("}").append(s); //$NON-NLS-1$
-		} else {
-			stringbuffer.append(s1).append("}"); //$NON-NLS-1$
-			String s2 = null;
-			if (s.length() > 0) {
-				byte abyte0[] = convert_to_bytes(s);
-				if (abyte0.length > 0) {
-					byte abyte1[] = null;
-					try {
-						abyte1 = PasswordCipherUtil.encipher(abyte0, s1);
-					} catch (InvalidPasswordCipherException invalidpasswordcipherexception) {
-						return null;
-					} catch (UnsupportedCryptoAlgorithmException unsupportedcryptoalgorithmexception) {
-						return null;
-					}
-					if (abyte1 != null && abyte1.length > 0) {
-						s2 = convert_viewable_to_string(abyte1);
-						if (s2 == null)
-							return null;
-					}
-				}
-			}
-			if (s2 != null && s2.length() > 0)
-				stringbuffer.append(s2);
-		}
-		return stringbuffer.toString();
-	}
-
-	static {
-		SUPPORTED_CRYPTO_ALGORITHMS = PasswordCipherUtil.getSupportedCryptoAlgorithms();
-		DEFAULT_CRYPTO_ALGORITHM = SUPPORTED_CRYPTO_ALGORITHMS[0];
-		byte abyte0[] = {65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 43, 47};
-		BASE64_ENCODE_MAP = abyte0;
-		BASE64_DECODE_MAP = new byte[128];
-		for (int i = 0; i < BASE64_DECODE_MAP.length; i++)
-			BASE64_DECODE_MAP[i] = -1;
-		for (int j = 0; j < BASE64_ENCODE_MAP.length; j++)
-			BASE64_DECODE_MAP[BASE64_ENCODE_MAP[j]] = (byte) j;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PleaseMigrateYourCodeError.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PleaseMigrateYourCodeError.java
deleted file mode 100644
index 5a548d6..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/PleaseMigrateYourCodeError.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-
-/**
- * @author mdelder
- *  
- */
-public class PleaseMigrateYourCodeError extends Error {
-
-	//TODO Delete me
-	public PleaseMigrateYourCodeError() {
-		super(WFTUtilsResourceHandler.PleaseMigrateYourCodeError_ERROR_0);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ResourceDependencyRegister.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ResourceDependencyRegister.java
deleted file mode 100644
index 34ff643..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ResourceDependencyRegister.java
+++ /dev/null
@@ -1,213 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.URIConverter;
-
-public class ResourceDependencyRegister {
-	protected static Map GLOBAL_DEPENDENCIES = new HashMap();
-	private static String RESOURCE_DEPENDENCY_TYPE = "ResourceDependencyAdapter"; //$NON-NLS-1$
-	protected Map localDependencies = new HashMap();
-
-	class ResourceDependencyAdapter extends AdapterImpl {
-		Resource dependentResource;
-
-		ResourceDependencyAdapter(Resource aDependentResource) {
-			dependentResource = aDependentResource;
-			dependentResource.eAdapters().add(this);
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.emf.common.notify.impl.AdapterImpl#isAdapterForType(java.lang.Object)
-		 */
-		public boolean isAdapterForType(Object type) {
-			return RESOURCE_DEPENDENCY_TYPE.equals(type);
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.emf.common.notify.impl.AdapterImpl#notifyChanged(org.eclipse.emf.common.notify.Notification)
-		 */
-		public void notifyChanged(Notification msg) {
-			//Listen for unloads and removes
-			switch (msg.getFeatureID(null)) {
-				case Resource.RESOURCE__IS_LOADED :
-					if (msg.getNotifier() != dependentResource && msg.getOldBooleanValue() && !msg.getNewBooleanValue())
-						dependentResource.unload();
-					break;
-				case Resource.RESOURCE__RESOURCE_SET :
-					if (msg.getOldValue() != null && msg.getNewValue() == null) {
-						if (msg.getNotifier() == dependentResource)
-							((Resource) getTarget()).eAdapters().remove(this);
-						else {
-							ResourceSet set = dependentResource.getResourceSet();
-							if (set != null)
-								set.getResources().remove(dependentResource);
-						}
-					}
-					break;
-			}
-		}
-	}
-
-	class ResourceSetListener extends AdapterImpl {
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.emf.common.notify.impl.AdapterImpl#notifyChanged(org.eclipse.emf.common.notify.Notification)
-		 */
-		public void notifyChanged(Notification msg) {
-			if (msg.getEventType() == Notification.ADD)
-				proccessAddedResource((ResourceSet) msg.getNotifier(), (Resource) msg.getNewValue());
-		}
-	}
-
-	/**
-	 * Register a dependency between two URIs. The first parameter, aURIString, is the one that
-	 * dependentUriString depends on.
-	 * 
-	 * @param aUriString
-	 *            java.lang.String
-	 * @param dependentUriString
-	 *            java.lang.String
-	 */
-	public static void registerDependency(URI targetURI, URI dependentURI) {
-		if (targetURI != null && dependentURI != null) {
-			GLOBAL_DEPENDENCIES.put(dependentURI, targetURI);
-		}
-	}
-
-	public ResourceDependencyRegister(ResourceSet aResourceSet) {
-		initialize(aResourceSet);
-	}
-
-
-	ResourceDependencyRegister() {
-		super();
-	}
-
-	/**
-	 * @param aResourceSet
-	 */
-	protected void initialize(ResourceSet aResourceSet) {
-		if (aResourceSet == null)
-			throw new NullPointerException("The ResourceSet cannot be null."); //$NON-NLS-1$
-		initializeLocalDependencies(aResourceSet);
-		setupDependencyAdapters(aResourceSet);
-		setupResourceSetListener(aResourceSet);
-	}
-
-	/**
-	 * @param aResourceSet
-	 */
-	protected void setupResourceSetListener(ResourceSet aResourceSet) {
-		aResourceSet.eAdapters().add(new ResourceSetListener());
-	}
-
-	/**
-	 * @param aResourceSet
-	 * @return
-	 */
-	protected void setupDependencyAdapters(ResourceSet aResourceSet) {
-		if (!aResourceSet.getResources().isEmpty()) {
-			Iterator it = localDependencies.entrySet().iterator();
-			Map.Entry entry;
-			URI dependentURI, targetURI;
-			while (it.hasNext()) {
-				entry = (Map.Entry) it.next();
-				dependentURI = (URI) entry.getKey();
-				targetURI = (URI) entry.getValue();
-				setupDependencyAdapter(aResourceSet, dependentURI, targetURI);
-			}
-		}
-	}
-
-	/**
-	 * @param aResourceSet
-	 * @param dependentURI
-	 * @param targetURI
-	 * @return
-	 */
-	protected void setupDependencyAdapter(ResourceSet aResourceSet, URI dependentURI, URI targetURI) {
-		Resource dependent = aResourceSet.getResource(dependentURI, false);
-		if (dependent != null)
-			setupDependencyAdapter(dependent, targetURI, aResourceSet);
-	}
-
-	protected void setupDependencyAdapter(Resource dependent, URI targetURI, ResourceSet aResourceSet) {
-		Resource target = aResourceSet.getResource(targetURI, false);
-		if (target == null)
-			target = aResourceSet.createResource(targetURI);
-		target.eAdapters().add(new ResourceDependencyAdapter(dependent));
-	}
-
-	/**
-	 * @param aResourceSet
-	 */
-	protected void initializeLocalDependencies(ResourceSet aResourceSet) {
-		URIConverter converter = aResourceSet.getURIConverter();
-		initializeLocalDependencies(converter);
-	}
-
-	/**
-	 * @param aResourceSet
-	 */
-	protected void initializeLocalDependencies(URIConverter aConverter) {
-		Iterator it = GLOBAL_DEPENDENCIES.entrySet().iterator();
-		Map resolved = new HashMap();
-		Map.Entry entry;
-		URI key, value;
-		while (it.hasNext()) {
-			entry = (Map.Entry) it.next();
-			key = (URI) entry.getKey();
-			value = (URI) entry.getValue();
-			key = normalize(key, aConverter, resolved);
-			value = normalize(value, aConverter, resolved);
-			localDependencies.put(key, value);
-		}
-	}
-
-	/**
-	 * @param relativeURI
-	 * @param converter
-	 * @param resolved
-	 * @return
-	 */
-	protected URI normalize(URI relativeURI, URIConverter converter, Map resolved) {
-		URI result = (URI) resolved.get(relativeURI);
-		if (result == null) {
-			result = converter.normalize(relativeURI);
-			resolved.put(relativeURI, result);
-		}
-		return result;
-	}
-
-	/**
-	 * @param set
-	 * @param resource
-	 */
-	protected void proccessAddedResource(ResourceSet set, Resource resource) {
-		URI targetURI = (URI) localDependencies.get(resource.getURI());
-		if (targetURI != null)
-			setupDependencyAdapter(resource, targetURI, set);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ResourceIsLoadingAdapter.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ResourceIsLoadingAdapter.java
deleted file mode 100644
index d36ea59..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ResourceIsLoadingAdapter.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Oct 26, 2004
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-
-/**
- * @author mdelder
- */
-public class ResourceIsLoadingAdapter extends AdapterImpl implements Adapter {
-
-    private static final Class RESOURCE_IS_LOADING_ADAPTER_CLASS = ResourceIsLoadingAdapter.class;
-
-    public ResourceIsLoadingAdapter() {
-    }
-
-    public static ResourceIsLoadingAdapter findAdapter(Resource aResource) {
-        ResourceIsLoadingAdapter adapter = null;
-        //System.out.println("ResourceIsLoadingAdapter Synchronizing on " + aResource);
-        
-        /* Synchronize on the Resource (which will be the target of 
-         * the ResourceIsLoadingAdapter in the list, if it exists).
-         * 
-         * removeIsLoadingSupport() will coordinate with this 
-         * synchronization.
-         */
-        synchronized(aResource.eAdapters()) {
-        	adapter = (ResourceIsLoadingAdapter) EcoreUtil.getAdapter(aResource.eAdapters(), ResourceIsLoadingAdapter.class);
-        }
-        
-        return adapter;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.emf.common.notify.Adapter#notifyChanged(org.eclipse.emf.common.notify.Notification)
-     */
-    public void notifyChanged(Notification notification) {
-
-        if (notification.getNotifier() != null) {
-
-            // listen for the remove of the loading adapter
-            if (isSetLoadedResourceNotification(notification)) removeIsLoadingSupport();
-        }
-    }
-
-    /**
-     * Default implementation is a no-op.
-     */
-    public void waitForResourceToLoad() {
-
-    }
-
-    /**
-     * @param notification
-     * @return
-     */
-    protected boolean isSetLoadedResourceNotification(Notification notification) {
-        return notification.getFeatureID(null) == Resource.RESOURCE__IS_LOADED && notification.getEventType() == Notification.SET;
-    }
-
-    protected void removeIsLoadingSupport() {
-
-        /* Synchronize on the target of the Adapter. If 
-         * the list of adapters is searched for a 
-         * ResourceIsLoadingAdapter using the 
-         * ResourceIsLoadingAdapter.findAdapter() API, then
-         * the access to remove the Adapter using this method 
-         * will be coordinated.  
-         */
-        if (getTarget() != null) {
-            //System.out.println("ResourceIsLoadingAdapter Synchronizing on " + getTarget());
-            synchronized (getTarget().eAdapters()) {
-                getTarget().eAdapters().remove(this);
-            }
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.emf.common.notify.Adapter#isAdapterForType(java.lang.Object)
-     */
-    public boolean isAdapterForType(Object type) {
-        return type == RESOURCE_IS_LOADING_ADAPTER_CLASS;
-    }
-
-    /**
-     * 
-     */
-    public void forceRelease() {
-
-    }
-
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ResourceIsLoadingAdapterFactory.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ResourceIsLoadingAdapterFactory.java
deleted file mode 100644
index 5899f5d..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/ResourceIsLoadingAdapterFactory.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Oct 26, 2004
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-/**
- * @author mdelder
- * 
- */
-public class ResourceIsLoadingAdapterFactory {
-
-    public static ResourceIsLoadingAdapterFactory INSTANCE = new ResourceIsLoadingAdapterFactory();
-         
-    public ResourceIsLoadingAdapter createResourceIsLoadingAdapter() {
-        return new ResourceIsLoadingAdapter();
-    }
-    
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Revisit.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Revisit.java
deleted file mode 100644
index 2ec67d4..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/Revisit.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-public class Revisit {
-
-	/**
-	 * Revisit constructor comment.
-	 */
-	public Revisit() {
-		super();
-	}
-
-	public static void revisit() {
-	}
-
-
-	public static void unComment() {
-	}
-
-	public static void toDo() {
-	}
-
-	public static void refactor() {
-	}
-
-	public static void removeDeprecatedMethod() {
-	}
-
-	public static void deleteMe() {
-	}
-
-	public static void reviewDesign() {
-	}
-}
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/StringUtil.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/StringUtil.java
deleted file mode 100644
index d1f2308..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/StringUtil.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 18, 2003
- *
- * To change this generated comment go to 
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.common.internal.emf.utilities;
-
-/**
- * @author schacher
- * 
- * To change this generated comment go to Window>Preferences>Java>Code Generation>Code and Comments
- */
-public class StringUtil {
-	/**
-	 * Enhanced equality check for two string parameters, that takes into consideration null values.
-	 * If both values are null, this will return true.
-	 * 
-	 * @param s1
-	 * @param s2
-	 * @return boolean
-	 */
-	public static boolean stringsEqual(String s1, String s2) {
-		if (s1 == null)
-			return s2 == null;
-		return s1.equals(s2);
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/TranslatorManager.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/TranslatorManager.java
deleted file mode 100644
index 79ee8b8..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/TranslatorManager.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.jem.util.RegistryReader;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.internal.emf.plugin.EcoreUtilitiesPlugin;
-import org.eclipse.wst.common.internal.emf.resource.Translator;
-
-/**
- * This is the TranslatorManager class used by the TranslatorService in order to discover
- * and cache all of the extended Translators to be used by EMF2DOMAdapterImpl.
- */
-public class TranslatorManager {
-	
-	/**
-	 * The singleton TranslatorManager instance
-	 */
-	private static final TranslatorManager INSTANCE = new TranslatorManager();
-	
-	/**
-	 * Cache of all the TranslatorDescriptors
-	 */
-	private final Set translators = new HashSet();
-	
-	/**
-	 * Default static empty array used when no descriptors found
-	 */
-	private static final TranslatorDescriptor[] NO_EXTENDED_TRANSLATORS = new TranslatorDescriptor[0];
-	
-	/**
-	 * Returns the singleton instance of the TranslatorManager
-	 * @return TranslatorManager INSTANCE
-	 */
-	public static TranslatorManager getInstance() {
-		return INSTANCE;
-	}
-
-	/**
-	 * Private constructor
-	 */
-	private TranslatorManager() {
-		new TranslatorRegistry().readRegistry();
-	}
-	
-	/**
-	 * Simple Registry Reader used by Translator Manager to recognize the Translator extensions
-	 */
-	private class TranslatorRegistry extends RegistryReader {
-		
-		/**
-		 * The Translator element of the extension point.
-		 */
-		public static final String TRANSLATOR = "translator"; //$NON-NLS-1$
-		
-		/**
-		 * Default constructor
-		 */
-		public TranslatorRegistry() {
-			super(EcoreUtilitiesPlugin.ID, EcoreUtilitiesPlugin.TRANSLATOR_EXTENSTION_POINT);
-		}
-
-		/**
-		 * Add the configuration element if it matchs the expected translator element name
-		 */
-		public boolean readElement(IConfigurationElement element) {
-			boolean result = false;
-			if (TRANSLATOR.equals(element.getName())) {
-				addTranslatorDescriptor(new TranslatorDescriptor(element));
-					result = true;
-			}
-			return result;
-		}
-	}
-
-	/**
-	 * Describes a Translator extension point element
-	 */
-	public class TranslatorDescriptor {
-	
-		/**
-		 * Qualified class name attribute
-		 */
-		public static final String CLASSNAME = "className"; //$NON-NLS-1$
-		
-		/**
-		 * The config element for this Descriptor
-		 */
-		private final IConfigurationElement configElement;
-		
-		/**
-		 * the cached qualified className value of this descriptor
-		 */
-		private String className;
-	
-		/**
-		 * Constructor
-		 * @param aConfigElement
-		 */
-		public TranslatorDescriptor(IConfigurationElement aConfigElement) {
-			super();
-			configElement = aConfigElement;
-			className = configElement.getAttribute(CLASSNAME);
-		}
-		
-		/**
-		 * Retrieve the cached value of the qualified class name of the extended Translator
-		 * @return String classname
-		 */
-		public String getClassName() {
-			return className;
-		}
-	
-		/**
-		 * Create the actual Translator instance from the configuration element.
-		 * @return Translator
-		 */
-		public Translator createTranslator() {
-			Translator instance = null;
-			try {
-				instance = (Translator) configElement.createExecutableExtension(CLASSNAME);
-			} catch (CoreException e) {
-				Logger.getLogger().logError(e);
-			}
-			return instance;
-		}
-	}
-	
-	/**
-	 * Add the TranslatorDescriptor to the cache of descriptor extensions.
-	 * @param descriptor
-	 */
-	private void addTranslatorDescriptor(TranslatorDescriptor descriptor) {
-		Assert.isNotNull(descriptor);
-		translators.add(descriptor);
-	}
-	
-	/**
-	 * Find all the associated TranslatorDescriptors for the Traslator extensions defined.
-	 * @return TranslatorDescriptor[]
-	 */
-	public TranslatorDescriptor[] findTranslators() {
-		List result = new ArrayList();
-		TranslatorDescriptor descriptor = null;
-		for (Iterator translatorsItr = translators.iterator(); translatorsItr.hasNext();) {
-			descriptor = (TranslatorDescriptor) translatorsItr.next();
-			result.add(descriptor);
-		}
-		if (result.size() == 0) {
-			return NO_EXTENDED_TRANSLATORS;
-		}
-		return (TranslatorDescriptor[]) result.toArray(new TranslatorDescriptor[result.size()]);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/TranslatorService.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/TranslatorService.java
deleted file mode 100644
index 4012a7b..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/TranslatorService.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.wst.common.internal.emf.resource.Translator;
-import org.eclipse.wst.common.internal.emf.utilities.TranslatorManager.TranslatorDescriptor;
-
-/**
- * This is the service class to deliver API to use to retrieve Translator extensions from
- * the TranslatorManager and its RegistryReader.
- */
-public class TranslatorService {
-
-	/**
-	 * Static Key value pair of descriptors as keys and Translator instances as values
-	 */
-	private static final Map translators = new HashMap();
-	
-	/**
-	 * Static empty array used when no extensions found
-	 */
-	// never used
-	//private static final Translator[] NO_TRANSLATORS = new Translator[0];
-	
-	/**
-	 * Singleton instance of the Translator service
-	 */
-	private static final TranslatorService INSTANCE = new TranslatorService();
-	
-	/**
-	 * Default constructor
-	 */
-	private TranslatorService() {
-		super();
-	}
-	
-	public static TranslatorService getInstance() {
-		return INSTANCE;
-	}
-	
-	/**
-	 * This will return the associated extension point TranslatorDescriptor objects from the manager
-	 * @return TranslatorDescriptor[]
-	 */
-	public TranslatorDescriptor[] getTranslatorDescriptors() {
-		return TranslatorManager.getInstance().findTranslators();
-	}
-	
-	/**
-     * This retrieves the extended Translators using the extension point manager and descriptors
-     * @return Translator[] (Note, the return value may contain null entries.)
-     */
-	public Translator[] getTranslators() {
-		TranslatorDescriptor[] descriptors = getTranslatorDescriptors();
-		Translator[] result = new Translator[descriptors.length];
-		//The result index could differ from the descriptors index.
-		int resultIndex = 0;
-		for (int i=0; i<descriptors.length; i++) {
-			Translator instance = getTranslator(descriptors[i]);
-			if (instance!=null) {
-				result[resultIndex] = instance;
-				resultIndex++;
-			}
-		}
-		return result;  
-    }
-	
-	/**
-	 * Retrieve the existing associated Translator instance for the descriptor, or create a new
-	 * one and cache on the Set.
-	 * 
-	 * @param translatorDescriptor
-	 * @return Translator associated with the descriptor
-	 */
-	public Translator getTranslator(TranslatorDescriptor translatorDescriptor) {
-		Translator translator = (Translator) translators.get(translatorDescriptor);
-		if (translator != null)
-			return translator;
-		
-		synchronized (translators) {
-			translator = translatorDescriptor.createTranslator();
-			if (translator != null)
-				translators.put(translatorDescriptor, translator);
-		}
-		return translator;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/UnsupportedCryptoAlgorithmException.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/UnsupportedCryptoAlgorithmException.java
deleted file mode 100644
index f71c66d..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/UnsupportedCryptoAlgorithmException.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import org.omg.CORBA.UserException;
-
-public class UnsupportedCryptoAlgorithmException extends UserException {
-}
-
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/WFTUtilsResourceHandler.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/WFTUtilsResourceHandler.java
deleted file mode 100644
index 6506318..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/WFTUtilsResourceHandler.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import org.eclipse.osgi.util.NLS;
-
-public class WFTUtilsResourceHandler extends NLS {
-	private static final String BUNDLE_NAME = "wftutils";//$NON-NLS-1$
-
-	private WFTUtilsResourceHandler() {
-		// Do not instantiate
-	}
-
-	public static String DANGLING_HREF_ERROR_;
-	public static String Integer_UI_;
-	public static String Failed_to_convert__0__to___ERROR_;
-	public static String Enumeration_UI_;
-	public static String Short_UI_;
-	public static String Character_UI_;
-	public static String Long_UI_;
-	public static String Double_UI_;
-	public static String ResourceDependencyRegister_ERROR_0;
-	public static String Float_UI_;
-	public static String Byte_UI_;
-	public static String Warning__Could_not_write_b_WARN_;
-	public static String Boolean_UI_;
-	public static String Stack_trace_of_nested_exce_ERROR_;
-	public static String MofObject_UI_;
-	public static String PleaseMigrateYourCodeError_ERROR_0;
-	public static String EMF2DOMAdapterImpl_ERROR_0;
-
-	static {
-		NLS.initializeMessages(BUNDLE_NAME, WFTUtilsResourceHandler.class);
-	}
-
-	public static String getString(String key, Object[] args) {
-		return NLS.bind(key, args);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/WriteBackHelper.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/WriteBackHelper.java
deleted file mode 100644
index 7a0aa43..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/WriteBackHelper.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-
-
-/**
- * @deprecated This class will be deleted. If you still need to use this class, please contact the
- *             WCCM team. A class which can be used in conjunction with Encoder/Decoders to save
- *             resources if they are made dirty by automatic encoding support. Usage Example:
- * 
- * <pre>
- * 
- * 
- * // Use the standard WebSphere password value encoder/decoder.
- * EncoderDecoderRegistry.getDefaultRegistry().setDefaultEncoderDecoder(new com.ibm.ejs.security.util.WASEncoderDecoder());
- * // Begin tracking changes...
- * WriteBackHelper.begin();
- * // Load a resource which may have un-encoded values...
- * // Note: The WCCM will attempt to detect un-encoded values.  If unencoded values
- * // are found, the value will be encoded, and the resource will be added to the
- * // WriteBackHelper.
- * Resource res = resourceSet.load(&quot;myResource&quot;);
- * // Ensure that any changes due to encoding are written back out.
- * WriteBackHelper.end();
- * </pre>
- */
-public class WriteBackHelper {
-	private Set dirtyObjects = new HashSet();
-	private boolean trackingChanges = false;
-	private static WriteBackHelper _instance;
-	static {
-		//Deprecated class
-		Revisit.deleteMe();
-	}
-
-	/**
-	 * Private constructor ensures proper usage through singleton.
-	 */
-	private WriteBackHelper() {
-		super();
-	}
-
-	/**
-	 * Adds a resource which is dirty, and needs to be saved.
-	 */
-	public void addDirtyObject(EObject dirtyObject) {
-		dirtyObjects.add(dirtyObject);
-	}
-
-	/**
-	 * Begin collecting objects which have changed.
-	 */
-	public void begin() {
-		trackingChanges = true;
-	}
-
-	/**
-	 * Attempts to save all dirty resources (if possible), then marks the resources as non-dirty.
-	 */
-	public void end() {
-		saveDirtyResources();
-		reset();
-		trackingChanges = false;
-	}
-
-	/**
-	 * Returns true if changes to mof objects are currently being tracked.
-	 */
-	public boolean isActive() {
-		return trackingChanges;
-	}
-
-	/**
-	 * Clears the list of dirty resources.
-	 */
-	protected void reset() {
-		dirtyObjects.clear();
-	}
-
-	/**
-	 * Attempts to save all dirty resources (if possible), then marks the resources as non-dirty.
-	 */
-	protected void saveDirtyResources() {
-		Set dirtyResources = new HashSet();
-		Iterator dirtyObjIter = dirtyObjects.iterator();
-		while (dirtyObjIter.hasNext()) {
-			EObject dirtyObject = (EObject) dirtyObjIter.next();
-			if (dirtyObject.eResource() != null && !dirtyResources.contains(dirtyObject)) {
-				dirtyResources.add(dirtyObject.eResource());
-			}
-		}
-		Iterator dirtyIter = dirtyResources.iterator();
-		while (dirtyIter.hasNext()) {
-			Resource dirtyResource = (Resource) dirtyIter.next();
-			try {
-				dirtyResource.save(Collections.EMPTY_MAP);
-			} catch (Exception e) {
-				warn(dirtyResource, e);
-			}
-		}
-	}
-
-	/**
-	 * Adds a resource which is dirty, and needs to be saved.
-	 */
-	public static WriteBackHelper singleton() {
-		if (_instance == null) {
-			_instance = new WriteBackHelper();
-		}
-		return _instance;
-	}
-
-	/**
-	 * Warn the user of problems during save.
-	 */
-	protected void warn(Resource res, Exception e) {
-		System.err.println(WFTUtilsResourceHandler.getString(WFTUtilsResourceHandler.Warning__Could_not_write_b_WARN_, new Object[]{res.getURI()}));
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/XMLValueEncoderDecoder.java b/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/XMLValueEncoderDecoder.java
deleted file mode 100644
index d9a1d2c..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/org/eclipse/wst/common/internal/emf/utilities/XMLValueEncoderDecoder.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emf.utilities;
-
-
-/**
- * An XML value escaping EncoderDecoder implementation
- */
-public class XMLValueEncoderDecoder extends EncoderDecoderAdapter implements EncoderDecoder {
-	/**
-	 * Identifies the last printable character in the Unicode range that is supported by the
-	 * encoding used with this serializer. For 8-bit encodings this will be either 0x7E or 0xFF. For
-	 * 16-bit encodings this will be 0xFFFF. Characters that are not printable will be escaped using
-	 * character references.
-	 */
-	private int _lastPrintable = 0x7E;
-	protected static XMLValueEncoderDecoder _singleton;
-
-	/**
-	 * EncoderDecoderAdapter constructor comment.
-	 */
-	public XMLValueEncoderDecoder() {
-		super();
-	}
-
-	/**
-	 * Returns a decoded version of the value.
-	 */
-	public String decode(String value) {
-		// NOT_IMPLEMENTED
-		return value;
-	}
-
-	/**
-	 * Escapes a string so it may be printed as text content or attribute value. Non printable
-	 * characters are escaped using character references. Where the format specifies a deault entity
-	 * reference, that reference is used (e.g. <tt>&amp;lt;</tt>).
-	 * 
-	 * @param source
-	 *            The string to escape
-	 */
-	public String encode(String value) {
-		StringBuffer sbuf = new StringBuffer(value.length());
-		String charRef = null;
-		char ch;
-		for (int i = 0; i < value.length(); ++i) {
-			ch = value.charAt(i);
-			// If there is a suitable entity reference for this
-			// character, print it. The list of available entity
-			// references is almost but not identical between
-			// XML and HTML.
-			charRef = getEntityRef(ch);
-			if (charRef != null) {
-				sbuf.append('&');
-				sbuf.append(charRef);
-				sbuf.append(';');
-			} else if ((ch >= ' ' && ch <= _lastPrintable && ch != 0xF7) || ch == '\n' || ch == '\r' || ch == '\t') {
-				// If the character is not printable, print as character reference.
-				// Non printables are below ASCII space but not tab or line
-				// terminator, ASCII delete, or above a certain Unicode threshold.
-				sbuf.append(ch);
-			} else {
-				sbuf.append("&#");//$NON-NLS-1$
-				sbuf.append(Integer.toString(ch));
-				sbuf.append(';');
-			}
-		}
-		return sbuf.toString();
-	}
-
-	public static String escape(String value) {
-		if (_singleton == null) {
-			_singleton = new XMLValueEncoderDecoder();
-		}
-		return _singleton.encode(value);
-	}
-
-	/**
-	 * Returns the suitable entity reference for this character value, or null if no such entity
-	 * exists. Calling this method with <tt>'&amp;'</tt> will return <tt>"&amp;amp;"</tt>.
-	 * 
-	 * @param ch
-	 *            Character value
-	 * @return Character entity name, or null
-	 */
-	protected String getEntityRef(char ch) {
-		// Encode special XML characters into the equivalent character references.
-		// These five are defined by default for all XML documents.
-		switch (ch) {
-			case '<' :
-				return "lt";//$NON-NLS-1$
-			case '>' :
-				return "gt";//$NON-NLS-1$
-			case '"' :
-				return "quot";//$NON-NLS-1$
-			case '\'' :
-				return "apos";//$NON-NLS-1$
-			case '&' :
-				return "amp";//$NON-NLS-1$
-		}
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emf/wtpemf/wftutils.properties b/plugins/org.eclipse.wst.common.emf/wtpemf/wftutils.properties
deleted file mode 100644
index 4b2e2ae..0000000
--- a/plugins/org.eclipse.wst.common.emf/wtpemf/wftutils.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-Warning__Could_not_write_b_WARN_=IWAE0008W Warning: Could not write back {0}
-Stack_trace_of_nested_exce_ERROR_=IWAE0009E Stack trace of nested exception:
-Enumeration_UI_=Enumeration
-Double_UI_=Double
-Float_UI_=Float
-Long_UI_=Long
-Short_UI_=Short
-Boolean_UI_=Boolean
-Integer_UI_=Integer
-Character_UI_=Character
-Byte_UI_=Byte
-Failed_to_convert__0__to___ERROR_=IWAE0014E Failed to convert {0} to {1}.
-DANGLING_HREF_ERROR_=IWAE0001E Unable to resolve HREF {0}. Check the descriptor files and ensure the ids are valid.
-MofObject_UI_=MofObject_UI_
-PleaseMigrateYourCodeError_ERROR_0=PleaseMigrateYourCodeError_ERROR_0
-EMF2DOMAdapterImpl_ERROR_0=EMF2DOMAdapterImpl_ERROR_0
-
-ResourceDependencyRegister_ERROR_0=IWAE0002E The ResourceSet cannot be null.
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/.classpath b/plugins/org.eclipse.wst.common.emfworkbench.integration/.classpath
deleted file mode 100644
index fe45152..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/.classpath
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="src" path="property_file"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
-		<accessrules>
-			<accessrule kind="accessible" pattern="org/eclipse/wst/common/**"/>
-			<accessrule kind="accessible" pattern="org/eclipse/wst/validation/**"/>
-			<accessrule kind="accessible" pattern="org/eclipse/jem/**"/>
-		</accessrules>
-	</classpathentry>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/.cvsignore b/plugins/org.eclipse.wst.common.emfworkbench.integration/.cvsignore
deleted file mode 100644
index 47e4670..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/.cvsignore
+++ /dev/null
@@ -1,7 +0,0 @@
-bin
-temp.folder
-build.xml
-emfworkbenchedit.jar
-@dot
-src.zip
-javaCompiler...args
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/.project b/plugins/org.eclipse.wst.common.emfworkbench.integration/.project
deleted file mode 100644
index afef01a..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.common.emfworkbench.integration</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/.settings/org.eclipse.jdt.core.prefs b/plugins/org.eclipse.wst.common.emfworkbench.integration/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 46468f9..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,62 +0,0 @@
-#Sat Mar 24 02:06:45 EDT 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nullReference=ignore
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=error
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLabel=error
-org.eclipse.jdt.core.compiler.problem.unusedLocal=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=ignore
-org.eclipse.jdt.core.compiler.source=1.3
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/META-INF/MANIFEST.MF b/plugins/org.eclipse.wst.common.emfworkbench.integration/META-INF/MANIFEST.MF
deleted file mode 100644
index 6afb47c..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,26 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.wst.common.emfworkbench.integration; singleton:=true
-Bundle-Version: 1.1.202.qualifier
-Bundle-Activator: org.eclipse.wst.common.internal.emfworkbench.integration.EMFWorkbenchEditPlugin
-Bundle-Vendor: %pluginVendor
-Bundle-Localization: plugin
-Export-Package: org.eclipse.wst.common.internal.emfworkbench;x-internal:=true,
- org.eclipse.wst.common.internal.emfworkbench.edit;x-internal:=true,
- org.eclipse.wst.common.internal.emfworkbench.integration;x-internal:=true,
- org.eclipse.wst.common.internal.emfworkbench.validateedit;x-internal:=true
-Require-Bundle: org.eclipse.wst.common.frameworks;bundle-version="[1.1.200,2.0.0)",
- org.eclipse.jem.util;bundle-version="[2.0.100,3.0.0)",
- org.eclipse.emf.edit;bundle-version="[2.4.0,3.0.0)",
- org.eclipse.emf.ecore.xmi;bundle-version="[2.4.0,3.0.0)",
- org.eclipse.wst.common.emf;bundle-version="[1.1.200,2.0.0)",
- org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.validation;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.wst.common.project.facet.core;bundle-version="[1.3.0,2.0.0)",
- org.eclipse.core.expressions;bundle-version="[3.4.0,4.0.0)"
-Eclipse-LazyStart: true
-Bundle-RequiredExecutionEnvironment: J2SE-1.4,
- J2SE-1.5
-Bundle-ActivationPolicy: lazy
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/about.html b/plugins/org.eclipse.wst.common.emfworkbench.integration/about.html
deleted file mode 100644
index 2199df3..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June, 2008</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in 
-("Content"). Unless otherwise indicated below, the Content is provided to you 
-under the terms and conditions of the Eclipse Public License Version 1.0 
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>. 
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the 
-Content is being redistributed by another party ("Redistributor") and different 
-terms and conditions may apply to your use of any object code in the Content. 
-Check the RedistributorÂ’s license that was provided with the Content. If no such 
-license exists, contact the Redistributor. Unless otherwise indicated below, the 
-terms and conditions of the EPL still apply to any source code in the Content 
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/build.properties b/plugins/org.eclipse.wst.common.emfworkbench.integration/build.properties
deleted file mode 100644
index a288ad7..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/build.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-source.. = src/,\
-                              property_file/
-output.. = bin/
-bin.includes = plugin.xml,\
-               .,\
-               META-INF/,\
-               about.html,\
-               plugin.properties
-src.includes = schema/
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/plugin.properties b/plugins/org.eclipse.wst.common.emfworkbench.integration/plugin.properties
deleted file mode 100644
index cdc1ce7..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/plugin.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2005, 2006 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-EMF_Resource_Edit_Model=EMF Resource Edit Model
-Edit_Model_Extensions=Edit Model Extensions
-Adapter_Factory_Extension=Adapter Factory Extension
-ModifierHelperFactory=ModifierHelperFactory
-pluginName=EMF Workbench Edit Plug-in
-pluginVendor=Eclipse.org
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/plugin.xml b/plugins/org.eclipse.wst.common.emfworkbench.integration/plugin.xml
deleted file mode 100644
index 5673b57..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/plugin.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <extension-point id="editModel" name="%EMF_Resource_Edit_Model" schema="schema/editModel.exsd"/>
-   <extension-point id="editModelExtension" name="%Edit_Model_Extensions" schema="schema/editModelExtension.exsd"/>
-   <extension-point id="adapterFactory" name="%Adapter_Factory_Extension" schema="schema/adapterFactory.exsd"/>
-   <extension-point id="ModifierHelperFactory" name="%ModifierHelperFactory" schema="schema/modifierHelperFactory.exsd"/>
-
-   <extension
-         point="org.eclipse.jem.util.internalWorkbenchContextFactory">
-      <factoryClass
-            name="org.eclipse.wst.common.internal.emfworkbench.edit.EMFWorkbenchEditContextFactory">
-      </factoryClass>
-   </extension>
-   
-   <extension
-        id="emfValidationHandler"
-        name="emfValidationHandler"
-        point="org.eclipse.wst.validation.validationSelectionHandler">
-      <validationSelectionHandler
-        id="emfValidationHandler"
-        handlerClass="org.eclipse.wst.common.internal.emfworkbench.EmfValidationHandler"
-        selectionType="org.eclipse.emf.ecore.EObject"/>
-   </extension>
-   
-   <extension point="org.eclipse.core.expressions.propertyTesters">
-    <propertyTester
-      id="org.eclipse.wst.common.internal.emfworkbench.EmfPackagePropertyTester"
-      type="org.eclipse.emf.ecore.EObject"
-      namespace="org.eclipse.wst.common.emfworkbench.integration"
-      properties="emfPackage"
-      class="org.eclipse.wst.common.internal.emfworkbench.EmfPackagePropertyTester">
-    </propertyTester>
-  </extension>
-  
-  <extension 
-       point="org.eclipse.jem.util.uiContextSensitiveClass">
-       <uiContextSensitiveClass
-          key="ValidateEditContext"
-          className="org.eclipse.wst.common.internal.emfworkbench.validateedit.ValidateEditHeadlessContext"
-          context="Headless">
-      </uiContextSensitiveClass>
-  </extension>
-  
-   
-</plugin>
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/prepareforpii.xml b/plugins/org.eclipse.wst.common.emfworkbench.integration/prepareforpii.xml
deleted file mode 100644
index 26d1d46..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/prepareforpii.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<project name="PrepareForPII" default="main" basedir=".">
-		
-	<!-- Setup temp variables -->
-	<target name="init">
-		<property name="nlsDir" value="d:/NLS/Corona/0526"/>
-		<property name="plugin" value="com.ibm.wtp.emf.workbench.edit"/>
-		<property name="plugindir" value="d:/workspaceCorona/${plugin}"/>
-		<property name="outputDir" value="${nlsDir}/${plugin}"/>
-		
-	
-	</target>
-
-	<!-- Create the destination dir -->
-	<target name="nlsDir" depends="init">
-		<mkdir dir="${nlsDir}"/>
-	</target>
-	
-	<!-- Create the destination dir -->
-	<target name="plugindir" depends="nlsDir">
-		<delete dir="${outputDir}"/>
-		<mkdir dir="${outputDir}"/>
-	</target>
-
-	<!-- Move the files to the correct locations in the workspace. -->
-	<target name="main" depends="plugindir">
-	
-		<messageIdGen folderPath = "${plugindir}" componentId = "E" />
-		
-		<copy todir = "${outputDir}/property_file" >
-			 <fileset dir="${plugindir}/property_file">
-           	  <include name="**/*.properties"/>
-  			 </fileset>
-  		</copy>
-
-  		
-	</target>
-</project>
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/property_file/emftosed.properties b/plugins/org.eclipse.wst.common.emfworkbench.integration/property_file/emftosed.properties
deleted file mode 100644
index 77d84df..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/property_file/emftosed.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-Unexpected_IO_exception_occurred_creating_xml_document_1_EXC_=IWAE0017E Unexpected IO exception occurred creating xml document
-EMF2DOMSedRenderer_UI_0={0} should not use an OutputStream for loading
-EMF2DOMSedRenderer_UI_1={0} should not use an InputStream for loading
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/property_file/emfworkbenchedit.properties b/plugins/org.eclipse.wst.common.emfworkbench.integration/property_file/emfworkbenchedit.properties
deleted file mode 100644
index 631d1c3..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/property_file/emfworkbenchedit.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-DynamicAdapterFactory_ERROR_0=IWAE0010E A null EPackage will not be tied to any Adapter Factory.
-ClientAccessRegistryException_UI_0=There are at least {0} improperly released edit models.
-ClientAccessRegistryException_UI_1=This exception was generated to indicate an invalid usage of reference counts.\n Typically, this occurs on attempts to open an already open artifact edit.\n Make sure the dispose method is called when done accessing.\n Please examine the stack trace.\n Client Access Exception of type {0} \n
-ClientAccessRegistry_ERROR_0=IWAE0011E Key already used to access Resource
-ClientAccessRegistry_ERROR_1=IWAE0012E Key has not properly accessed Resource.
-EditModelRegistry_ERROR_0=IWAE0013E The inheritance hierarchy for the Edit Model \"{0}\" contains a cycle. Please correct the entries in your plugin.xml files.
-EditModelRegistry_ERROR_1=IWAE0014E Could not create factory because IConfigurationElement is null.
-EditModelRegistry_ERROR_2=IWAE0015E No EditModelFactory for key \"{0}\"
-Snapshot_ERROR_0=IWAE0016E Locking Insurance Stack Trace
-AdapterFactoryDescriptor_ERROR_0=IWAE0017E A packageURI is required for all Adapter Factories
-AdapterFactoryDescriptor_ERROR_1=IWAE0018E An id is required for all Adapter Factories. Check all adapter factories defined in \"{0}\".
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/ModuleCore.genmodel b/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/ModuleCore.genmodel
deleted file mode 100644
index 5d6bddd..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/ModuleCore.genmodel
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<genmodel:GenModel xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
-    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.wst.common.emfworkbench.integration/src"
-    editDirectory="/org.eclipse.wst.common.emfworkbench.integration.edit/src" editorDirectory="/org.eclipse.wst.common.emfworkbench.integration.editor/src"
-    modelPluginID="org.eclipse.wst.common.emfworkbench.integration" runtimeJar="true"
-    modelName="ProjectModule" editPluginClass="org.eclipse.wst.projectmodule.provider.ModuleCoreEditPlugin"
-    editorPluginClass="org.eclipse.wst.projectmodule.presentation.ModuleCoreEditorPlugin"
-    runtimeCompatibility="false">
-  <foreignModel>moduleCore.mdl</foreignModel>
-  <foreignModel>WORKSPACE_ROOT</foreignModel>
-  <foreignModel>D:\work\WTP</foreignModel>
-  <genPackages prefix="ModuleCore" basePackage="org.eclipse.wst.common" disposableProviderFactory="true"
-      ecorePackage="moduleCore.ecore#/">
-    <genEnums ecoreEnum="moduleCore.ecore#//DependencyType">
-      <genEnumLiterals ecoreEnumLiteral="moduleCore.ecore#//DependencyType/uses"/>
-      <genEnumLiterals ecoreEnumLiteral="moduleCore.ecore#//DependencyType/consumes"/>
-    </genEnums>
-    <genDataTypes ecoreDataType="moduleCore.ecore#//URI"/>
-    <genClasses ecoreClass="moduleCore.ecore#//WorkbenchModule">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute moduleCore.ecore#//WorkbenchModule/handle"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute moduleCore.ecore#//WorkbenchModule/deployedName"/>
-      <genFeatures notify="false" createChild="false" ecoreFeature="ecore:EReference moduleCore.ecore#//WorkbenchModule/resources"/>
-      <genFeatures notify="false" createChild="false" ecoreFeature="ecore:EReference moduleCore.ecore#//WorkbenchModule/moduleType"/>
-      <genFeatures notify="false" createChild="false" ecoreFeature="ecore:EReference moduleCore.ecore#//WorkbenchModule/modules"/>
-    </genClasses>
-    <genClasses ecoreClass="moduleCore.ecore#//WorkbenchModuleResource">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute moduleCore.ecore#//WorkbenchModuleResource/sourcePath"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute moduleCore.ecore#//WorkbenchModuleResource/deployedPath"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute moduleCore.ecore#//WorkbenchModuleResource/exclusions"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference moduleCore.ecore#//WorkbenchModuleResource/module"/>
-    </genClasses>
-    <genClasses ecoreClass="moduleCore.ecore#//ModuleType">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute moduleCore.ecore#//ModuleType/metadataResources"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute moduleCore.ecore#//ModuleType/moduleTypeId"/>
-    </genClasses>
-    <genClasses ecoreClass="moduleCore.ecore#//ProjectModules">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute moduleCore.ecore#//ProjectModules/projectName"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference moduleCore.ecore#//ProjectModules/workbenchModules"/>
-    </genClasses>
-    <genClasses ecoreClass="moduleCore.ecore#//DependentModule">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute moduleCore.ecore#//DependentModule/handle"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute moduleCore.ecore#//DependentModule/deployedPath"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute moduleCore.ecore#//DependentModule/dependencyType"/>
-    </genClasses>
-  </genPackages>
-</genmodel:GenModel>
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/moduleCore.cat b/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/moduleCore.cat
deleted file mode 100644
index 330f5b8..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/moduleCore.cat
+++ /dev/null
@@ -1,1065 +0,0 @@
-

-(object Petal

-    version    	50

-    _written   	"Rose 8.3.0407.2800"

-    charSet    	0)

-

-(object Class_Category "moduleCore"

-    is_unit    	TRUE

-    is_loaded  	TRUE

-    attributes 	(list Attribute_Set

-	(object Attribute

-	    tool       	"Ecore"

-	    name       	"basePackage"

-	    value      	(value Text "org.eclipse.wst.common"))

-	(object Attribute

-	    tool       	"Ecore"

-	    name       	"prefix"

-	    value      	(value Text "ModuleCore"))

-	(object Attribute

-	    tool       	"Ecore"

-	    name       	"nsURI"

-	    value      	(value Text "modulecore.xmi")))

-    quid       	"3A0DB68B0046"

-    visible_categories 	(list visibility_relationship_list

-	(object Visibility_Relationship

-	    quid       	"3F2E8236025A"

-	    supplier   	"Logical View::ejbext"

-	    quidu      	"39AA86660190")

-	(object Visibility_Relationship

-	    quid       	"3F2E8236025B"

-	    supplier   	"Logical View::webappext"

-	    quidu      	"39B534FD024C")

-	(object Visibility_Relationship

-	    quid       	"3F2E8236025C"

-	    supplier   	"Logical View::ejbbnd"

-	    quidu      	"39B960FC03CA")

-	(object Visibility_Relationship

-	    quid       	"3F2E82360264"

-	    supplier   	"Logical View::webappbnd"

-	    quidu      	"39B961060107")

-	(object Visibility_Relationship

-	    quid       	"3F2E82360265"

-	    supplier   	"Logical View::clientbnd"

-	    quidu      	"39B9614F031F")

-	(object Visibility_Relationship

-	    quid       	"3F2E82360266"

-	    supplier   	"Logical View::applicationext"

-	    quidu      	"3A22E6080303")

-	(object Visibility_Relationship

-	    quid       	"3F2E82360267"

-	    supplier   	"Logical View::applicationbnd"

-	    quidu      	"39B9611502A4")

-	(object Visibility_Relationship

-	    quid       	"3F2E82360268"

-	    supplier   	"Logical View::j2cbnd"

-	    quidu      	"39B9632E038C"))

-    exportControl 	"Public"

-    logical_models 	(list unit_reference_list

-	(object Class "WorkbenchModule"

-	    quid       	"41E3DF5801FA"

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "handle"

-		    quid       	"41EC1D71015D"

-		    type       	"URI"

-		    quidu      	"41EC26DA027A"

-		    exportControl 	"Public")

-		(object ClassAttribute "deployedName"

-		    quid       	"4201471D0208"

-		    type       	"String"

-		    exportControl 	"Public")))

-	(object Class "WorkbenchModuleResource"

-	    quid       	"41E3DF670039"

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "sourcePath"

-		    quid       	"41E3DF970128"

-		    type       	"URI"

-		    quidu      	"41EC26DA027A"

-		    exportControl 	"Public")

-		(object ClassAttribute "deployedPath"

-		    quid       	"41EEC640025B"

-		    type       	"URI"

-		    quidu      	"41EC26DA027A"

-		    exportControl 	"Public")

-		(object ClassAttribute "exclusions"

-		    quid       	"41E3DF9E011E"

-		    stereotype 	"0..*"

-		    type       	"URI"

-		    quidu      	"41EC26DA027A"

-		    exportControl 	"Public")))

-	(object Class "ModuleType"

-	    quid       	"41EC1D5103E2"

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "metadataResources"

-		    quid       	"41EC1DF0021E"

-		    stereotype 	"0..*"

-		    type       	"URI"

-		    quidu      	"41EC26DA027A"

-		    exportControl 	"Public")

-		(object ClassAttribute "moduleTypeId"

-		    quid       	"41EC21340357"

-		    type       	"String"

-		    exportControl 	"Public")))

-	(object Class "URI"

-	    quid       	"41EC26DA027A"

-	    stereotype 	"datatype"

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "org.eclipse.emf.common.util.URI"

-		    quid       	"41EC270803AC"

-		    stereotype 	"javaclass"

-		    exportControl 	"Public")))

-	(object Class "ProjectModules"

-	    quid       	"41F566DB0251"

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "projectName"

-		    quid       	"41F567FD023A"

-		    type       	"String"

-		    exportControl 	"Public")))

-	(object Class "DependentModule"

-	    quid       	"41F6C24B023D"

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "handle"

-		    quid       	"420145F001C9"

-		    type       	"URI"

-		    quidu      	"41EC26DA027A"

-		    exportControl 	"Public")

-		(object ClassAttribute "deployedPath"

-		    quid       	"420145FA0015"

-		    type       	"URI"

-		    quidu      	"41EC26DA027A"

-		    exportControl 	"Public")

-		(object ClassAttribute "dependencyType"

-		    quid       	"42039243016E"

-		    type       	"DependencyType"

-		    quidu      	"420394F50185"

-		    exportControl 	"Public")))

-	(object Class "DependencyType"

-	    quid       	"420394F50185"

-	    documentation 	

-|uses=0

-|consumes=1

-	    

-	    stereotype 	"enumeration"

-	    class_attributes 	(list class_attribute_list

-		(object ClassAttribute "uses"

-		    quid       	"42039938018D"

-		    exportControl 	"Public")

-		(object ClassAttribute "consumes"

-		    quid       	"42039A6E0139"

-		    exportControl 	"Public")))

-	(object Association "$UNNAMED$0"

-	    quid       	"41E3E14B01E3"

-	    roles      	(list role_list

-		(object Role "resources"

-		    quid       	"41E3E14D031D"

-		    label      	"resources"

-		    supplier   	"Logical View::moduleCore::WorkbenchModuleResource"

-		    quidu      	"41E3DF670039"

-		    client_cardinality 	(value cardinality "0..*")

-		    Containment 	"By Value"

-		    is_navigable 	TRUE)

-		(object Role "module"

-		    quid       	"41E3E14D031F"

-		    label      	"module"

-		    supplier   	"Logical View::moduleCore::WorkbenchModule"

-		    quidu      	"41E3DF5801FA"

-		    client_cardinality 	(value cardinality "1")

-		    is_navigable 	TRUE

-		    is_aggregate 	TRUE)))

-	(object Association "$UNNAMED$1"

-	    quid       	"41EC1D9802C2"

-	    roles      	(list role_list

-		(object Role "moduleType"

-		    quid       	"41EC1D990241"

-		    label      	"moduleType"

-		    supplier   	"Logical View::moduleCore::ModuleType"

-		    quidu      	"41EC1D5103E2"

-		    client_cardinality 	(value cardinality "1")

-		    is_navigable 	TRUE)

-		(object Role "$UNNAMED$2"

-		    quid       	"41EC1D990243"

-		    supplier   	"Logical View::moduleCore::WorkbenchModule"

-		    quidu      	"41E3DF5801FA")))

-	(object Association "$UNNAMED$3"

-	    quid       	"41F5672000E8"

-	    roles      	(list role_list

-		(object Role "workbenchModules"

-		    quid       	"41F567210111"

-		    label      	"workbenchModules"

-		    supplier   	"Logical View::moduleCore::WorkbenchModule"

-		    quidu      	"41E3DF5801FA"

-		    client_cardinality 	(value cardinality "0..*")

-		    Containment 	"By Value"

-		    is_navigable 	TRUE)

-		(object Role "$UNNAMED$4"

-		    quid       	"41F567210113"

-		    supplier   	"Logical View::moduleCore::ProjectModules"

-		    quidu      	"41F566DB0251"

-		    Containment 	"By Reference"

-		    is_aggregate 	TRUE)))

-	(object Association "$UNNAMED$5"

-	    quid       	"420146A502E2"

-	    roles      	(list role_list

-		(object Role "modules"

-		    quid       	"420146A6027F"

-		    label      	"modules"

-		    supplier   	"Logical View::moduleCore::DependentModule"

-		    quidu      	"41F6C24B023D"

-		    client_cardinality 	(value cardinality "0..*")

-		    is_navigable 	TRUE)

-		(object Role "$UNNAMED$6"

-		    quid       	"420146A60281"

-		    supplier   	"Logical View::moduleCore::WorkbenchModule"

-		    quidu      	"41E3DF5801FA"))))

-    logical_presentations 	(list unit_reference_list

-	(object ClassDiagram "Main"

-	    quid       	"41E3DF060210"

-	    title      	"Main"

-	    zoom       	100

-	    max_height 	28350

-	    max_width  	21600

-	    origin_x   	100

-	    origin_y   	0

-	    items      	(list diagram_item_list

-		(object ClassView "Class" "Logical View::moduleCore::URI" @1

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1920, 1648)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@1

-			location   	(1460, 1589)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	920

-			justify    	0

-			label      	"URI")

-		    stereotype 	(object ItemLabel

-			Parent_View 	@1

-			location   	(1460, 1539)

-			fill_color 	13434879

-			anchor     	10

-			nlines     	1

-			max_width  	920

-			justify    	0

-			label      	"<<datatype>>")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"41EC26DA027A"

-		    compartment 	(object Compartment

-			Parent_View 	@1

-			location   	(1460, 1650)

-			font       	(object Font

-			    size       	10

-			    face       	"Arial"

-			    bold       	FALSE

-			    italics    	FALSE

-			    underline  	FALSE

-			    strike     	FALSE

-			    color      	0

-			    default_color 	TRUE)

-			icon_style 	"Icon"

-			fill_color 	16777215

-			anchor     	2

-			nlines     	2

-			max_width  	925)

-		    width      	938

-		    height     	242

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object NoteView @2

-		    location   	(448, 1264)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@2

-			location   	(176, 1055)

-			fill_color 	13434879

-			nlines     	8

-			max_width  	508

-			label      	

-|The module "handle" URI will contain the special Module protocol, project name, and module identifier, and will be fully resolved to a full platform URI

-			)

-		    line_color 	3342489

-		    fill_color 	13434879

-		    width      	568

-		    height     	431)

-		(object ClassView "Class" "Logical View::moduleCore::WorkbenchModuleResource" @3

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(992, 1744)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@3

-			location   	(714, 1613)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	556

-			justify    	0

-			label      	"WorkbenchModuleResource")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"41E3DF670039"

-		    compartment 	(object Compartment

-			Parent_View 	@3

-			location   	(714, 1674)

-			font       	(object Font

-			    size       	10

-			    face       	"Arial"

-			    bold       	FALSE

-			    italics    	FALSE

-			    underline  	FALSE

-			    strike     	FALSE

-			    color      	0

-			    default_color 	TRUE)

-			icon_style 	"Icon"

-			fill_color 	16777215

-			anchor     	2

-			nlines     	4

-			max_width  	531)

-		    width      	574

-		    height     	286

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::moduleCore::ModuleType" @4

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1856, 1136)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@4

-			location   	(1509, 1030)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	694

-			justify    	0

-			label      	"ModuleType")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"41EC1D5103E2"

-		    compartment 	(object Compartment

-			Parent_View 	@4

-			location   	(1509, 1091)

-			font       	(object Font

-			    size       	10

-			    face       	"Arial"

-			    bold       	FALSE

-			    italics    	FALSE

-			    underline  	FALSE

-			    strike     	FALSE

-			    color      	0

-			    default_color 	TRUE)

-			icon_style 	"Icon"

-			fill_color 	16777215

-			anchor     	2

-			nlines     	3

-			max_width  	700)

-		    width      	712

-		    height     	236

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::moduleCore::ProjectModules" @5

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(416, 368)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@5

-			location   	(204, 287)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	424

-			justify    	0

-			label      	"ProjectModules")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"41F566DB0251"

-		    compartment 	(object Compartment

-			Parent_View 	@5

-			location   	(204, 348)

-			font       	(object Font

-			    size       	10

-			    face       	"Arial"

-			    bold       	FALSE

-			    italics    	FALSE

-			    underline  	FALSE

-			    strike     	FALSE

-			    color      	0

-			    default_color 	TRUE)

-			icon_style 	"Icon"

-			fill_color 	16777215

-			anchor     	2

-			nlines     	2

-			max_width  	431)

-		    width      	442

-		    height     	186

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::moduleCore::DependentModule" @6

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(1824, 480)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@6

-			location   	(1470, 349)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	708

-			justify    	0

-			label      	"DependentModule")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"41F6C24B023D"

-		    compartment 	(object Compartment

-			Parent_View 	@6

-			location   	(1470, 410)

-			font       	(object Font

-			    size       	10

-			    face       	"Arial"

-			    bold       	FALSE

-			    italics    	FALSE

-			    underline  	FALSE

-			    strike     	FALSE

-			    color      	0

-			    default_color 	TRUE)

-			icon_style 	"Icon"

-			fill_color 	13434879

-			anchor     	2

-			nlines     	4

-			max_width  	715)

-		    width      	726

-		    height     	286

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object ClassView "Class" "Logical View::moduleCore::WorkbenchModule" @7

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(944, 752)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@7

-			location   	(712, 646)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	464

-			justify    	0

-			label      	"WorkbenchModule")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"41E3DF5801FA"

-		    compartment 	(object Compartment

-			Parent_View 	@7

-			location   	(712, 707)

-			font       	(object Font

-			    size       	10

-			    face       	"Arial"

-			    bold       	FALSE

-			    italics    	FALSE

-			    underline  	FALSE

-			    strike     	FALSE

-			    color      	0

-			    default_color 	TRUE)

-			icon_style 	"Icon"

-			fill_color 	16777215

-			anchor     	2

-			nlines     	3

-			max_width  	471)

-		    width      	482

-		    height     	236

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object AssociationViewNew "$UNNAMED$0" @8

-		    location   	(940, 1235)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"41E3E14B01E3"

-		    roleview_list 	(list RoleViews

-			(object RoleView "resources" @9

-			    Parent_View 	@8

-			    location   	(460, 355)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @10

-				Parent_View 	@9

-				location   	(1075, 1501)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	1

-				anchor_loc 	1

-				nlines     	1

-				max_width  	216

-				justify    	0

-				label      	"+resources"

-				pctDist    	0.726776

-				height     	135

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"41E3E14D031D"

-			    client     	@8

-			    supplier   	@3

-			    vertices   	(list Points

-				(940, 1235)

-				(940, 1601))

-			    line_style 	3

-			    origin_attachment 	(940, 1235)

-			    terminal_attachment 	(940, 1601)

-			    label      	(object SegLabel @11

-				Parent_View 	@9

-				location   	(861, 1495)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	2

-				anchor_loc 	1

-				nlines     	1

-				max_width  	15

-				justify    	0

-				label      	"0..*"

-				pctDist    	0.710383

-				height     	79

-				orientation 	1))

-			(object RoleView "module" @12

-			    Parent_View 	@8

-			    location   	(460, 355)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @13

-				Parent_View 	@12

-				location   	(1043, 972)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	1

-				anchor_loc 	1

-				nlines     	1

-				max_width  	172

-				justify    	0

-				label      	"+module"

-				pctDist    	0.720824

-				height     	103

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"41E3E14D031F"

-			    client     	@8

-			    supplier   	@7

-			    vertices   	(list Points

-				(940, 1235)

-				(940, 870))

-			    line_style 	3

-			    origin_attachment 	(940, 1235)

-			    terminal_attachment 	(940, 870)

-			    label      	(object SegLabel @14

-				Parent_View 	@12

-				location   	(868, 976)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	2

-				anchor_loc 	1

-				nlines     	1

-				max_width  	15

-				justify    	0

-				label      	"1"

-				pctDist    	0.709382

-				height     	73

-				orientation 	0))))

-		(object AssociationViewNew "$UNNAMED$1" @15

-		    location   	(1634, 791)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"41EC1D9802C2"

-		    roleview_list 	(list RoleViews

-			(object RoleView "moduleType" @16

-			    Parent_View 	@15

-			    location   	(1298, -137)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @17

-				Parent_View 	@16

-				location   	(2010, 977)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	1

-				anchor_loc 	1

-				nlines     	1

-				max_width  	260

-				justify    	0

-				label      	"+moduleType"

-				pctDist    	0.911573

-				height     	153

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"41EC1D990241"

-			    client     	@15

-			    supplier   	@4

-			    vertices   	(list Points

-				(1634, 791)

-				(1857, 791)

-				(1857, 1018))

-			    line_style 	3

-			    origin_attachment 	(1634, 791)

-			    terminal_attachment 	(1857, 1018)

-			    label      	(object SegLabel @18

-				Parent_View 	@16

-				location   	(1804, 972)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	2

-				anchor_loc 	1

-				nlines     	1

-				max_width  	15

-				justify    	0

-				label      	"1"

-				pctDist    	0.900000

-				height     	54

-				orientation 	1))

-			(object RoleView "$UNNAMED$2" @19

-			    Parent_View 	@15

-			    location   	(1298, -137)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"41EC1D990243"

-			    client     	@15

-			    supplier   	@7

-			    vertices   	(list Points

-				(1634, 791)

-				(1185, 791))

-			    line_style 	3

-			    origin_attachment 	(1634, 791)

-			    terminal_attachment 	(1185, 791))))

-		(object AttachView "" @20

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    client     	@2

-		    supplier   	@7

-		    vertices   	(list Points

-			(657, 1048)

-			(829, 870))

-		    line_style 	0)

-		(object AssociationViewNew "$UNNAMED$3" @21

-		    location   	(399, 691)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"41F5672000E8"

-		    roleview_list 	(list RoleViews

-			(object RoleView "workbenchModules" @22

-			    Parent_View 	@21

-			    location   	(-33, 403)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @23

-				Parent_View 	@22

-				location   	(476, 747)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	1

-				anchor_loc 	1

-				nlines     	1

-				max_width  	373

-				justify    	0

-				label      	"+workbenchModules"

-				pctDist    	0.253289

-				height     	56

-				orientation 	1)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"41F567210111"

-			    client     	@21

-			    supplier   	@7

-			    vertices   	(list Points

-				(399, 691)

-				(703, 691))

-			    line_style 	3

-			    origin_attachment 	(399, 691)

-			    terminal_attachment 	(703, 691)

-			    label      	(object SegLabel @24

-				Parent_View 	@22

-				location   	(640, 632)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	2

-				anchor_loc 	1

-				nlines     	1

-				max_width  	15

-				justify    	0

-				label      	"0..*"

-				pctDist    	0.792763

-				height     	59

-				orientation 	0))

-			(object RoleView "$UNNAMED$4" @25

-			    Parent_View 	@21

-			    location   	(-33, 403)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"41F567210113"

-			    client     	@21

-			    supplier   	@5

-			    vertices   	(list Points

-				(399, 691)

-				(325, 691)

-				(325, 461))

-			    line_style 	3

-			    origin_attachment 	(399, 691)

-			    terminal_attachment 	(325, 461))))

-		(object AssociationViewNew "$UNNAMED$5" @26

-		    location   	(1322, 633)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    quidu      	"420146A502E2"

-		    roleview_list 	(list RoleViews

-			(object RoleView "modules" @27

-			    Parent_View 	@26

-			    location   	(490, -711)

-			    font       	(object Font

-				size       	10

-				face       	"Arial"

-				bold       	FALSE

-				italics    	FALSE

-				underline  	FALSE

-				strike     	FALSE

-				color      	0

-				default_color 	TRUE)

-			    label      	(object SegLabel @28

-				Parent_View 	@27

-				location   	(1367, 545)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	1

-				anchor_loc 	1

-				nlines     	1

-				max_width  	180

-				justify    	0

-				label      	"+modules"

-				pctDist    	0.475736

-				height     	72

-				orientation 	0)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"420146A6027F"

-			    client     	@26

-			    supplier   	@6

-			    vertices   	(list Points

-				(1322, 633)

-				(1460, 589))

-			    line_style 	0

-			    label      	(object SegLabel @29

-				Parent_View 	@27

-				location   	(1427, 662)

-				font       	(object Font

-				    size       	10

-				    face       	"Arial"

-				    bold       	FALSE

-				    italics    	FALSE

-				    underline  	FALSE

-				    strike     	FALSE

-				    color      	0

-				    default_color 	TRUE)

-				anchor     	2

-				anchor_loc 	1

-				nlines     	1

-				max_width  	15

-				justify    	0

-				label      	"0..*"

-				pctDist    	0.636077

-				height     	59

-				orientation 	1))

-			(object RoleView "$UNNAMED$6" @30

-			    Parent_View 	@26

-			    location   	(490, -711)

-			    stereotype 	TRUE

-			    line_color 	3342489

-			    quidu      	"420146A60281"

-			    client     	@26

-			    supplier   	@7

-			    vertices   	(list Points

-				(1322, 633)

-				(1185, 675))

-			    line_style 	0)))

-		(object NoteView @31

-		    location   	(2784, 416)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@31

-			location   	(2387, 166)

-			fill_color 	13434879

-			nlines     	10

-			max_width  	759

-			label      	

-|The dependent module "handle" must be resolvable to a WorkbenchModule.

-|

-|The DeployedPath specifies the location of the referenced module in this deployment structure.

-|

-|The dependencyType specifies how the dependent module is assembled.

-			)

-		    line_color 	3342489

-		    fill_color 	13434879

-		    width      	819

-		    height     	513)

-		(object ClassView "Class" "Logical View::moduleCore::DependencyType" @32

-		    ShowCompartmentStereotypes 	TRUE

-		    IncludeAttribute 	TRUE

-		    IncludeOperation 	TRUE

-		    location   	(2560, 944)

-		    font       	(object Font

-			size       	10

-			face       	"Arial"

-			bold       	FALSE

-			italics    	FALSE

-			underline  	FALSE

-			strike     	FALSE

-			color      	0

-			default_color 	TRUE)

-		    label      	(object ItemLabel

-			Parent_View 	@32

-			location   	(2387, 860)

-			fill_color 	13434879

-			nlines     	1

-			max_width  	346

-			justify    	0

-			label      	"DependencyType")

-		    stereotype 	(object ItemLabel

-			Parent_View 	@32

-			location   	(2387, 810)

-			fill_color 	13434879

-			anchor     	10

-			nlines     	1

-			max_width  	346

-			justify    	0

-			label      	"<<enumeration>>")

-		    icon_style 	"Icon"

-		    line_color 	3342489

-		    fill_color 	13434879

-		    quidu      	"420394F50185"

-		    compartment 	(object Compartment

-			Parent_View 	@32

-			location   	(2387, 921)

-			font       	(object Font

-			    size       	10

-			    face       	"Arial"

-			    bold       	FALSE

-			    italics    	FALSE

-			    underline  	FALSE

-			    strike     	FALSE

-			    color      	0

-			    default_color 	TRUE)

-			icon_style 	"Icon"

-			fill_color 	13434879

-			anchor     	2

-			nlines     	3

-			max_width  	237)

-		    width      	364

-		    height     	292

-		    annotation 	8

-		    autoResize 	TRUE)

-		(object AttachView "" @33

-		    stereotype 	TRUE

-		    line_color 	3342489

-		    client     	@6

-		    supplier   	@31

-		    vertices   	(list Points

-			(2187, 455)

-			(2374, 443))

-		    line_style 	0)))))

diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/moduleCore.ecore b/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/moduleCore.ecore
deleted file mode 100644
index 00723f2..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/moduleCore.ecore
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ecore:EPackage xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="modulecore"
-    nsURI="modulecore.xmi" nsPrefix="org.eclipse.wst.common.modulecore">
-  <eClassifiers xsi:type="ecore:EClass" name="WorkbenchModule">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="handle" eType="#//URI"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="deployedName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="resources" upperBound="-1"
-        eType="#//WorkbenchModuleResource" containment="true" eOpposite="#//WorkbenchModuleResource/module"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="moduleType" lowerBound="1"
-        eType="#//ModuleType"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="modules" upperBound="-1"
-        eType="#//DependentModule"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="WorkbenchModuleResource">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="sourcePath" eType="#//URI"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="deployedPath" eType="#//URI"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="exclusions" upperBound="-1"
-        eType="#//URI"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="module" lowerBound="1"
-        eType="#//WorkbenchModule" transient="true" eOpposite="#//WorkbenchModule/resources"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ModuleType">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="metadataResources" upperBound="-1"
-        eType="#//URI"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="moduleTypeId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EDataType" name="URI" instanceClassName="org.eclipse.emf.common.util.URI"/>
-  <eClassifiers xsi:type="ecore:EClass" name="ProjectModules">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="projectName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="workbenchModules" upperBound="-1"
-        eType="#//WorkbenchModule" containment="true"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="DependentModule">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="handle" eType="#//URI"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="deployedPath" eType="#//URI"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="dependencyType" eType="#//DependencyType"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="DependencyType">
-    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-      <details key="documentation" value="uses=0&#xD;&#xA;consumes=1"/>
-    </eAnnotations>
-    <eLiterals name="uses"/>
-    <eLiterals name="consumes" value="1"/>
-  </eClassifiers>
-</ecore:EPackage>
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/moduleCore.mdl b/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/moduleCore.mdl
deleted file mode 100644
index 7e9b4c5..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/rose/moduleCore.mdl
+++ /dev/null
@@ -1,8839 +0,0 @@
-

-(object Petal

-    version    	50

-    _written   	"Rose 8.3.0407.2800"

-    charSet    	0)

-

-(object Design "Logical View"

-    is_unit    	TRUE

-    is_loaded  	TRUE

-    attributes 	(list Attribute_Set

-	(object Attribute

-	    tool       	"Java"

-	    name       	"IDE"

-	    value      	"Internal Editor")

-	(object Attribute

-	    tool       	"Java"

-	    name       	"UserDefineTagName1"

-	    value      	"")

-	(object Attribute

-	    tool       	"Java"

-	    name       	"UserDefineTagText1"

-	    value      	"")

-	(object Attribute

-	    tool       	"Java"

-	    name       	"UserDefineTagApply1"

-	    value      	"")

-	(object Attribute

-	    tool       	"Java"

-	    name       	"UserDefineTagName2"

-	    value      	"")

-	(object Attribute

-	    tool       	"Java"

-	    name       	"UserDefineTagText2"

-	    value      	"")

-	(object Attribute

-	    tool       	"Java"

-	    name       	"UserDefineTagApply2"

-	    value      	"")

-	(object Attribute

-	    tool       	"Java"

-	    name       	"UserDefineTagName3"

-	    value      	"")

-	(object Attribute

-	    tool       	"Java"

-	    name       	"UserDefineTagText3"

-	    value      	"")

-	(object Attribute

-	    tool       	"Java"

-	    name       	"UserDefineTagApply3"

-	    value      	""))

-    quid       	"3A0B2474025F"

-    enforceClosureAutoLoad 	FALSE

-    defaults   	(object defaults

-	rightMargin 	0.250000

-	leftMargin 	0.250000

-	topMargin  	0.250000

-	bottomMargin 	0.500000

-	pageOverlap 	0.250000

-	clipIconLabels 	TRUE

-	autoResize 	TRUE

-	snapToGrid 	TRUE

-	gridX      	16

-	gridY      	16

-	defaultFont 	(object Font

-	    size       	10

-	    face       	"Arial"

-	    bold       	FALSE

-	    italics    	FALSE

-	    underline  	FALSE

-	    strike     	FALSE

-	    color      	0

-	    default_color 	TRUE)

-	showMessageNum 	1

-	showClassOfObject 	TRUE

-	notation   	"Unified")

-    root_usecase_package 	(object Class_Category "Use Case View"

-	quid       	"3A0B2474026A"

-	exportControl 	"Public"

-	global     	TRUE

-	logical_models 	(list unit_reference_list)

-	logical_presentations 	(list unit_reference_list

-	    (object UseCaseDiagram "Main"

-		quid       	"3A0B24790339"

-		title      	"Main"

-		zoom       	100

-		max_height 	28350

-		max_width  	21600

-		origin_x   	0

-		origin_y   	0

-		items      	(list diagram_item_list))))

-    root_category 	(object Class_Category "Logical View"

-	quid       	"3A0B24740269"

-	exportControl 	"Public"

-	global     	TRUE

-	subsystem  	"Component View"

-	quidu      	"3A0B2474027D"

-	logical_models 	(list unit_reference_list

-	    (object Class_Category "moduleCore"

-		is_unit    	TRUE

-		is_loaded  	FALSE

-		file_name  	"$WORKSPACE_ROOT\\org.eclipse.wst.common.emfworkbench.integration\\rose\\moduleCore.cat"

-		quid       	"3A0DB68B0046"))

-	logical_presentations 	(list unit_reference_list

-	    (object ClassDiagram "PackageView"

-		quid       	"3A0B24790360"

-		title      	"PackageView"

-		zoom       	100

-		max_height 	28350

-		max_width  	21600

-		origin_x   	650

-		origin_y   	0

-		items      	(list diagram_item_list

-		    (object CategoryView "Logical View::moduleCore" @1

-			location   	(352, 320)

-			font       	(object Font

-			    size       	10

-			    face       	"Arial"

-			    bold       	FALSE

-			    italics    	FALSE

-			    underline  	FALSE

-			    strike     	FALSE

-			    color      	0

-			    default_color 	TRUE)

-			label      	(object ItemLabel

-			    Parent_View 	@1

-			    location   	(208, 236)

-			    fill_color 	13434879

-			    nlines     	2

-			    max_width  	288

-			    justify    	0

-			    label      	"moduleCore")

-			icon_style 	"Label"

-			line_color 	3342489

-			fill_color 	13434879

-			quidu      	"3A0DB68B0046"

-			width      	300

-			height     	180)))))

-    root_subsystem 	(object SubSystem "Component View"

-	quid       	"3A0B2474027D"

-	physical_models 	(list unit_reference_list)

-	physical_presentations 	(list unit_reference_list

-	    (object Module_Diagram "Main"

-		quid       	"3A0B24790338"

-		title      	"Main"

-		zoom       	100

-		max_height 	28350

-		max_width  	21600

-		origin_x   	0

-		origin_y   	0

-		items      	(list diagram_item_list)))

-	category   	"Logical View"

-	quidu      	"41EC1C3B00A4")

-    process_structure 	(object Processes

-	quid       	"3A0B2474027E"

-	ProcsNDevs 	(list

-	    (object Process_Diagram "Deployment View"

-		quid       	"3A0B24740291"

-		title      	"Deployment View"

-		zoom       	100

-		max_height 	28350

-		max_width  	21600

-		origin_x   	0

-		origin_y   	0

-		items      	(list diagram_item_list))))

-    properties 	(object Properties

-	attributes 	(list Attribute_Set

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"roseId"

-		value      	"753117540")

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Category"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"prefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"packageName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"basePackage"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsURI"

-			value      	"")))

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Category"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"packageName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"prefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"basePackage"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsURI"

-			value      	"")))

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Category"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"basePackage"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"prefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"packageName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsURI"

-			value      	"")))

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Category"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"prefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"packageName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"basePackage"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsURI"

-			value      	"")))

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Category"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsURI"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"prefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"packageName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"basePackage"

-			value      	"")

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"nsName"

-			value      	"")))

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"isTransient"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"isVolatile"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"isChangeable"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"isUnsettable"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"isUnique"

-			value      	TRUE)))

-	    (object Attribute

-		tool       	"Ecore"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"isTransient"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"isVolatile"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"isChangeable"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"isUnsettable"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ecore"

-			name       	"isResolveProxies"

-			value      	TRUE)))

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Synchronize"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Const"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"InitialValue"

-			value      	"")))

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"default__Inherit"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Synchronize"

-			value      	TRUE)))

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Synchronize"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Copyright"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"RootPackage"

-			value      	"C++ Reverse Engineered")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"InitialHeaderIncludes"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"InitialBodyIncludes"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"RevEngRootDirectory"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"RevEngDirectoriesAsPackages"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"HeaderFileExtension"

-			value      	".h")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ImplementationFileExtension"

-			value      	".cpp")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"NewHeaderFileDirectory"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"NewImplementationFileDirectory"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"FileCapitalization"

-			value      	("FileCapitalizationSet" 0))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CodeGenExtraDirectories"

-			value      	("CodeGenExtraDirectoriesSet" 0))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"StripClassPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"UseTabs"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"TabWidth"

-			value      	8)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"IndentWidth"

-			value      	4)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"AccessIndentation"

-			value      	-2)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ModelIdCommentRules"

-			value      	("ModelIdCommentRulesSet" 1))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"PageWidth"

-			value      	80)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ClassMemberOrder"

-			value      	("MemberOrderSet" 1))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"OneParameterPerLine"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"NamespaceBraceStyle"

-			value      	("BraceStyleSet" 2))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ClassBraceStyle"

-			value      	("BraceStyleSet" 2))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"FunctionBraceStyle"

-			value      	("BraceStyleSet" 2))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CodeGenExtraDirectoriesSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"None"

-				value      	0)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Namespaces"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Packages"

-				value      	2)))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"FileCapitalizationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Same as model"

-				value      	0)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Lower case"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Upper case"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Lower case with underscores"

-				value      	3)))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"BraceStyleSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"B1"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"B2"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"B3"

-				value      	3)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"B4"

-				value      	4)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"B5"

-				value      	5)))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"MemberOrderSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Public First"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Private First"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Order by kind"

-				value      	3)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Unordered"

-				value      	4)))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ModelIdCommentRulesSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Code generation only"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Code generation and reverse engineering"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Never generate model IDs"

-				value      	3)))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CreateBackupFiles"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CommentRules"

-			value      	("CommentRulesSet" 1))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CommentRulesSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Always synchronize"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Code generation only"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Reverse engineering only"

-				value      	3)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Never synchronize"

-				value      	4)))))

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"default__Param"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CodeName"

-			value      	"")))

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Synchronize"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CodeName"

-			value      	"")))

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Synchronize"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"InitialCodeBody"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Inline"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"GenerateFunctionBody"

-			value      	("GenerateFunctionBodySet" 2))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"GenerateFunctionBodySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Default"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"True"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"False"

-				value      	0)))))

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Synchronize"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ImplementationType"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"HeaderSourceFile"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"BodySourceFile"

-			value      	"")))

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"default__Category"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"IsNamespace"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"ANSI C++ Event Watcher"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"ANSIConvert"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"propertyId"

-		value      	"838326200")

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SpecFileExtension"

-			value      	"1.ada")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SpecFileBackupExtension"

-			value      	"1.ad~")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SpecFileTemporaryExtension"

-			value      	"1.ad#")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"BodyFileExtension"

-			value      	"2.ada")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"BodyFileBackupExtension"

-			value      	"2.ad~")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"BodyFileTemporaryExtension"

-			value      	"2.ad#")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CreateMissingDirectories"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GenerateBodies"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GenerateAccessorOperations"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GenerateStandardOperations"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ImplicitParameter"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CommentWidth"

-			value      	60)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"StopOnError"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ErrorLimit"

-			value      	30)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"UseFileName"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Directory"

-			value      	"$ROSEADA83_SOURCE")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DefaultCodeBody"

-			value      	"[statement]")))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ClassName"

-			value      	"Object")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ClassAccess"

-			value      	("ImplementationSet" 43))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ImplementationType"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"IsSubtype"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"PolymorphicUnit"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"HandleName"

-			value      	"Handle")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"HandleAccess"

-			value      	("ImplementationSet" 45))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Discriminant"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Variant"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"EnumerationLiteralPrefix"

-			value      	"A_")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"RecordFieldPrefix"

-			value      	"The_")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GenerateAccessorOperations"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GenerateStandardOperations"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ImplicitParameter"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ClassParameterName"

-			value      	"This")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DefaultConstructorKind"

-			value      	("ConstructorKindSet" 199))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DefaultConstructorName"

-			value      	"Create")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineDefaultConstructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CopyConstructorKind"

-			value      	("ConstructorKindSet" 199))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CopyConstructorName"

-			value      	"Copy")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineCopyConstructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DestructorName"

-			value      	"Free")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineDestructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ClassEqualityOperation"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"HandleEqualityOperation"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineEquality"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"IsTask"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Representation"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Public"

-				value      	45)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Private"

-				value      	43)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"LimitedPrivate"

-				value      	200)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ConstructorKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Procedure"

-				value      	202)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Function"

-				value      	199)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"DoNotCreate"

-				value      	201)))))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"FileName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ReturnType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GenericFormalParameters"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"AdditionalWiths"

-			value      	(value Text ""))))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Module-Body"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"FileName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ReturnType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"AdditionalWiths"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"IsSubunit"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SubprogramImplementation"

-			value      	("SubprogramImplementationSet" 2))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ClassParameterMode"

-			value      	("ParameterModeSet" 203))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Inline"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"EntryCode"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ExitCode"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Representation"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SubprogramImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Spec"

-				value      	1)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Body"

-				value      	2)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Renaming"

-				value      	3)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Separate"

-				value      	4)))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ParameterModeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"In"

-				value      	204)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Out"

-				value      	205)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"InOut"

-				value      	203)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"FunctionReturn"

-				value      	206)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Renames"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InitialCodeBody"

-			value      	"${default}")))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Has"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"NameIfUnlabeled"

-			value      	"The_${supplier}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DataMemberName"

-			value      	"${relationship}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GetName"

-			value      	"Get_${relationship}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SetName"

-			value      	"Set_${relationship}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"IsConstant"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InitialValue"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Variant"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ContainerGeneric"

-			value      	"List")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ContainerType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ContainerDeclarations"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SelectorName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SelectorType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Declare"

-			value      	("DeclareSet" 234))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DeclareSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Before"

-				value      	233)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"After"

-				value      	234)))))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DataMemberName"

-			value      	"${attribute}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GetName"

-			value      	"Get_${attribute}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SetName"

-			value      	"Set_${attribute}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"IsConstant"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InitialValue"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Variant"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Representation"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Declare"

-			value      	("DeclareSet" 234))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DeclareSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Before"

-				value      	233)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"After"

-				value      	234)))))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Association"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"NameIfUnlabeled"

-			value      	"The_${targetClass}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GetName"

-			value      	"Get_${association}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineGet"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SetName"

-			value      	"Set_${association}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineSet"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GenerateAssociate"

-			value      	("ProcedureKindSet" 202))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"AssociateName"

-			value      	"Associate")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineAssociate"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GenerateDissociate"

-			value      	("ProcedureKindSet" 202))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DissociateName"

-			value      	"Dissociate")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineDissociate"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ProcedureKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Procedure"

-				value      	202)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"FunctionKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Function"

-				value      	199)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"DoNotCreate"

-				value      	201)))))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"NameIfUnlabeled"

-			value      	"The_${targetClass}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DataMemberName"

-			value      	"${target}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"GetName"

-			value      	"Get_${target}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SetName"

-			value      	"Set_${target}")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InlineSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"IsConstant"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"InitialValue"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ContainerGeneric"

-			value      	"List")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ContainerType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ContainerDeclarations"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SelectorName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"SelectorType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ProcedureKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Procedure"

-				value      	202)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Declare"

-			value      	("DeclareSet" 234))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"DeclareSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Before"

-				value      	233)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"After"

-				value      	234)))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Representation"

-			value      	(value Text ""))))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Subsystem"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Directory"

-			value      	"AUTO GENERATE")))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"propertyId"

-		value      	"838326200")

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SpecFileExtension"

-			value      	"1.ada")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SpecFileBackupExtension"

-			value      	"1.ad~")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SpecFileTemporaryExtension"

-			value      	"1.ad#")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"BodyFileExtension"

-			value      	"2.ada")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"BodyFileBackupExtension"

-			value      	"2.ad~")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"BodyFileTemporaryExtension"

-			value      	"2.ad#")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"CreateMissingDirectories"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"UseColonNotation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateBodies"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessorOperations"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateStandardOperations"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ImplicitParameter"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"CommentWidth"

-			value      	60)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"StopOnError"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ErrorLimit"

-			value      	30)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"UseFileName"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Directory"

-			value      	"$ROSEADA95_SOURCE")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"DefaultCodeBody"

-			value      	"[statement]")))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeName"

-			value      	"Object")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeVisibility"

-			value      	("TypeVisibilitySet" 43))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeImplementation"

-			value      	("TypeImplementationSet" 208))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeControl"

-			value      	("TypeControlSet" 225))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeControlName"

-			value      	"Controlled_${type}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeDefinition"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordImplementation"

-			value      	("RecordImplementationSet" 209))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordKindPackageName"

-			value      	"${class}_Record_Kinds")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IsLimited"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IsSubtype"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessType"

-			value      	("GenerateAccessTypeSet" 230))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AccessTypeName"

-			value      	"Handle")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AccessTypeVisibility"

-			value      	("TypeVisibilitySet" 45))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AccessTypeDefinition"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AccessClassWide"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"MaybeAliased"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ParameterizedImplementation"

-			value      	("ParameterizedImplementationSet" 11))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ParentClassName"

-			value      	"Superclass")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"EnumerationLiteralPrefix"

-			value      	"A_")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordFieldPrefix"

-			value      	"The_")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ArrayOfTypeName"

-			value      	"Array_Of_${type}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AccessArrayOfTypeName"

-			value      	"Access_Array_Of_${type}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ArrayOfAccessTypeName"

-			value      	"Array_Of_${access_type}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AccessArrayOfAccessTypeName"

-			value      	"Access_Array_Of_${access_type}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ArrayIndexDefinition"

-			value      	"Positive range <>")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessorOperations"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateStandardOperations"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ImplicitParameter"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ImplicitParameterName"

-			value      	"This")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateDefaultConstructor"

-			value      	("SubprogramKindSet" 199))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"DefaultConstructorName"

-			value      	"Create")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineDefaultConstructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateCopyConstructor"

-			value      	("SubprogramKindSet" 199))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"CopyConstructorName"

-			value      	"Copy")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineCopyConstructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateDestructor"

-			value      	("ProcedureKindSet" 202))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"DestructorName"

-			value      	"Free")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineDestructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateTypeEquality"

-			value      	("FunctionKindSet" 201))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeEqualityName"

-			value      	"${quote}=${quote}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineEquality"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Representation"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Tagged"

-				value      	208)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Record"

-				value      	210)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Mixin"

-				value      	211)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Protected"

-				value      	44)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Task"

-				value      	212)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"SingleType"

-				value      	209)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"MultipleTypes"

-				value      	213)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ParameterizedImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Generic"

-				value      	11)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Unconstrained"

-				value      	214)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeVisibilitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Public"

-				value      	45)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Private"

-				value      	43)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SubprogramKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Procedure"

-				value      	202)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Function"

-				value      	199)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ProcedureKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Procedure"

-				value      	202)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"FunctionKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Function"

-				value      	199)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeControlSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"None"

-				value      	225)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"InitializationOnly"

-				value      	226)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"AssignmentFinalizationOnly"

-				value      	227)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"All"

-				value      	228)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Always"

-				value      	229)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Auto"

-				value      	230)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IncompleteType"

-			value      	("IncompleteTypeSet" 1))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"TypeControlVisibility"

-			value      	("TypeVisibilitySet" 43))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IncompleteTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotDeclare"

-				value      	1)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"NoDiscriminantPart"

-				value      	2)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"UnknownDiscriminantPart"

-				value      	3)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"KnownDiscriminantPart"

-				value      	4)))))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"FileName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ReturnType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenericFormalParameters"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AdditionalWiths"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IsPrivate"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Module-Body"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"FileName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ReturnType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AdditionalWiths"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IsSubunit"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SubprogramImplementation"

-			value      	("SubprogramImplementationSet" 2))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Renames"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateOverriding"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ImplicitParameterMode"

-			value      	("ParameterModeSet" 203))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ImplicitParameterClassWide"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessOperation"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Inline"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"EntryCode"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ExitCode"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"EntryBarrierCondition"

-			value      	"True")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Representation"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SubprogramImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Spec"

-				value      	1)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Body"

-				value      	2)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Abstract"

-				value      	3)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Renaming"

-				value      	4)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"RenamingAsBody"

-				value      	5)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Separate"

-				value      	6)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ParameterModeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"In"

-				value      	204)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Out"

-				value      	205)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"InOut"

-				value      	203)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Access"

-				value      	220)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InitialCodeBody"

-			value      	"${default}")))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Has"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"NameIfUnlabeled"

-			value      	"The_${supplier}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordFieldImplementation"

-			value      	("RecordFieldImplementationSet" 216))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordFieldName"

-			value      	"${relationship}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateGet"

-			value      	("FunctionKindSet" 199))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessGet"

-			value      	("FunctionKindSet" 201))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GetName"

-			value      	"Get_${relationship}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateSet"

-			value      	("ProcedureKindSet" 202))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessSet"

-			value      	("ProcedureKindSet" 201))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SetName"

-			value      	"Set_${relationship}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IsAliased"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IsConstant"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InitialValue"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ContainerImplementation"

-			value      	("ContainerImplementationSet" 217))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ContainerGeneric"

-			value      	"List")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ContainerType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ContainerDeclarations"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SelectorName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SelectorType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordFieldImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Component"

-				value      	216)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Discriminant"

-				value      	218)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"AccessDiscriminant"

-				value      	219)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ContainerImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Array"

-				value      	217)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Generic"

-				value      	11)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ProcedureKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Procedure"

-				value      	202)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"FunctionKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Function"

-				value      	199)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Declare"

-			value      	("DeclareSet" 234))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"DeclareSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Before"

-				value      	233)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"After"

-				value      	234)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AccessDiscriminantClassWide"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordFieldImplementation"

-			value      	("RecordFieldImplementationSet" 216))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordFieldName"

-			value      	"${attribute}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateGet"

-			value      	("FunctionKindSet" 199))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessGet"

-			value      	("FunctionKindSet" 201))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GetName"

-			value      	"Get_${attribute}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateSet"

-			value      	("ProcedureKindSet" 202))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessSet"

-			value      	("ProcedureKindSet" 201))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SetName"

-			value      	"Set_${attribute}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IsAliased"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IsConstant"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InitialValue"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Representation"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordFieldImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Component"

-				value      	216)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Discriminant"

-				value      	218)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"AccessDiscriminant"

-				value      	219)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ProcedureKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Procedure"

-				value      	202)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"FunctionKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Function"

-				value      	199)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Declare"

-			value      	("DeclareSet" 234))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"DeclareSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Before"

-				value      	233)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"After"

-				value      	234)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AccessDiscriminantClassWide"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Association"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"NameIfUnlabeled"

-			value      	"The_${targetClass}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateGet"

-			value      	("FunctionKindSet" 199))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GetName"

-			value      	"Get_${association}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineGet"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateSet"

-			value      	("ProcedureKindSet" 202))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SetName"

-			value      	"Set_${association}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineSet"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAssociate"

-			value      	("ProcedureKindSet" 202))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AssociateName"

-			value      	"Associate")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineAssociate"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateDissociate"

-			value      	("ProcedureKindSet" 202))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"DissociateName"

-			value      	"Dissociate")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineDissociate"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ProcedureKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Procedure"

-				value      	202)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"FunctionKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Function"

-				value      	199)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"NameIfUnlabeled"

-			value      	"The_${targetClass}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordFieldImplementation"

-			value      	("RecordFieldImplementationSet" 216))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordFieldName"

-			value      	"${target}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateGet"

-			value      	("FunctionKindSet" 199))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessGet"

-			value      	("FunctionKindSet" 201))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GetName"

-			value      	"Get_${target}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateSet"

-			value      	("ProcedureKindSet" 202))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"GenerateAccessSet"

-			value      	("ProcedureKindSet" 201))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SetName"

-			value      	"Set_${target}")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InlineSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IsAliased"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"IsConstant"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"InitialValue"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ContainerImplementation"

-			value      	("ContainerImplementationSet" 217))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ContainerGeneric"

-			value      	"List")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ContainerType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ContainerDeclarations"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SelectorName"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"SelectorType"

-			value      	"")

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ProcedureKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Procedure"

-				value      	202)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"RecordFieldImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Component"

-				value      	216)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Discriminant"

-				value      	218)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"AccessDiscriminant"

-				value      	219)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ContainerImplementationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Array"

-				value      	217)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Generic"

-				value      	11)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"FunctionKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Function"

-				value      	199)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"DoNotCreate"

-				value      	201)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Declare"

-			value      	("DeclareSet" 234))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"DeclareSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Before"

-				value      	233)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"After"

-				value      	234)))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"AccessDiscriminantClassWide"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Representation"

-			value      	(value Text ""))))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Subsystem"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Directory"

-			value      	"AUTO GENERATE")))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"CreateMissingDirectories"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"Editor"

-			value      	("EditorType" 100))

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"IncludePath"

-			value      	"")

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"StopOnError"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"EditorType"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"CORBA"

-				name       	"BuiltIn"

-				value      	100)

-			    (object Attribute

-				tool       	"CORBA"

-				name       	"WindowsShell"

-				value      	101)))

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"PathSeparator"

-			value      	"")))

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"ArrayDimensions"

-			value      	"")

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"ConstValue"

-			value      	"")

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"ImplementationType"

-			value      	"")))

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"AdditionalIncludes"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"CmIdentification"

-			value      	(value Text "  %X% %Q% %Z% %W%"))

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"InclusionProtectionSymbol"

-			value      	"AUTO GENERATE")))

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"default__Module-Body"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"AdditionalIncludes"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"CmIdentification"

-			value      	(value Text "  %X% %Q% %Z% %W%"))

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"InclusionProtectionSymbol"

-			value      	"AUTO GENERATE")))

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"Context"

-			value      	"")

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"OperationIsOneWay"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"ArrayDimensions"

-			value      	"")

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"CaseSpecifier"

-			value      	"")

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"IsReadOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"Order"

-			value      	"")))

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"ArrayDimensions"

-			value      	"")

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"CaseSpecifier"

-			value      	"")

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"GenerateForwardReference"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"IsReadOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"Order"

-			value      	"")

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"BoundedRoleType"

-			value      	("AssocTypeSet" 47))

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"AssocTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"CORBA"

-				name       	"Array"

-				value      	24)

-			    (object Attribute

-				tool       	"CORBA"

-				name       	"Sequence"

-				value      	47)))))

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"default__Uses"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"GenerateForwardReference"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"project"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TableCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DomainCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SPPackageCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TriggerCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IndexCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ConstraintCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"StoreProcedureCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"PrimaryKeyCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ForeignKeyCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TablePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DomainPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TriggerPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IndexPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ConstraintPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"StoreProcedurePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"PrimaryKeyPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ForeignKeyPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ViewCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"JoinCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TableSpaceCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"cONTAINERCounter"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ViewPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TableSpacePrefix"

-			value      	"")))

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"dmItem"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DMName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsDatabase"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TargetDatabase"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Location"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsTableSpace"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TableSpaceType"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsDeault"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"BufferPool"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ExtentSize"

-			value      	1)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"PrefetchSize"

-			value      	1)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"PageSize"

-			value      	4)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ManagedBy"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ContainerList"

-			value      	"")))

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"default__Category"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"dmItem"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DMName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"dmSchema"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"dmDomainPackage"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsSchema"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsDomainPackage"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsRootSchema"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsRootDomainPackage"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsSchemaPackage"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DatabaseID"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DBMS"

-			value      	"")))

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"dmItem"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DMName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsTable"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsView"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsDomain"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsSPPackage"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Synonymns"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TableSpace"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SourceId"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SourceType"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SelectClause"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsUpdatable"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"CheckOption"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"PersistToServer"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TableSpaceID"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"CorrelationName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsUpdateable"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsSnapShot"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsDistinct"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsPackage"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"dmItem"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DMName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Ordinal"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsIdentity"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsUnique"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"NullsAllowed"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Length"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Scale"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ColumnType"

-			value      	"Native")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ForBitData"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DefaultValueType"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DefaultValue"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SourceId"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SourceType"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"OID"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"default__Association"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"dmItem"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DMName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsRelationship"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SourceId"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"SourceType"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"RIMethod"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ParentUpdateRule"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ParentUpdateRuleName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ParentDeleteRule"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ParentDeleteRuleName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ChildInsertRestrict"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ChildInsertRestrictName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ChildMultiplicity"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ChildMultiplicityName"

-			value      	"")))

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"dmItem"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DMName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ConstraintName"

-			value      	"")))

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"dmItem"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DMName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsConstraint"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ConstraintType"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsIndex"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsTrigger"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsStoredProcedure"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsCluster"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TableSpace"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"FillFactor"

-			value      	0)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"KeyList"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"CheckPredicate"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsUnique"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DeferalMode"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"InitialCheckTime"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"TriggerType"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsInsertEvent"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsUpdateEvent"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsDeleteEvent"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"RefOldTable"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"RefNewTable"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"RefOldRow"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"RefNewRow"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsRow"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"WhenClause"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Language"

-			value      	"SQL")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ProcType"

-			value      	"Procedure")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsDeterministic"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ParameterStyle"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ReturnedNull"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ExternalName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Length"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Scale"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ForBitData"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DefaultValue"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DefaultValueType"

-			value      	"")))

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"default__Parameter"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"dmItem"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DMName"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsInParameter"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"IsOutParameter"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Ordinal"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Length"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"Scale"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"ForBitData"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DefaultValueType"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"DefaultValue"

-			value      	"")

-		    (object Attribute

-			tool       	"Data Modeler"

-			name       	"OperationID"

-			value      	"")))

-	    (object Attribute

-		tool       	"Data Modeler"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Data Modeler Communicator"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"framework"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Java"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"Java"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Java"

-			name       	"RootDir"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"CreateMissingDirectories"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"StopOnError"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"UsePrefixes"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"AutoSync"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ShowCodegenDlg"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"JavadocDefaultAuthor"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"JavadocDefaultVersion"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"JavadocDefaultSince"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"JavadocNumAsterisks"

-			value      	0)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MaxNumChars"

-			value      	80)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Editor"

-			value      	("EditorType" 100))

-		    (object Attribute

-			tool       	"Java"

-			name       	"VM"

-			value      	("VMType" 200))

-		    (object Attribute

-			tool       	"Java"

-			name       	"ClassPath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EditorType"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"BuiltIn"

-				value      	100)

-			    (object Attribute

-				tool       	"Java"

-				name       	"WindowsShell"

-				value      	101)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"VMType"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"Sun"

-				value      	200)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Microsoft"

-				value      	201)

-			    (object Attribute

-				tool       	"Java"

-				name       	"IBM"

-				value      	202)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"InstanceVariablePrefix"

-			value      	"m_")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ClassVariablePrefix"

-			value      	"s_")

-		    (object Attribute

-			tool       	"Java"

-			name       	"DefaultAttributeDataType"

-			value      	"int")

-		    (object Attribute

-			tool       	"Java"

-			name       	"DefaultOperationReturnType"

-			value      	"void")

-		    (object Attribute

-			tool       	"Java"

-			name       	"NoClassCustomDlg"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GlobalImports"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Java"

-			name       	"OpenBraceClassStyle"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"OpenBraceMethodStyle"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"UseTabs"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"UseSpaces"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"SpacingItems"

-			value      	3)

-		    (object Attribute

-			tool       	"Java"

-			name       	"RoseDefaultCommentStyle"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"AsteriskCommentStyle"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"JavaCommentStyle"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"JavadocAuthor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"JavadocSince"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"JavadocVersion"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"NotShowRoseIDDlg"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateRoseID"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateDefaultReturnLine"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"UserDefineTagName1"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"UserDefineTagApply1"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"UserDefineTagText1"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"UserDefineTagName2"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"UserDefineTagApply2"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"UserDefineTagText2"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"UserDefineTagName3"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"UserDefineTagApply3"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"UserDefineTagText3"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ReferenceClasspath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"VAJavaWorkingFolder"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"BeanPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"BeanSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"RemotePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"RemoteSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"HomePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"HomeSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"PrimaryKeyPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"PrimaryKeySuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBDTDLocation"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletDTDLocation"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"DefaultEJBVersion"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"DefaultServletVersion"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateDefaultJ2EEJavadoc"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"UserDefineJavaDocTags"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"LocalPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"LocalSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"LocalHomePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"LocalHomeSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"SourceControl"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"SCCSelected"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"SCCProjectSourceRoot"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"SCCProjectName"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"SCCComment"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Java"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Java"

-			name       	"Final"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Static"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateDefaultConstructor"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ConstructorIs"

-			value      	("Ctor_Set" 62))

-		    (object Attribute

-			tool       	"Java"

-			name       	"Ctor_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"public"

-				value      	62)

-			    (object Attribute

-				tool       	"Java"

-				name       	"protected"

-				value      	63)

-			    (object Attribute

-				tool       	"Java"

-				name       	"private"

-				value      	64)

-			    (object Attribute

-				tool       	"Java"

-				name       	"package"

-				value      	65)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateFinalizer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateStaticInitializer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateInstanceInitializer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateCode"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"DisableAutoSync"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ReadOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletName"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletContextRef"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"IsSingleThread"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletInitParameter"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletInitParameterNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletIsSecure"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestDispatcher"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestDispatcherPath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"DispatcherInclude"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"DispatcherForward"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletSecurityRoles"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletgetInfo"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletXMLFilePath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestAttribute"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestAttributesNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForRequestAttributes"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestParameter"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestParameterNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForRequestParameters"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletHeader"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletHeaderNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForHeaders"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletIntHeader"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletDateHeader"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletCookie"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForCookie"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletContentType"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateHTML"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Generate_XML_DD"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBCmpField"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBEnvironmentProperties"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBCnxFactory"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBReferences"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSecurityRoles"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBNameInJAR"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionType"

-			value      	("EJBSessionType_Set" 200))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	""

-				value      	200)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Stateless"

-				value      	201)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Stateful"

-				value      	202)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBTransactionType"

-			value      	("EJBTransactionType_Set" 211))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBTransactionType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"Container"

-				value      	211)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Bean"

-				value      	212)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBPersistenceType"

-			value      	("EJBPersistenceType_Set" 220))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBPersistenceType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	""

-				value      	220)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Bean"

-				value      	221)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Container"

-				value      	222)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBReentrant"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionSync"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBVersion"

-			value      	("EJBVersion_Set" 230))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBVersion_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"2.0"

-				value      	230)

-			    (object Attribute

-				tool       	"Java"

-				name       	"1.x"

-				value      	231)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBXMLFilePath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"BMP_Extend_CMP"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Strictfp"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Java"

-		name       	"Default_Servlet__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletName"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletContextRef"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"IsSingleThread"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletInitParameter"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletInitParameterNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletIsSecure"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestDispatcher"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestDispatcherPath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"DispatcherInclude"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"DispatcherForward"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletSecurityRoles"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletgetInfo"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"Final"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Static"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateDefaultConstructor"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ConstructorIs"

-			value      	("Ctor_Set" 62))

-		    (object Attribute

-			tool       	"Java"

-			name       	"Ctor_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"public"

-				value      	62)

-			    (object Attribute

-				tool       	"Java"

-				name       	"protected"

-				value      	63)

-			    (object Attribute

-				tool       	"Java"

-				name       	"private"

-				value      	64)

-			    (object Attribute

-				tool       	"Java"

-				name       	"package"

-				value      	65)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateFinalizer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateStaticInitializer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateInstanceInitializer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateCode"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"DisableAutoSync"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ReadOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletXMLFilePath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestAttribute"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestAttributesNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForRequestAttributes"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestParameter"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestParameterNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForRequestParameters"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletHeader"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletHeaderNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForHeaders"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletIntHeader"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletDateHeader"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletCookie"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForCookie"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletContentType"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateHTML"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Generate_XML_DD"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBCmpField"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBEnvironmentProperties"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBCnxFactory"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBReferences"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSecurityRoles"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBNameInJAR"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionType"

-			value      	("EJBSessionType_Set" 200))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	""

-				value      	200)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Stateless"

-				value      	201)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Stateful"

-				value      	202)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBTransactionType"

-			value      	("EJBTransactionType_Set" 211))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBTransactionType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"Container"

-				value      	211)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Bean"

-				value      	212)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBPersistenceType"

-			value      	("EJBPersistenceType_Set" 220))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBPersistenceType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	""

-				value      	220)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Bean"

-				value      	221)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Container"

-				value      	222)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBReentrant"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionSync"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBVersion"

-			value      	("EJBVersion_Set" 230))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBVersion_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"2.0"

-				value      	230)

-			    (object Attribute

-				tool       	"Java"

-				name       	"1.x"

-				value      	231)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBXMLFilePath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"BMP_Extend_CMP"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Strictfp"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Java"

-		name       	"Http_Servlet__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestAttribute"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestAttributesNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForRequestAttributes"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestParameter"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestParameterNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForRequestParameters"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletHeader"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletHeaderNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForHeaders"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletIntHeader"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletDateHeader"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletCookie"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForCookie"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletContentType"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateHTML"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Final"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Static"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateDefaultConstructor"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ConstructorIs"

-			value      	("Ctor_Set" 62))

-		    (object Attribute

-			tool       	"Java"

-			name       	"Ctor_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"public"

-				value      	62)

-			    (object Attribute

-				tool       	"Java"

-				name       	"protected"

-				value      	63)

-			    (object Attribute

-				tool       	"Java"

-				name       	"private"

-				value      	64)

-			    (object Attribute

-				tool       	"Java"

-				name       	"package"

-				value      	65)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateFinalizer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateStaticInitializer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateInstanceInitializer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateCode"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"DisableAutoSync"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ReadOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletName"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletContextRef"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"IsSingleThread"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletInitParameter"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletInitParameterNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletIsSecure"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestDispatcher"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestDispatcherPath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"DispatcherInclude"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"DispatcherForward"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletSecurityRoles"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletgetInfo"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletXMLFilePath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"Generate_XML_DD"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBCmpField"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBEnvironmentProperties"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBCnxFactory"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBReferences"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSecurityRoles"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBNameInJAR"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionType"

-			value      	("EJBSessionType_Set" 200))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	""

-				value      	200)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Stateless"

-				value      	201)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Stateful"

-				value      	202)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBTransactionType"

-			value      	("EJBTransactionType_Set" 211))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBTransactionType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"Container"

-				value      	211)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Bean"

-				value      	212)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBPersistenceType"

-			value      	("EJBPersistenceType_Set" 220))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBPersistenceType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	""

-				value      	220)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Bean"

-				value      	221)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Container"

-				value      	222)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBReentrant"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionSync"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBVersion"

-			value      	("EJBVersion_Set" 230))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBVersion_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"2.0"

-				value      	230)

-			    (object Attribute

-				tool       	"Java"

-				name       	"1.x"

-				value      	231)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBXMLFilePath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"BMP_Extend_CMP"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Strictfp"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Java"

-		name       	"Default_EJB__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Java"

-			name       	"Generate_XML_DD"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBCmpField"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBEnvironmentProperties"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBCnxFactory"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBReferences"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSecurityRoles"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBNameInJAR"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionType"

-			value      	("EJBSessionType_Set" 200))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	""

-				value      	200)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Stateless"

-				value      	201)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Stateful"

-				value      	202)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBTransactionType"

-			value      	("EJBTransactionType_Set" 211))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBTransactionType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"Container"

-				value      	211)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Bean"

-				value      	212)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBPersistenceType"

-			value      	("EJBPersistenceType_Set" 220))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBPersistenceType_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	""

-				value      	220)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Bean"

-				value      	221)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Container"

-				value      	222)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBReentrant"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"BMP_Extend_CMP"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Final"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Static"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateDefaultConstructor"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ConstructorIs"

-			value      	("Ctor_Set" 62))

-		    (object Attribute

-			tool       	"Java"

-			name       	"Ctor_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"public"

-				value      	62)

-			    (object Attribute

-				tool       	"Java"

-				name       	"protected"

-				value      	63)

-			    (object Attribute

-				tool       	"Java"

-				name       	"private"

-				value      	64)

-			    (object Attribute

-				tool       	"Java"

-				name       	"package"

-				value      	65)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateFinalizer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateStaticInitializer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateInstanceInitializer"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateCode"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"DisableAutoSync"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ReadOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletName"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletContextRef"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"IsSingleThread"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletInitParameter"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletInitParameterNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletIsSecure"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestDispatcher"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestDispatcherPath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"DispatcherInclude"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"DispatcherForward"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletSecurityRoles"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletgetInfo"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletXMLFilePath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestAttribute"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestAttributesNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForRequestAttributes"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestParameter"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletRequestParameterNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForRequestParameters"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletHeader"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletHeaderNames"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForHeaders"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletIntHeader"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletDateHeader"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletCookie"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"MethodForCookie"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"ServletContentType"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateHTML"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBSessionSync"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBVersion"

-			value      	("EJBVersion_Set" 230))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBVersion_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"2.0"

-				value      	230)

-			    (object Attribute

-				tool       	"Java"

-				name       	"1.x"

-				value      	231)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"EJBXMLFilePath"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"Strictfp"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Java"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Java"

-			name       	"CmIdentification"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Java"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))))

-	    (object Attribute

-		tool       	"Java"

-		name       	"default__Module-Body"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Java"

-			name       	"CmIdentification"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Java"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))))

-	    (object Attribute

-		tool       	"Java"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Java"

-			name       	"Abstract"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Static"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Final"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Native"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Synchronized"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateFullyQualifiedReturn"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"ReplaceExistingCode"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Strictfp"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Java"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Java"

-			name       	"Final"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Transient"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Volatile"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"PropertyType"

-			value      	("BeanProperty_Set" 71))

-		    (object Attribute

-			tool       	"Java"

-			name       	"BeanProperty_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"Not A Property"

-				value      	71)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Simple"

-				value      	72)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Bound"

-				value      	73)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Constrained"

-				value      	74)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"IndividualChangeMgt"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Read/Write"

-			value      	("Read/Write_Set" 81))

-		    (object Attribute

-			tool       	"Java"

-			name       	"Read/Write_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"Read & Write"

-				value      	81)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Read Only"

-				value      	82)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Write Only"

-				value      	83)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateFullyQualifiedTypes"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Java"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Java"

-			name       	"ContainerClass"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"InitialValue"

-			value      	"")

-		    (object Attribute

-			tool       	"Java"

-			name       	"Final"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Transient"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Volatile"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"PropertyType"

-			value      	("BeanProperty_Set" 71))

-		    (object Attribute

-			tool       	"Java"

-			name       	"BeanProperty_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"Not A Property"

-				value      	71)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Simple"

-				value      	72)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Bound"

-				value      	73)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Constrained"

-				value      	74)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"IndividualChangeMgt"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"Read/Write"

-			value      	("Read/Write_Set" 81))

-		    (object Attribute

-			tool       	"Java"

-			name       	"Read/Write_Set"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Java"

-				name       	"Read & Write"

-				value      	81)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Read Only"

-				value      	82)

-			    (object Attribute

-				tool       	"Java"

-				name       	"Write Only"

-				value      	83)))

-		    (object Attribute

-			tool       	"Java"

-			name       	"GenerateFullyQualifiedTypes"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Java"

-			name       	"IsNavigable"

-			value      	TRUE)))

-	    (object Attribute

-		tool       	"Java"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Oracle8"

-		name       	"propertyId"

-		value      	"360000002")

-	    (object Attribute

-		tool       	"Oracle8"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"DDLScriptFilename"

-			value      	"DDL1.SQL")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"DropClause"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"PrimaryKeyColumnName"

-			value      	"_ID")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"PrimaryKeyColumnType"

-			value      	"NUMBER(5,0)")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"SchemaNamePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"SchemaNameSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TableNamePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TableNameSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TypeNamePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TypeNameSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"ViewNamePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"ViewNameSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"VarrayNamePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"VarrayNameSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"NestedTableNamePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"NestedTableNameSuffix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"ObjectTableNamePrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"ObjectTableNameSuffix"

-			value      	"")))

-	    (object Attribute

-		tool       	"Oracle8"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"IsSchema"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Oracle8"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"OID"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"WhereClause"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"CheckConstraint"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"CollectionTypeLength"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"CollectionTypePrecision"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"CollectionTypeScale"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"CollectionOfREFS"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Oracle8"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"MethodKind"

-			value      	("MethodKindSet" 1903))

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"OverloadID"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"OrderNumber"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"IsReadNoDataState"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"IsReadNoProcessState"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"IsWriteNoDataState"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"IsWriteNoProcessState"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"IsSelfish"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TriggerType"

-			value      	("TriggerTypeSet" 1801))

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TriggerEvent"

-			value      	("TriggerEventSet" 1601))

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TriggerText"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TriggerReferencingNames"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TriggerForEach"

-			value      	("TriggerForEachSet" 1701))

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TriggerWhenClause"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"MethodKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"MapMethod"

-				value      	1901)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"OrderMethod"

-				value      	1902)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"Function"

-				value      	1903)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"Procedure"

-				value      	1904)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"Operator"

-				value      	1905)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"Constructor"

-				value      	1906)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"Destructor"

-				value      	1907)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"Trigger"

-				value      	1908)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"Calculated"

-				value      	1909)))

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TriggerTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"AFTER"

-				value      	1801)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"BEFORE"

-				value      	1802)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"INSTEAD OF"

-				value      	1803)))

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TriggerForEachSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"ROW"

-				value      	1701)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"STATEMENT"

-				value      	1702)))

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"TriggerEventSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"INSERT"

-				value      	1601)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"UPDATE"

-				value      	1602)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"DELETE"

-				value      	1603)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"INSERT OR UPDATE"

-				value      	1604)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"INSERT OR DELETE"

-				value      	1605)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"UPDATE OR DELETE"

-				value      	1606)

-			    (object Attribute

-				tool       	"Oracle8"

-				name       	"INSERT OR UPDATE OR DELETE"

-				value      	1607)))))

-	    (object Attribute

-		tool       	"Oracle8"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"OrderNumber"

-			value      	"")))

-	    (object Attribute

-		tool       	"Oracle8"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"OrderNumber"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"IsUnique"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"NullsAllowed"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"Length"

-			value      	"")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"Precision"

-			value      	"2")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"Scale"

-			value      	"6")

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"IsIndex"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"IsPrimaryKey"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"CompositeUnique"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Oracle8"

-			name       	"CheckConstraint"

-			value      	"")))

-	    (object Attribute

-		tool       	"Oracle8"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"R2Editor"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"ComponentTest"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"cg"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowGenerateOverNewerAnnotations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowGenerateOverNewerVersion"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"UseMSVC"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"HeaderFileExtension"

-			value      	"h")

-		    (object Attribute

-			tool       	"cg"

-			name       	"HeaderFileBackupExtension"

-			value      	"h~")

-		    (object Attribute

-			tool       	"cg"

-			name       	"HeaderFileTemporaryExtension"

-			value      	"h#")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeFileExtension"

-			value      	"cpp")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeFileBackupExtension"

-			value      	"cp~")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeFileTemporaryExtension"

-			value      	"cp#")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CreateMissingDirectories"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"StopOnError"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"ErrorLimit"

-			value      	30)

-		    (object Attribute

-			tool       	"cg"

-			name       	"Directory"

-			value      	"$ROSECPP_SOURCE")

-		    (object Attribute

-			tool       	"cg"

-			name       	"PathSeparator"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"FileNameFormat"

-			value      	"128vx_b")

-		    (object Attribute

-			tool       	"cg"

-			name       	"BooleanType"

-			value      	"int")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowTemplates"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowExplicitInstantiations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowProtectedInheritance"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"CommentWidth"

-			value      	60)

-		    (object Attribute

-			tool       	"cg"

-			name       	"OneByValueContainer"

-			value      	"$targetClass")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OneByReferenceContainer"

-			value      	"$targetClass *")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OptionalByValueContainer"

-			value      	"OptionalByValue<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OptionalByReferenceContainer"

-			value      	"$targetClass *")

-		    (object Attribute

-			tool       	"cg"

-			name       	"FixedByValueContainer"

-			value      	"$targetClass[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedFixedByValueContainer"

-			value      	"$targetClass[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"FixedByReferenceContainer"

-			value      	"$targetClass *[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedFixedByReferenceContainer"

-			value      	"$targetClass *[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"BoundedByValueContainer"

-			value      	"BoundedListByValue<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedBoundedByValueContainer"

-			value      	"BoundedSetByValue<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"BoundedByReferenceContainer"

-			value      	"BoundedListByReference<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedBoundedByReferenceContainer"

-			value      	"BoundedSetByReference<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnboundedByValueContainer"

-			value      	"UnboundedListByValue<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedUnboundedByValueContainer"

-			value      	"UnboundedSetByValue<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnboundedByReferenceContainer"

-			value      	"UnboundedListByReference<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedUnboundedByReferenceContainer"

-			value      	"UnboundedSetByReference<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedByValueContainer"

-			value      	"AssociationByValue<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedQualifiedByValueContainer"

-			value      	"DictionaryByValue<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedByReferenceContainer"

-			value      	"AssociationByReference<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedQualifiedByReferenceContainer"

-			value      	"DictionaryByReference<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AlwaysKeepOrphanedCode"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"cg"

-		name       	"compiler2.1__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowGenerateOverNewerAnnotations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowGenerateOverNewerVersion"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"HeaderFileExtension"

-			value      	"h")

-		    (object Attribute

-			tool       	"cg"

-			name       	"HeaderFileBackupExtension"

-			value      	"h~")

-		    (object Attribute

-			tool       	"cg"

-			name       	"HeaderFileTemporaryExtension"

-			value      	"h#")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeFileExtension"

-			value      	"cpp")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeFileBackupExtension"

-			value      	"cp~")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeFileTemporaryExtension"

-			value      	"cp#")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CreateMissingDirectories"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"StopOnError"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"ErrorLimit"

-			value      	30)

-		    (object Attribute

-			tool       	"cg"

-			name       	"Directory"

-			value      	"$ROSECPP_SOURCE")

-		    (object Attribute

-			tool       	"cg"

-			name       	"BooleanType"

-			value      	"int")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowTemplates"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowExplicitInstantiations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowProtectedInheritance"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"OneByValueContainer"

-			value      	"$targetClass")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OneByReferenceContainer"

-			value      	"$targetClass *")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OptionalByValueContainer"

-			value      	"OptionalByValue<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OptionalByReferenceContainer"

-			value      	"$targetClass *")

-		    (object Attribute

-			tool       	"cg"

-			name       	"FixedByValueContainer"

-			value      	"$targetClass[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedFixedByValueContainer"

-			value      	"$targetClass[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"FixedByReferenceContainer"

-			value      	"$targetClass *[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedFixedByReferenceContainer"

-			value      	"$targetClass *[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"BoundedByValueContainer"

-			value      	"BoundedListByValue<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedBoundedByValueContainer"

-			value      	"BoundedSetByValue<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"BoundedByReferenceContainer"

-			value      	"BoundedListByReference<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedBoundedByReferenceContainer"

-			value      	"BoundedSetByReference<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnboundedByValueContainer"

-			value      	"UnboundedListByValue<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedUnboundedByValueContainer"

-			value      	"UnboundedSetByValue<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnboundedByReferenceContainer"

-			value      	"UnboundedListByReference<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedUnboundedByReferenceContainer"

-			value      	"UnboundedSetByReference<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedByValueContainer"

-			value      	"AssociationByValue<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedQualifiedByValueContainer"

-			value      	"DictionaryByValue<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedByReferenceContainer"

-			value      	"AssociationByReference<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedQualifiedByReferenceContainer"

-			value      	"DictionaryByReference<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"PathSeparator"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"FileNameFormat"

-			value      	"128vx_b")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AlwaysKeepOrphanedCode"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"UseMSVC"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"CommentWidth"

-			value      	60)))

-	    (object Attribute

-		tool       	"cg"

-		name       	"compiler3.0__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowGenerateOverNewerAnnotations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowGenerateOverNewerVersion"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"HeaderFileExtension"

-			value      	"h")

-		    (object Attribute

-			tool       	"cg"

-			name       	"HeaderFileBackupExtension"

-			value      	"h~")

-		    (object Attribute

-			tool       	"cg"

-			name       	"HeaderFileTemporaryExtension"

-			value      	"h#")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeFileExtension"

-			value      	"cpp")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeFileBackupExtension"

-			value      	"cp~")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeFileTemporaryExtension"

-			value      	"cp#")

-		    (object Attribute

-			tool       	"cg"

-			name       	"CreateMissingDirectories"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"StopOnError"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"ErrorLimit"

-			value      	30)

-		    (object Attribute

-			tool       	"cg"

-			name       	"Directory"

-			value      	"$ROSECPP_SOURCE")

-		    (object Attribute

-			tool       	"cg"

-			name       	"BooleanType"

-			value      	"int")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowTemplates"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowExplicitInstantiations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowProtectedInheritance"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"OneByValueContainer"

-			value      	"$targetClass")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OneByReferenceContainer"

-			value      	"$targetClass *")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OptionalByValueContainer"

-			value      	"OptionalByValue<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OptionalByReferenceContainer"

-			value      	"$targetClass *")

-		    (object Attribute

-			tool       	"cg"

-			name       	"FixedByValueContainer"

-			value      	"$targetClass[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedFixedByValueContainer"

-			value      	"$targetClass[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"FixedByReferenceContainer"

-			value      	"$targetClass *[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedFixedByReferenceContainer"

-			value      	"$targetClass *[$limit]")

-		    (object Attribute

-			tool       	"cg"

-			name       	"BoundedByValueContainer"

-			value      	"BoundedListByValue<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedBoundedByValueContainer"

-			value      	"BoundedSetByValue<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"BoundedByReferenceContainer"

-			value      	"BoundedListByReference<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedBoundedByReferenceContainer"

-			value      	"BoundedSetByReference<$targetClass,$limit>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnboundedByValueContainer"

-			value      	"UnboundedListByValue<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedUnboundedByValueContainer"

-			value      	"UnboundedSetByValue<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnboundedByReferenceContainer"

-			value      	"UnboundedListByReference<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedUnboundedByReferenceContainer"

-			value      	"UnboundedSetByReference<$targetClass>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedByValueContainer"

-			value      	"AssociationByValue<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedQualifiedByValueContainer"

-			value      	"DictionaryByValue<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedByReferenceContainer"

-			value      	"AssociationByReference<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"UnorderedQualifiedByReferenceContainer"

-			value      	"DictionaryByReference<$qualtype, $qualcont>")

-		    (object Attribute

-			tool       	"cg"

-			name       	"PathSeparator"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"FileNameFormat"

-			value      	"128vx_b")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AlwaysKeepOrphanedCode"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"UseMSVC"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"CommentWidth"

-			value      	60)))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"ImplementationType"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"ClassKey"

-			value      	"class")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEmptyRegions"

-			value      	("GenerateEmptyRegionSet" 3))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEmptyRegionSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"None"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Preserved"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Unpreserved"

-				value      	2)

-			    (object Attribute

-				tool       	"cg"

-				name       	"All"

-				value      	3)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"PutBodiesInSpec"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateDefaultConstructor"

-			value      	("GenerateSet" 199))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DefaultConstructorVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineDefaultConstructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"ExplicitDefaultConstructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateCopyConstructor"

-			value      	("GenerateSet" 199))

-		    (object Attribute

-			tool       	"cg"

-			name       	"CopyConstructorVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineCopyConstructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"ExplicitCopyConstructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateDestructor"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"DestructorVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DestructorKind"

-			value      	("ThreeKindSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineDestructor"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateAssignmentOperation"

-			value      	("GenerateSet" 199))

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssignmentVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssignmentKind"

-			value      	("ThreeKindSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineAssignmentOperation"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEqualityOperations"

-			value      	("GenerateSet" 199))

-		    (object Attribute

-			tool       	"cg"

-			name       	"EqualityVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"EqualityKind"

-			value      	("FriendKindSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineEqualityOperations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateRelationalOperations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"RelationalVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"RelationalKind"

-			value      	("FriendKindSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineRelationalOperations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateStorageMgmtOperations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"StorageMgmtVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineStorageMgmtOperations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateSubscriptOperation"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"SubscriptVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"SubscriptKind"

-			value      	("ThreeKindSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"SubscriptResultType"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineSubscriptOperation"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateDereferenceOperation"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"DereferenceVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DereferenceKind"

-			value      	("ThreeKindSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DereferenceResultType"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineDereferenceOperation"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateIndirectionOperation"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"IndirectionVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"IndirectionKind"

-			value      	("ThreeKindSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"IndirectionResultType"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineIndirectionOperation"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateStreamOperations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"StreamVisibility"

-			value      	("VisibilitySet" 45))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineStreamOperations"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"ThreeKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Common"

-				value      	200)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Virtual"

-				value      	201)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Abstract"

-				value      	202)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"KindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Common"

-				value      	200)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Virtual"

-				value      	201)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Abstract"

-				value      	202)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Static"

-				value      	203)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"FriendKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Common"

-				value      	200)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Virtual"

-				value      	201)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Abstract"

-				value      	202)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Friend"

-				value      	204)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"DeclareAndDefine"

-				value      	199)

-			    (object Attribute

-				tool       	"cg"

-				name       	"DeclareOnly"

-				value      	205)

-			    (object Attribute

-				tool       	"cg"

-				name       	"DoNotDeclare"

-				value      	206)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"VisibilitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Public"

-				value      	45)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Protected"

-				value      	44)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Private"

-				value      	43)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Implementation"

-				value      	14)))))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEmptyRegions"

-			value      	("GenerateEmptyRegionSet" 3))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEmptyRegionSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"None"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Preserved"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Unpreserved"

-				value      	2)

-			    (object Attribute

-				tool       	"cg"

-				name       	"All"

-				value      	3)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"CmIdentification"

-			value      	(value Text "  %X% %Q% %Z% %W%"))

-		    (object Attribute

-			tool       	"cg"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"FileName"

-			value      	"AUTO GENERATE")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowExtensionlessFileName"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"InclusionProtectionSymbol"

-			value      	"AUTO GENERATE")

-		    (object Attribute

-			tool       	"cg"

-			name       	"IncludeFormat"

-			value      	(value Text 

-|// $package

-|#include "$file"

-|

-			))

-		    (object Attribute

-			tool       	"cg"

-			name       	"IncludeBySimpleName"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"IncludePrecompiledHeader"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"IncludeOrder"

-			value      	"AMIR")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AdditionalIncludes"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InliningStyle"

-			value      	("InliningStyleSet" 207))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InliningStyleSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"InClassDeclaration"

-				value      	208)

-			    (object Attribute

-				tool       	"cg"

-				name       	"FollowingClassDeclaration"

-				value      	207)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"TypesDefined"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"IncludeClosure"

-			value      	(value Text ""))))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Module-Body"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEmptyRegions"

-			value      	("GenerateEmptyRegionSet" 3))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEmptyRegionSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"None"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Preserved"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Unpreserved"

-				value      	2)

-			    (object Attribute

-				tool       	"cg"

-				name       	"All"

-				value      	3)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"CmIdentification"

-			value      	(value Text "  %X% %Q% %Z% %W%"))

-		    (object Attribute

-			tool       	"cg"

-			name       	"CopyrightNotice"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"FileName"

-			value      	"AUTO GENERATE")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AllowExtensionlessFileName"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"IncludeFormat"

-			value      	(value Text 

-|// $package

-|#include "$file"

-|

-			))

-		    (object Attribute

-			tool       	"cg"

-			name       	"IncludeBySimpleName"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"IncludePrecompiledHeader"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"IncludeOrder"

-			value      	"AMIR")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AdditionalIncludes"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InliningStyle"

-			value      	("InliningStyleSet" 207))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InliningStyleSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"InClassDeclaration"

-				value      	208)

-			    (object Attribute

-				tool       	"cg"

-				name       	"FollowingClassDeclaration"

-				value      	207)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"TypesDefined"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"IncludeClosure"

-			value      	(value Text ""))))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OperationKind"

-			value      	("OperationKindSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"OperationKindSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Common"

-				value      	200)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Virtual"

-				value      	201)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Abstract"

-				value      	202)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Static"

-				value      	203)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Friend"

-				value      	204)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateAbstractBody"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"SpecialDeclReturnType"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"OperationIsConst"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"OperationIsExplicit"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"Inline"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"EntryCode"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"ExitCode"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"CCRegion"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEmptyRegions"

-			value      	("GenerateEmptyRegionSet" 3))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEmptyRegionSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"None"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Preserved"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Unpreserved"

-				value      	2)

-			    (object Attribute

-				tool       	"cg"

-				name       	"All"

-				value      	3)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"BodyAnnotations"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateFriendBody"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateFriendDecl"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Has"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"Ordered"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"NameIfUnlabeled"

-			value      	"the_$supplier")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateDataMember"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberName"

-			value      	"$relationship")

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberVisibility"

-			value      	("DataMemberVisibilitySet" 14))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberVisibilitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Public"

-				value      	45)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Protected"

-				value      	44)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Private"

-				value      	43)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Implementation"

-				value      	14)

-			    (object Attribute

-				tool       	"cg"

-				name       	"AtRelationshipVisibility"

-				value      	210)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberMutability"

-			value      	("DataMemberMutabilitySet" 0))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberMutabilitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Unrestricted"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Mutable"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Const"

-				value      	2)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberIsVolatile"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberFieldSize"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"InitialValue"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateGetOperation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateSetOperation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetName"

-			value      	"get_$relationship")

-		    (object Attribute

-			tool       	"cg"

-			name       	"SetName"

-			value      	"set_$relationship")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetSetKinds"

-			value      	("GetSetKindsSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetSetKindsSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Common"

-				value      	200)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Virtual"

-				value      	201)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Abstract"

-				value      	202)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Static"

-				value      	203)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Friend"

-				value      	204)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"ContainerClass"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"SelectorName"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"SelectorType"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetIsConst"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetResultIsConst"

-			value      	("GetResultIsConstSet" 2))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetResultIsConstSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"False"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"True"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Same_As_Function"

-				value      	2)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetSetByReference"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"SetReturnsValue"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"ForwardReferenceOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"HasRelTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Array"

-				value      	24)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Sequence"

-				value      	47)))))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Association"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"NameIfUnlabeled"

-			value      	"the_$targetClass")))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Inherit"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"InstanceArguments"

-			value      	"")))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"ForwardReferenceOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"NameIfUnlabeled"

-			value      	"the_$targetClass")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateDataMember"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberName"

-			value      	"$target")

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberVisibility"

-			value      	("DataMemberVisibilitySet" 14))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberVisibilitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Public"

-				value      	45)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Protected"

-				value      	44)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Private"

-				value      	43)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Implementation"

-				value      	14)

-			    (object Attribute

-				tool       	"cg"

-				name       	"AtRelationshipVisibility"

-				value      	210)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberMutability"

-			value      	("DataMemberMutabilitySet" 0))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberMutabilitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Unrestricted"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Mutable"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Const"

-				value      	2)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberIsVolatile"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberFieldSize"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"InitialValue"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"ContainerClass"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"ContainerGet"

-			value      	"$data.get($keys)")

-		    (object Attribute

-			tool       	"cg"

-			name       	"ContainerSet"

-			value      	"$data.set($keys,$value)")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedContainer"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassContainer"

-			value      	"$supplier *")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassInitialValue"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetSetKinds"

-			value      	("GetSetKindsSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetSetKindsSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Common"

-				value      	200)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Virtual"

-				value      	201)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Abstract"

-				value      	202)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Static"

-				value      	203)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Friend"

-				value      	204)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetSetByReference"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateGetOperation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetName"

-			value      	"get_$target")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetIsConst"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetResultIsConst"

-			value      	("GetResultIsConstSet" 2))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetResultIsConstSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"False"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"True"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Same_As_Function"

-				value      	2)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateSetOperation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"SetName"

-			value      	"set_$target")

-		    (object Attribute

-			tool       	"cg"

-			name       	"SetReturnsValue"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedGetSetByReference"

-			value      	("QualifiedGetSetByReferenceSet" 2))

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedGetSetByReferenceSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"False"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"True"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Same_As_GetSetByReference"

-				value      	2)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateQualifiedGetOperation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedGetName"

-			value      	"get_$target")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedGetIsConst"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedGetResultIsConst"

-			value      	("GetResultIsConstSet" 2))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineQualifiedGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateQualifiedSetOperation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedSetName"

-			value      	"set_$target")

-		    (object Attribute

-			tool       	"cg"

-			name       	"QualifiedSetReturnsValue"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineQualifiedSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateAssocClassDataMember"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassDataMemberName"

-			value      	"$target")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassDataMemberVisibility"

-			value      	("DataMemberVisibilitySet" 14))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberVisibilitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Public"

-				value      	45)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Protected"

-				value      	44)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Private"

-				value      	43)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Implementation"

-				value      	14)

-			    (object Attribute

-				tool       	"cg"

-				name       	"AtRelationshipVisibility"

-				value      	210)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassDataMemberMutability"

-			value      	("DataMemberMutabilitySet" 0))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberMutabilitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Unrestricted"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Mutable"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Const"

-				value      	2)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassDataMemberIsVolatile"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassGetSetKinds"

-			value      	("GetSetKindsSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateAssocClassGetOperation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassGetName"

-			value      	"get_$target")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassGetIsConst"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassGetResultIsConst"

-			value      	("GetResultIsConstSet" 2))

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineAssocClassGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateAssocClassSetOperation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassSetName"

-			value      	"set_$target")

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassSetReturnsValue"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineAssocClassSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocClassForwardReferenceOnly"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"AssocTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Array"

-				value      	24)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Sequence"

-				value      	47)))))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateDataMember"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberName"

-			value      	"$attribute")

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberVisibility"

-			value      	("DataMemberVisibilitySet" 14))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberVisibilitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Public"

-				value      	45)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Protected"

-				value      	44)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Private"

-				value      	43)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Implementation"

-				value      	14)

-			    (object Attribute

-				tool       	"cg"

-				name       	"AtAttributeVisibility"

-				value      	211)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberMutability"

-			value      	("DataMemberMutabilitySet" 0))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberMutabilitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Unrestricted"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Mutable"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Const"

-				value      	2)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberIsVolatile"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"DataMemberFieldSize"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateGetOperation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateSetOperation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetName"

-			value      	"get_$attribute")

-		    (object Attribute

-			tool       	"cg"

-			name       	"SetName"

-			value      	"set_$attribute")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetSetKinds"

-			value      	("GetSetKindsSet" 200))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetSetKindsSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"Common"

-				value      	200)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Virtual"

-				value      	201)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Abstract"

-				value      	202)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Static"

-				value      	203)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Friend"

-				value      	204)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetIsConst"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetResultIsConst"

-			value      	("GetResultIsConstSet" 2))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetResultIsConstSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"False"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"True"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Same_As_Function"

-				value      	2)))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GetSetByReference"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineGet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"SetReturnsValue"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"InlineSet"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"CCRegion"

-			value      	"")))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Uses"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"ForwardReferenceOnly"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"BodyReferenceOnly"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Subsystem"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"Directory"

-			value      	"AUTO GENERATE")

-		    (object Attribute

-			tool       	"cg"

-			name       	"DirectoryIsOnSearchList"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"PrecompiledHeader"

-			value      	"")))

-	    (object Attribute

-		tool       	"cg"

-		name       	"default__Category"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"cg"

-			name       	"IsNamespace"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"cg"

-			name       	"Indent"

-			value      	2)

-		    (object Attribute

-			tool       	"cg"

-			name       	"CodeName"

-			value      	"")

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEmptyRegions"

-			value      	("GenerateEmptyRegionSet" 3))

-		    (object Attribute

-			tool       	"cg"

-			name       	"GenerateEmptyRegionSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"cg"

-				name       	"None"

-				value      	0)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Preserved"

-				value      	1)

-			    (object Attribute

-				tool       	"cg"

-				name       	"Unpreserved"

-				value      	2)

-			    (object Attribute

-				tool       	"cg"

-				name       	"All"

-				value      	3)))))

-	    (object Attribute

-		tool       	"MSVC"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"MSVC"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"Version"

-			value      	"5.0")))

-	    (object Attribute

-		tool       	"MSVC"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"Type"

-			value      	("MSVCClassTypeSet" 0))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"MSVCClassTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Normal"

-				value      	0)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Interface_Part"

-				value      	1)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Connection_Part"

-				value      	2)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Class_Factory"

-				value      	3)))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"CObjectFunctionality"

-			value      	("CObjectFunctionalitySet" 0))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"CObjectFunctionalitySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"None"

-				value      	0)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Dynamic"

-				value      	1)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Dyncreate"

-				value      	2)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Serial"

-				value      	3)))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateOverrideGroup"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateDataGroup"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_DATA_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateFieldGroup"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_FIELD_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateMessageGroup"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateMessageMap"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_MSG_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"MESSAGE_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"OLEFactory"

-			value      	("OLEFactorySet" 0))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"OLEFactorySet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"None"

-				value      	0)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Built_in"

-				value      	1)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Simple"

-				value      	2)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Licensed"

-				value      	3)))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"OLEName"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"OLEClassID"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateOLECtlType"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"OLECtlType"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateOLETypeLib"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"OLETypeLibID"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"OLETypeLibMajor"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"OLETypeLibMinor"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GeneratePropPageIDs"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"OLEPropPageIDs"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateDispatchMap"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_DISPATCH_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_DISPATCH_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DISPATCH_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"StockProperties"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"StockFunctions"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DispatchDefValue"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateDispIdEnum"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_DISP_ID_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateInterfaceMap"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"INTERFACE_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"InitInterface"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateEventMap"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_EVENT_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_EVENT_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"EVENT_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"StockEvents"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateEventSinkMap"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_EVENTSINK_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_EVENTSINK_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"EVENTSINK_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"PropNotifySinks"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateConnectionMap"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"CONNECTION_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"ConnectionPointIID"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"InheritanceType"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DeclSpec"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"OLECommands"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"MFCDeclares"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"MFCImplements"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"ATL_Declares"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateCOMMap"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"COM_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateConnectionPointMap"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"CONNECTION_POINT_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateMsgMap"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"MSG_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GeneratePropertyMap"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"PROPERTY_MAP_Entries"

-			value      	(value Text ""))))

-	    (object Attribute

-		tool       	"MSVC"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"Type"

-			value      	("MSVCOperationTypeSet" 0))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"MSVCOperationTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Normal"

-				value      	0)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Virtual_Override"

-				value      	1)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Message_Handler"

-				value      	2)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Dispatch_Handler"

-				value      	3)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Event_Firing_Function"

-				value      	4)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Event_Sink_Handler"

-				value      	5)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Std_OLE_Method"

-				value      	6)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Command_Parser"

-				value      	7)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Property_Get_Function"

-				value      	8)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Property_Set_Function"

-				value      	9)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Property_Notify_Function"

-				value      	10)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Macro_Generated_Function"

-				value      	11)))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_MSG_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"MESSAGE_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_DISPATCH_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DISPATCH_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_EVENT_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"EVENT_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_EVENTSINK_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"EVENTSINK_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"CallType"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DeclSpec"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"BodyImage"

-			value      	(value Text ""))))

-	    (object Attribute

-		tool       	"MSVC"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"Type"

-			value      	("MSVCAttributeTypeSet" 0))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"MSVCAttributeTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Normal"

-				value      	0)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Member_Property"

-				value      	1)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Get_Set_Property"

-				value      	2)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Dialog_Data"

-				value      	3)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Field_Data"

-				value      	4)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Stock_Property"

-				value      	5)))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_DISPATCH_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DISPATCH_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DeclSpec"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"PointerBase"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"CallType"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"StockPropertyImplementation"

-			value      	"")))

-	    (object Attribute

-		tool       	"MSVC"

-		name       	"default__Has"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"Type"

-			value      	("MSVCAttributeTypeSet" 0))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"MSVCAttributeTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Normal"

-				value      	0)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Member_Property"

-				value      	1)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Get_Set_Property"

-				value      	2)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Dialog_Data"

-				value      	3)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Field_Data"

-				value      	4)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Stock_Property"

-				value      	5)))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_DISPATCH_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DISPATCH_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DeclSpec"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"PointerBase"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"CallType"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"StockPropertyImplementation"

-			value      	"")))

-	    (object Attribute

-		tool       	"MSVC"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"Type"

-			value      	("MSVCAttributeTypeSet" 0))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"MSVCAttributeTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Normal"

-				value      	0)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Member_Property"

-				value      	1)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Get_Set_Property"

-				value      	2)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Dialog_Data"

-				value      	3)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Field_Data"

-				value      	4)

-			    (object Attribute

-				tool       	"MSVC"

-				name       	"Stock_Property"

-				value      	5)))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_DISPATCH_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DISPATCH_MAP_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"DeclSpec"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"PointerBase"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"CallType"

-			value      	"")

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"StockPropertyImplementation"

-			value      	"")))

-	    (object Attribute

-		tool       	"MSVC"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateIncludesGroup"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_INCLUDES_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateInsertLocation"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"MSVC"

-		name       	"default__Module-Body"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateIncludesGroup"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"AFX_INCLUDES_Entries"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"MSVC"

-			name       	"GenerateInsertLocation"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"cg"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Rose Model Integrator"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Rose Web Publisher"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"COM"

-		name       	"propertyId"

-		value      	"783606378")

-	    (object Attribute

-		tool       	"COM"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"COM"

-			name       	"TypeKinds"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"COM"

-				name       	"enum"

-				value      	100)

-			    (object Attribute

-				tool       	"COM"

-				name       	"record"

-				value      	101)

-			    (object Attribute

-				tool       	"COM"

-				name       	"module"

-				value      	102)

-			    (object Attribute

-				tool       	"COM"

-				name       	"interface"

-				value      	103)

-			    (object Attribute

-				tool       	"COM"

-				name       	"dispinterface"

-				value      	104)

-			    (object Attribute

-				tool       	"COM"

-				name       	"coclass"

-				value      	105)

-			    (object Attribute

-				tool       	"COM"

-				name       	"alias"

-				value      	106)

-			    (object Attribute

-				tool       	"COM"

-				name       	"union"

-				value      	107)

-			    (object Attribute

-				tool       	"COM"

-				name       	"max"

-				value      	108)

-			    (object Attribute

-				tool       	"COM"

-				name       	"(none)"

-				value      	109)))

-		    (object Attribute

-			tool       	"COM"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"COM"

-			name       	"kind"

-			value      	("TypeKinds" 109))

-		    (object Attribute

-			tool       	"COM"

-			name       	"uuid"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"version"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"helpstring"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"helpcontext"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"attributes"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"dllname"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"alias"

-			value      	"")))

-	    (object Attribute

-		tool       	"COM"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"COM"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"COM"

-			name       	"id"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"helpstring"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"attributes"

-			value      	"")))

-	    (object Attribute

-		tool       	"COM"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"COM"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"COM"

-			name       	"id"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"helpstring"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"attributes"

-			value      	"")))

-	    (object Attribute

-		tool       	"COM"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"COM"

-			name       	"Generate"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"COM"

-			name       	"filename"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"library"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"uuid"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"version"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"helpstring"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"helpfile"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"helpcontext"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"lcid"

-			value      	"")

-		    (object Attribute

-			tool       	"COM"

-			name       	"attributes"

-			value      	"")))

-	    (object Attribute

-		tool       	"COM"

-		name       	"default__Param"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"COM"

-			name       	"attributes"

-			value      	"")))

-	    (object Attribute

-		tool       	"COM"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Version Control"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Visual Basic"

-		name       	"propertyId"

-		value      	"783606378")

-	    (object Attribute

-		tool       	"Visual Basic"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"UpdateCode"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"UpdateModel"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"InstancingSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"Private"

-				value      	221)

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"PublicNotCreatable"

-				value      	213)

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"SingleUse"

-				value      	214)

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"GlobalSingleUse"

-				value      	215)

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"MultiUse"

-				value      	219)

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"GlobalMultiUse"

-				value      	220)))

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"BaseSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"(none)"

-				value      	222)

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"0"

-				value      	223)

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"1"

-				value      	224)))

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"OptionBase"

-			value      	("BaseSet" 222))

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"OptionExplicit"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"OptionCompare"

-			value      	("CompareSet" 202))

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"Instancing"

-			value      	("InstancingSet" 219))

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"CompareSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"(none)"

-				value      	202)

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"Binary"

-				value      	203)

-			    (object Attribute

-				tool       	"Visual Basic"

-				name       	"Text"

-				value      	204)))))

-	    (object Attribute

-		tool       	"Visual Basic"

-		name       	"default__Operation"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"LibraryName"

-			value      	"")

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"AliasName"

-			value      	"")

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"IsStatic"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ProcedureID"

-			value      	"")

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ReplaceExistingBody"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"DefaultBody"

-			value      	(value Text ""))))

-	    (object Attribute

-		tool       	"Visual Basic"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"New"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"WithEvents"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ProcedureID"

-			value      	"")

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"PropertyName"

-			value      	"")

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"Subscript"

-			value      	"")))

-	    (object Attribute

-		tool       	"Visual Basic"

-		name       	"default__Role"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"UpdateCode"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"New"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"WithEvents"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"FullName"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ProcedureID"

-			value      	"")

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"PropertyName"

-			value      	"")

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"Subscript"

-			value      	"")))

-	    (object Attribute

-		tool       	"Visual Basic"

-		name       	"default__Inherit"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ImplementsDelegation"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"FullName"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Visual Basic"

-		name       	"default__Param"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ByVal"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ByRef"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"Optional"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ParamArray"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Visual Basic"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ProjectFile"

-			value      	"")

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"UpdateCode"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"UpdateModel"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ImportReferences"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"QuickImport"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Visual Basic"

-			name       	"ImportBinary"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"Visual Basic"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"VisualStudio"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Web Modeler"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"XML_DTD"

-		name       	"propertyId"

-		value      	"809135966")

-	    (object Attribute

-		tool       	"XML_DTD"

-		name       	"default__Project"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"CreateMissingDirectories"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"Editor"

-			value      	("EditorType" 100))

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"StopOnError"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"EditorType"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"XML_DTD"

-				name       	"BuiltIn"

-				value      	100)

-			    (object Attribute

-				tool       	"XML_DTD"

-				name       	"WindowsShell"

-				value      	101)))))

-	    (object Attribute

-		tool       	"XML_DTD"

-		name       	"default__Class"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"Entity_SystemID"

-			value      	"")

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"Entity_PublicID"

-			value      	"")

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"NotationValue"

-			value      	"")

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"InternalValue"

-			value      	"")

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"ParameterEntity"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"ExternalEntity"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"Notation_SystemID"

-			value      	"")

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"Notation_PublicID"

-			value      	"")))

-	    (object Attribute

-		tool       	"XML_DTD"

-		name       	"default__Attribute"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"DefaultDeclType"

-			value      	"")))

-	    (object Attribute

-		tool       	"XML_DTD"

-		name       	"default__Module-Spec"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"Assign All"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"XML_DTD"

-			name       	"ComponentPath"

-			value      	"")))

-	    (object Attribute

-		tool       	"XML_DTD"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"ClearCase"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"RequisitePro"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"SoDA"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"TopLink"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"default__Module-Body"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Synchronize"

-			value      	TRUE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"RevEngRootDirectory"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"RootPackage"

-			value      	"C++ Reverse Engineered")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"RevEngDirectoriesAsPackages"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"HeaderFileExtension"

-			value      	".h")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ImplementationFileExtension"

-			value      	".cpp")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"NewHeaderFileDirectory"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"NewImplementationFileDirectory"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"FileCapitalization"

-			value      	("FileCapitalizationSet" 0))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CodeGenExtraDirectories"

-			value      	("CodeGenExtraDirectoriesSet" 0))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"StripClassPrefix"

-			value      	"")

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"UseTabs"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"TabWidth"

-			value      	8)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"IndentWidth"

-			value      	4)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"AccessIndentation"

-			value      	-2)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ModelIdCommentRules"

-			value      	("ModelIdCommentRulesSet" 1))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"PageWidth"

-			value      	80)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ClassMemberOrder"

-			value      	("MemberOrderSet" 1))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"OneParameterPerLine"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"NamespaceBraceStyle"

-			value      	("BraceStyleSet" 2))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ClassBraceStyle"

-			value      	("BraceStyleSet" 2))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"FunctionBraceStyle"

-			value      	("BraceStyleSet" 2))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"Copyright"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"InitialHeaderIncludes"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"InitialBodyIncludes"

-			value      	(value Text ""))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CodeGenExtraDirectoriesSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"None"

-				value      	0)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Namespaces"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Packages"

-				value      	2)))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"FileCapitalizationSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Same as model"

-				value      	0)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Lower case"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Upper case"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Lower case with underscores"

-				value      	3)))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"BraceStyleSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"B1"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"B2"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"B3"

-				value      	3)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"B4"

-				value      	4)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"B5"

-				value      	5)))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"MemberOrderSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Public First"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Private First"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Order by kind"

-				value      	3)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Unordered"

-				value      	4)))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"ModelIdCommentRulesSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Code generation only"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Code generation and reverse engineering"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Never generate model IDs"

-				value      	3)))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CreateBackupFiles"

-			value      	FALSE)

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CommentRules"

-			value      	("CommentRulesSet" 1))

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"CommentRulesSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Always synchronize"

-				value      	1)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Code generation only"

-				value      	2)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Reverse engineering only"

-				value      	3)

-			    (object Attribute

-				tool       	"Cplusplus"

-				name       	"Never synchronize"

-				value      	4)))))

-	    (object Attribute

-		tool       	"Ada83"

-		name       	"default__Param"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"Mode"

-			value      	("ParameterModeSet" 232))

-		    (object Attribute

-			tool       	"Ada83"

-			name       	"ParameterModeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Default"

-				value      	232)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"In"

-				value      	204)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"Out"

-				value      	205)

-			    (object Attribute

-				tool       	"Ada83"

-				name       	"InOut"

-				value      	203)))))

-	    (object Attribute

-		tool       	"Ada95"

-		name       	"default__Param"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"Mode"

-			value      	("ParameterModeSet" 232))

-		    (object Attribute

-			tool       	"Ada95"

-			name       	"ParameterModeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Default"

-				value      	232)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"In"

-				value      	204)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Out"

-				value      	205)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"InOut"

-				value      	203)

-			    (object Attribute

-				tool       	"Ada95"

-				name       	"Access"

-				value      	220)))))

-	    (object Attribute

-		tool       	"Deploy"

-		name       	"HiddenTool"

-		value      	FALSE)

-	    (object Attribute

-		tool       	"Cplusplus"

-		name       	"default__Uses"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"Cplusplus"

-			name       	"BodyReferenceOnly"

-			value      	FALSE)))

-	    (object Attribute

-		tool       	"CORBA"

-		name       	"default__Param"

-		value      	(list Attribute_Set

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"Direction"

-			value      	("ParamDirectionTypeSet" 102))

-		    (object Attribute

-			tool       	"CORBA"

-			name       	"ParamDirectionTypeSet"

-			value      	(list Attribute_Set

-			    (object Attribute

-				tool       	"CORBA"

-				name       	"in"

-				value      	102)

-			    (object Attribute

-				tool       	"CORBA"

-				name       	"inout"

-				value      	103)

-			    (object Attribute

-				tool       	"CORBA"

-				name       	"out"

-				value      	104))))))

-	quid       	"3A0B2474027F"))

diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/adapterFactory.exsd b/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/adapterFactory.exsd
deleted file mode 100644
index d0100dc..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/adapterFactory.exsd
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.common.emfworkbench.integration">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.common.emfworkbench.integration" id="adapterFactory" name="Adapter Factory Extension"/>

-      </appInfo>

-      <documentation>

-         This is used to register an adapter factory with the dynamic adapter factory.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="adapterFactory" minOccurs="1" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="adapterFactory">

-      <annotation>

-         <documentation>

-            Defines the Adapter Factory being added. All added Adapter Factories are queriable whenever their Function Group and optional Viewer Id are specified.

-         </documentation>

-      </annotation>

-      <complexType>

-         <sequence>

-            <element ref="view" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="packageURI" type="string" use="required">

-            <annotation>

-               <documentation>

-                  The package URI that you are extending (for example &quot;ejb.xmi&quot;)

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="className" type="string" use="required">

-            <annotation>

-               <documentation>

-                  The fully qualified name of the class which implements org.eclipse.emf.common.notify.AdapterFactory.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  The Unique identifier of the Adapter Factory extension.  This will associate it with one or more function groups based on the function group patterns.  Function Groups allow Content and Actions to be enabled or disabled based on project-specific information. Generally, they are used by vendors who wish to add functionality specific to their products, e.g. J2EE Application Servers.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="functionGroupID" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="view">

-      <complexType>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  An optional viewer Id which will limit the invocation of the defined Adapter Factory to the given viewer id.

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which accompanies 

-this distribution, and is available at &lt;a

-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/editModel.exsd b/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/editModel.exsd
deleted file mode 100644
index 14743b2..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/editModel.exsd
+++ /dev/null
@@ -1,198 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.common.emfworkbench.integration">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.common.emfworkbench.integration" id="editModel" name="EMF Resource Edit Model"/>

-      </appInfo>

-      <documentation>

-         Edit models provide a framework for managing a set of EMF resources within a unit of work.  For example, a workspace operation may affect a change to multiple EMF resources. Edit models provide basic services such as loads, saves (when necessary), and validate edit for the managed resources.  Edit models are reference counted, therefore a single instance of an edit model can be shared by more than one operation or editor.  By declaring an edit model, a plugin provider enables other components to contribute resources to be managed by that edit model.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="editModel" minOccurs="1" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="editModel">

-      <annotation>

-         <documentation>

-            The declaration for an edit model to be used in the workspace.

-         </documentation>

-      </annotation>

-      <complexType>

-         <sequence>

-            <element ref="editModelResource" minOccurs="1" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="editModelID" type="string" use="required">

-            <annotation>

-               <documentation>

-                  A unique identifier for the edit model.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="factoryClass" type="string" use="required">

-            <annotation>

-               <documentation>

-                  An optional factory class that is used for this edit model.  The class must implement the interface &lt;code&gt;org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory&lt;/code&gt;. If none is specified, then a generic &lt;code&gt;EditModel&lt;/code&gt; is created.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="loadUnknownResourcesAsReadOnly" type="boolean">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="parentModelID" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="editModelResource">

-      <annotation>

-         <documentation>

-            This is an individual contribution of a resource to the edit model.  If more than one instance of the same URI is registered against an edit model id, the resource is still only loaded once.

-         </documentation>

-      </annotation>

-      <complexType>

-         <attribute name="URI" type="string" use="required">

-            <annotation>

-               <documentation>

-                  The URI of the resource relative to the root container from which EMF resources are loaded.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="autoload" type="boolean" use="default" value="false">

-            <annotation>

-               <documentation>

-                  Indicator which determines whether this resource should be autoloaded when the edit model is created, or when an IFile corresponding to this resource is added.

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-   

-   <element name="resourceExtension">

-      <annotation>

-         <documentation>

-            This allows registration of files for autoloading according to file extension.

-         </documentation>

-      </annotation>

-      <complexType>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  The file extension itself (&quot;myxmi&quot;)

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         &lt;pre&gt;

-   &lt;extension

-         id=&quot;editModel.acme.parent&quot;

-         name=&quot;Acme Parent Edit Model&quot;

-         point=&quot;org.eclipse.wst.common.emfworkbench.integration.editModel&quot;&gt;

-      &lt;editModel

-            editModelID=&quot;com.acme.acmepro.parent.editModel&quot;

-            factoryClass=&quot;org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory&quot;&gt;

-        &lt;editModelResource URI=&quot;DIR/resource0.xml&quot;/&gt;

-        &lt;editModelResource URI=&quot;DIR/resource1.xml&quot;/&gt;

-      &lt;/editModel&gt;

-   &lt;/extension&gt;

-

-   &lt;extension

-         id=&quot;editModel.acme.child&quot;

-         name=&quot;Acme Child Edit Model&quot;

-         point=&quot;org.eclipse.wst.common.emfworkbench.integration.editModel&quot;&gt;

-      &lt;editModel

-            editModelID=&quot;com.acme.acmepro.child.editModel&quot;

-            factoryClass=&quot;org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory&quot;

-            parentModelID=&quot;com.acme.acmepro.parent.editModel&quot;&gt;

-        &lt;editModelResource URI=&quot;DIR/resource2.xml&quot;/&gt;

-        &lt;editModelResource URI=&quot;DIR/resource3.xml&quot;/&gt;

-      &lt;/editModel&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Edit Models can be accessed through the &lt;code&gt;org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext&lt;/code&gt;.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which accompanies 

-this distribution, and is available at &lt;a

-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/editModelExtension.exsd b/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/editModelExtension.exsd
deleted file mode 100644
index 006d2ae..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/editModelExtension.exsd
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.common.emfworkbench.integration">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.common.emfworkbench.integration" id="editModelExtension" name="Edit Model Extensions"/>

-      </appInfo>

-      <documentation>

-         The Edit Model Extension allows third parties to contribute expected resources to Edit Models. The functionGroupID allows users to select which extensions they choose to have enabled.

-      </documentation>

-   </annotation>

-

-   <include schemaLocation="editModel.exsd"/>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="editModelExtension" minOccurs="1" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="editModelExtension">

-      <annotation>

-         <documentation>

-            Edit model extensions allow components to contribute known resource URIs to an edit model.  Whenever an edit model is loaded, the resources will automatically be loaded and managed by the edit model.  Changes to the resources will be tracked and saved during operations or editor saves.

-         </documentation>

-      </annotation>

-      <complexType>

-         <sequence>

-            <element ref="editModelResource" minOccurs="1" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="editModelID" type="string" use="required">

-            <annotation>

-               <documentation>

-                  The unique id of the edit model being extended.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  The unique identifier for this extension.  This will be used to associate it with a function group pattern binding.

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         &lt;pre&gt;

-   &lt;extension

-         point=&quot;org.eclipse.wst.common.emfworkbench.integration.editModelExtension&quot;&gt;

-      &lt;editModelExtension

-            editModelID=&quot;org.sample.inheritance.parent.editModel&quot;

-            functionGroupID=&quot;org.sample.group&quot;&gt;

-         &lt;editModelResource URI=&quot;DIR/extension0.xml&quot;/&gt;

-         &lt;editModelResource URI=&quot;DIR/extension1.xml&quot;/&gt;

-      &lt;/editModelExtension&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which accompanies 

-this distribution, and is available at &lt;a

-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/modifierHelperFactory.exsd b/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/modifierHelperFactory.exsd
deleted file mode 100644
index 9cc07db..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/schema/modifierHelperFactory.exsd
+++ /dev/null
@@ -1,160 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.common.emfworkbench.integration">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.common.emfworkbench.integration" id="ModifierHelperFactory" name="Modifier Helper Factory"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <annotation>

-         <documentation>

-            This is used to register for the model modifiers.

-         </documentation>

-      </annotation>

-      <complexType>

-         <sequence>

-            <element ref="factory" minOccurs="1" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="factory">

-      <complexType>

-         <sequence>

-            <element ref="package" minOccurs="1" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="package">

-      <complexType>

-         <sequence>

-            <element ref="type" minOccurs="1" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="uri" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="type">

-      <complexType>

-         <sequence>

-            <element ref="feature" minOccurs="1" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="name" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="feature">

-      <complexType>

-         <attribute name="name" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="action" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which accompanies 

-this distribution, and is available at &lt;a

-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/CompatibilityWorkbenchURIConverterImpl.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/CompatibilityWorkbenchURIConverterImpl.java
deleted file mode 100644
index 8ae0cd1..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/CompatibilityWorkbenchURIConverterImpl.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 4, 2004
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.jem.util.emf.workbench.ResourceSetWorkbenchSynchronizer;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-import org.eclipse.jem.util.emf.workbench.WorkbenchURIConverterImpl;
-import org.eclipse.wst.common.internal.emf.resource.CompatibilityURIConverter;
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class CompatibilityWorkbenchURIConverterImpl extends WorkbenchURIConverterImpl implements CompatibilityURIConverter {
-	/**
-	 *  
-	 */
-	public CompatibilityWorkbenchURIConverterImpl() {
-		super();
-	}
-
-	/**
-	 * @param anInputContainer
-	 */
-	public CompatibilityWorkbenchURIConverterImpl(IContainer anInputContainer) {
-		super(anInputContainer);
-	}
-
-	/**
-	 * @param aContainer
-	 * @param aSynchronizer
-	 */
-	public CompatibilityWorkbenchURIConverterImpl(IContainer aContainer, ResourceSetWorkbenchSynchronizer aSynchronizer) {
-		super(aContainer, aSynchronizer);
-	}
-
-	/**
-	 * @param anInputContainer
-	 * @param anOutputContainer
-	 */
-	public CompatibilityWorkbenchURIConverterImpl(IContainer anInputContainer, IContainer anOutputContainer) {
-		super(anInputContainer, anOutputContainer);
-	}
-
-	/**
-	 * @param anInputContainer
-	 * @param anOutputContainer
-	 * @param aSynchronizer
-	 */
-	public CompatibilityWorkbenchURIConverterImpl(IContainer anInputContainer, IContainer anOutputContainer, ResourceSetWorkbenchSynchronizer aSynchronizer) {
-		super(anInputContainer, anOutputContainer, aSynchronizer);
-	}
-
-	/**
-	 * @see com.ibm.etools.xmi.helpers.CompatibilityURIConverter#deNormalize(URI)
-	 */
-	public URI deNormalize(URI uri) {
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(uri)) {
-			IFile aFile = WorkbenchResourceHelper.getPlatformFile(uri);
-			if (aFile != null) {
-				IProject fileProject = aFile.getProject();
-				//If it is not in the same project then just return the URI as is.
-				if (resourceSetSynchronizer.getProject() == fileProject)
-					return getContainerRelativeURI(aFile);
-			}
-		}
-		return uri;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/DynamicGrowthModel.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/DynamicGrowthModel.java
deleted file mode 100644
index d6a9a6d..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/DynamicGrowthModel.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench;
-
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.core.runtime.IPath;
-
-
-public class DynamicGrowthModel {
-	
-	private static final int MINIMUM_OPTIMAL_SIZE = 10;
-
-	private static final int MEMORY_THRESHHOLD = 100;
-	
-	private static final int NOTICEABLE_CHANGE = 5;
-	
-	
-	/* Stores a FIFO list of the Key types (IPath)*/
-	private final List queue = new LinkedList();
-	
-	/* We use an int[] as the value so we don't have to keep creating Integer objects */
-	private final Map/* <IPath, int[]> */ uniquesMap = new HashMap();
-	
-	
-	/**
-	 * Inject the key into the DynamicGrowthModel. May or may not affect the 
-	 * dynamic size.
-	 *
-	 * @param key The key to inject into the model
-	 * @return True if the optimal size changed greather than {@value NOTICEABLE_CHANGE} as a result of the injection.
-	 */
-	public synchronized boolean injectKey(IPath key) {
-		
-		int originalSize = getOptimalSize();
-		
-		int[] count = null;
-		if( (count = (int[]) uniquesMap.get(key)) != null ) {
-			/* increment the count */
-			++count[0];
-		} else {
-			/* insert the first count */
-			uniquesMap.put(key, count = new int[] { 1 } );
-		}
-		
-		if( queue.size() == MEMORY_THRESHHOLD ) {
-			
-			/* take the oldest value off the queue */
-			IPath oldestKey = (IPath) queue.remove(0);
-			
-			/* determine if another instance of the oldest key is still in the queue */
-			count = (int[]) uniquesMap.get(oldestKey);
-			Assert.isNotNull(count);
-			
-			/* Reduce the count */
-			count[0] -= 1;
-		
-			/* Count should never be negative */
-			Assert.isTrue(count[0] >= 0);
-			
-		
-			/* This unique key is no longer in the queue*/
-			if(count[0] == 0) {
-				uniquesMap.remove(oldestKey);
-			}
-			
-			
-			
-		}
-		/* Add the newKey to end of the list*/
-		queue.add(key);
-		
-		return Math.abs( originalSize - getOptimalSize() ) > NOTICEABLE_CHANGE;
-
-	}
-	
-	/**
-	 * The optimal size is an integer from [{@value #MINIMUM_OPTIMAL_SIZE}, {@value #MEMORY_THRESHHOLD}]. 
-	 * 
-	 * @return the optimal size for the LRU Cache.  
-	 */
-	public int getOptimalSize() {		
-		return uniquesMap.size() > MINIMUM_OPTIMAL_SIZE ? uniquesMap.size() : MINIMUM_OPTIMAL_SIZE;
-	}
-
-}	
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EMFWorkbenchContext.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EMFWorkbenchContext.java
deleted file mode 100644
index 66c6b35..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EMFWorkbenchContext.java
+++ /dev/null
@@ -1,422 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 3, 2004
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.jem.util.emf.workbench.EMFWorkbenchContextBase;
-import org.eclipse.jem.util.emf.workbench.ISynchronizerExtender;
-import org.eclipse.jem.util.emf.workbench.ProjectResourceSet;
-import org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResource;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedXMIFactoryImpl;
-import org.eclipse.wst.common.internal.emf.utilities.DefaultOverridableResourceFactoryRegistry;
-import org.eclipse.wst.common.internal.emfworkbench.edit.EditModelRegistry;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModelEvent;
-import org.eclipse.wst.common.internal.emfworkbench.integration.ProjectResourceSetEditImpl;
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class EMFWorkbenchContext extends EMFWorkbenchContextBase implements ISynchronizerExtender {
-
-	private Map readOnlyModels = new HashMap();
-	private Map editableModels = new HashMap();
-
-	protected Adapter resourceSetListener;
-
-	protected boolean defaultToMOF5Compatibility = false;
-
-
-	/**
-	 * @param aProject
-	 */
-	public EMFWorkbenchContext(IProject aProject) {
-		super(aProject);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext#initializeResourceSet(org.eclipse.wst.common.internal.emfworkbench.ProjectResourceSet)
-	 */
-	protected void initializeResourceSet(ProjectResourceSet aResourceSet) {
-		super.initializeResourceSet(aResourceSet);
-		Resource.Factory.Registry reg = new DefaultOverridableResourceFactoryRegistry();
-		Resource.Factory factory = new ReferencedXMIFactoryImpl();
-		reg.getExtensionToFactoryMap().put(Resource.Factory.Registry.DEFAULT_EXTENSION, factory);
-		// add xmi because other plugins are registering it globally
-		reg.getExtensionToFactoryMap().put("xmi", factory); //$NON-NLS-1$
-		aResourceSet.setResourceFactoryRegistry(reg);
-		aResourceSet.getSynchronizer().addExtender(this); // added so we can be informed of closes
-		// to the project.
-		startListeningToResourceSet();
-	}
-
-	public static String getCacheID(String editModelID, Map params) {
-		return EditModelRegistry.getInstance().getCacheID(editModelID, params);
-	}
-
-	/**
-	 * This is the API that clients should use when they have an intent to modify a particular
-	 * resource. You should only access the resources through the J2EEEditModel that is returned by
-	 * this method if you have the intent to modify.
-	 * 
-	 * @see J2EEEditModel
-	 */
-	public final EditModel getEditModelForWrite(String editModelID, Object accessorKey, Map params) {
-		EditModel editModel = getExistingEditModel(editModelID, params, false);
-		if (null == editModel) {
-			editModel = createEditModelForWrite(editModelID, params);
-			synchronized (editModel) {
-				cacheEditModel(editModel, params);
-				editModel.access(accessorKey);
-			}
-		} else {
-			if (editModel.isDisposed() || editModel.isDisposing()) {
-				editModel = createEditModelForWrite(editModelID, params);
-				cacheEditModel(editModel, params);
-			}
-			synchronized (editModel) {
-				editModel.access(accessorKey);
-			}
-		}
-		return editModel;
-	}
-
-	/**
-	 * This is the API that clients should use when they want to read a group of resources that are
-	 * normally managed by the edit model with
-	 * 
-	 * @aKey. You should only access the resources through the J2EEEditModel that is returned by
-	 *        this method. You must call releaseEditModel(...) when you are finished with the edit
-	 *        model.
-	 * @see J2EEEditModel
-	 */
-	public final EditModel getEditModelForRead(String editModelID, Object accessorKey, Map params) {
-		try {
-			EditModel editModel = getExistingEditModel(editModelID, params, true);
-			if (null == editModel) {
-				editModel = createEditModelForRead(editModelID, params);
-				synchronized (editModel) {
-					cacheEditModel(editModel, params);
-					EditModelLeastUsedCache.getInstance().access(editModel);
-					editModel.access(accessorKey);
-				}
-			} else {
-				if (editModel.isDisposed() || editModel.isDisposing()) {
-					editModel = createEditModelForRead(editModelID, params);
-					cacheEditModel(editModel, params);
-				}
-				synchronized (editModel) {
-					EditModelLeastUsedCache.getInstance().access(editModel);
-					editModel.access(accessorKey);
-				}
-			}
-			return editModel;
-		} finally {
-			EditModelLeastUsedCache.getInstance().optimizeLRUSizeIfNecessary();
-		}
-	}
-
-	/**
-	 * This is the API that clients should use when they have an intent to modify a particular
-	 * resource. You should only access the resources through the J2EEEditModel that is returned by
-	 * this method if you have the intent to modify.
-	 * 
-	 * @see J2EEEditModel
-	 */
-	public final EditModel getEditModelForWrite(String editModelID, Object accessorKey) {
-		return getEditModelForWrite(editModelID, accessorKey, null);
-	}
-
-	/**
-	 * This is the API that clients should use when they want to read a group of resources that are
-	 * normally managed by the edit model with
-	 * 
-	 * @aKey. You should only access the resources through the J2EEEditModel that is returned by
-	 *        this method. You must call releaseEditModel(...) when you are finished with the edit
-	 *        model.
-	 * @see J2EEEditModel
-	 */
-	public final EditModel getEditModelForRead(String editModelID, Object accessorKey) {
-		return getEditModelForRead(editModelID, accessorKey, null);
-	}
-
-
-
-	public EditModel getExistingEditModel(String editModelID, Map params, boolean isReadOnly) {
-		EditModel editModel = null;
-		synchronized (readOnlyModels) {
-			if (isReadOnly) {
-				editModel = (EditModel) readOnlyModels.get(getCacheID(editModelID, params));
-			} else {
-				synchronized (editableModels) {
-					editModel = (EditModel) editableModels.get(getCacheID(editModelID, params));
-				}
-			}
-		}
-		return editModel;
-	}
-
-	/**
-	 * Subclasses may override to return the appropriate read-only J2EEEditModel.
-	 */
-	protected EditModel createEditModelForRead(String editModelID, Map params) {
-		return EditModelRegistry.getInstance().createEditModelForRead(editModelID, this, params);
-	}
-
-	/**
-	 * Subclasses may override to return the appropriate J2EEEditModel.
-	 */
-	protected EditModel createEditModelForWrite(String editModelID, Map params) {
-		return EditModelRegistry.getInstance().createEditModelForWrite(editModelID, this, params);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/16/2001 12:25:39 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	public void cacheEditModel(EditModel editModel, Map params) {
-		editModel.setParams(params);
-		synchronized (readOnlyModels) {
-			if (editModel.isReadOnly())
-				readOnlyModels.put(getCacheID(editModel.getEditModelID(), params), editModel);
-			else
-				synchronized (editableModels) {
-					editableModels.put(getCacheID(editModel.getEditModelID(), params), editModel);
-				}
-		}
-	}
-
-	protected void discardAllEditModels() {
-		synchronized (readOnlyModels) {
-			synchronized (editableModels) {
-				Collection readOnly = readOnlyModels.values();
-				EditModelLeastUsedCache.getInstance().removeAllCached(readOnly);
-				discardModels(readOnly);
-				discardModels(editableModels.values());
-			}
-		}
-
-	}
-
-	private void discardModels(Collection editModels) {
-		if (editModels != null && !editModels.isEmpty()) {
-			// Make a copy for safety against concurrent modification
-			Iterator it = new ArrayList(editModels).iterator();
-			while (it.hasNext()) {
-				((EditModel) it.next()).dispose();
-			}
-		}
-	}
-
-	public void removeEditModel(EditModel editModel, boolean readOnly) {
-		// The best way would be to recompute the cache id, but we don't care
-		// because the edit model should only be cached once anyway
-		synchronized (readOnlyModels) {
-			if (readOnly)
-				readOnlyModels.values().remove(editModel);
-			else
-				synchronized (editableModels) {
-					editableModels.values().remove(editModel);
-				}
-		}
-	}
-
-	/**
-	 * Notify all editModels of the change.
-	 */
-	protected void notifyEditModels(EditModelEvent anEvent) {
-		if (anEvent == null)
-			return;
-		List aList = new ArrayList();
-		synchronized (readOnlyModels) {
-			synchronized (editableModels) {
-				aList.addAll(readOnlyModels.values());
-				aList.addAll(editableModels.values());
-			}
-		}
-		EditModel editModel;
-		for (int i = 0; i < aList.size(); i++) {
-			editModel = (EditModel) aList.get(i);
-			try {
-				editModel.resourceChanged(anEvent);
-			} catch (Exception e) {
-				Logger.getLogger().logError(e);
-			}
-		}
-	}
-
-	protected boolean shouldNotifyEditModels() {
-		synchronized (readOnlyModels) {
-			synchronized (editableModels) {
-				return !this.readOnlyModels.isEmpty() || !this.editableModels.isEmpty();
-			}
-		}
-	}
-
-	protected Adapter getResourceSetListener() {
-		if (resourceSetListener == null)
-			resourceSetListener = new ResourceSetListener();
-		return resourceSetListener;
-	}
-
-
-	protected class ResourceSetListener extends AdapterImpl {
-		/*
-		 * @see Adapter#notifyChanged(new ENotificationImpl((InternalEObject)Notifier,
-		 *      int,(EStructuralFeature) EObject, Object, Object, int))
-		 */
-		public void notifyChanged(Notification notification) {
-			switch (notification.getEventType()) {
-				case Notification.ADD :
-					addedResource((Resource) notification.getNewValue());
-					break;
-				case Notification.REMOVE :
-					removedResource((Resource) notification.getOldValue());
-					break;
-				case Notification.REMOVE_MANY :
-					removedResources((List) notification.getOldValue());
-					break;
-			}
-		}
-	}
-
-	/**
-	 * Notify all editModels of the change.
-	 */
-	public void addedResource(Resource addedResource) {
-		if (defaultToMOF5Compatibility && (addedResource != null) && (addedResource instanceof CompatibilityXMIResource))
-			((CompatibilityXMIResource) addedResource).setFormat(CompatibilityXMIResource.FORMAT_MOF5);
-		if (shouldNotifyEditModels()) {
-			EditModelEvent event = new EditModelEvent(EditModelEvent.ADDED_RESOURCE, null);
-			event.addResource(addedResource);
-			notifyEditModels(event);
-		}
-	}
-
-	/**
-	 * Notify all editModels of the change.
-	 */
-	public void removedResource(Resource removedResource) {
-		if (shouldNotifyEditModels()) {
-			EditModelEvent event = new EditModelEvent(EditModelEvent.REMOVED_RESOURCE, null);
-			event.addResource(removedResource);
-			notifyEditModels(event);
-		}
-	}
-
-	/**
-	 * Notify all editModels of the change.
-	 */
-	public void removedResources(List removedResources) {
-		if (shouldNotifyEditModels()) {
-			EditModelEvent event = new EditModelEvent(EditModelEvent.REMOVED_RESOURCE, null);
-			event.addResources(removedResources);
-			notifyEditModels(event);
-		}
-	}
-
-	protected void startListeningToResourceSet() {
-		ResourceSet set = getResourceSet();
-		if (set != null)
-			set.eAdapters().add(getResourceSetListener());
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.ISynchronizerExtender#projectChanged(org.eclipse.core.resources.IResourceDelta)
-	 */
-	public void projectChanged(IResourceDelta delta) {
-		// default nothing
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.ISynchronizerExtender#projectClosed()
-	 */
-	public void projectClosed() {
-		discardAllEditModels();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContextBase#createURIConverter(org.eclipse.wst.common.internal.emfworkbench.ProjectResourceSet)
-	 */
-	protected WorkbenchURIConverter createURIConverter(ProjectResourceSet aResourceSet) {
-		return new CompatibilityWorkbenchURIConverterImpl(getProject(), aResourceSet.getSynchronizer());
-	}
-
-	protected ProjectResourceSet createResourceSet() {
-		if (project == null)
-			throw new IllegalStateException("Attempt to create resource set with null project"); //$NON-NLS-1$
-		return new ProjectResourceSetEditImpl(project);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContextBase#deleteFile(org.eclipse.emf.ecore.resource.Resource)
-	 */
-	public void deleteFile(Resource resource) {
-		try {
-			WorkbenchResourceHelper.deleteResource(resource);
-		} catch (CoreException ex) {
-			Logger.getLogger().logError(ex);
-		}
-
-	}
-
-	/**
-	 * @return Returns the defaultToMOF5Compatibility.
-	 */
-	public boolean isDefaultToMOF5Compatibility() {
-		return defaultToMOF5Compatibility;
-	}
-
-	/**
-	 * @param defaultToMOF5Compatibility
-	 *            The defaultToMOF5Compatibility to set.
-	 */
-	public void setDefaultToMOF5Compatibility(boolean defaultToMOF5Compatibility) {
-		this.defaultToMOF5Compatibility = defaultToMOF5Compatibility;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EMFWorkbenchEditResourceHandler.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EMFWorkbenchEditResourceHandler.java
deleted file mode 100644
index 8bd1073..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EMFWorkbenchEditResourceHandler.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on May 25, 2004
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-package org.eclipse.wst.common.internal.emfworkbench;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * @author vijayb
- * 
- * TODO To change the template for this generated type comment go to Window - Preferences - Java -
- * Code Style - Code Templates
- */
-public class EMFWorkbenchEditResourceHandler extends NLS {
-	private static final String BUNDLE_NAME = "emfworkbenchedit";//$NON-NLS-1$
-
-	private EMFWorkbenchEditResourceHandler() {
-		// Do not instantiate
-	}
-
-	public static String ClientAccessRegistryException_UI_1;
-	public static String ClientAccessRegistryException_UI_0;
-	public static String Snapshot_ERROR_0;
-	public static String EditModelRegistry_ERROR_2;
-	public static String EditModelRegistry_ERROR_1;
-	public static String EditModelRegistry_ERROR_0;
-	public static String AdapterFactoryDescriptor_ERROR_1;
-	public static String AdapterFactoryDescriptor_ERROR_0;
-	public static String DynamicAdapterFactory_ERROR_0;
-	public static String ClientAccessRegistry_ERROR_1;
-	public static String ClientAccessRegistry_ERROR_0;
-
-	static {
-		NLS.initializeMessages(BUNDLE_NAME, EMFWorkbenchEditResourceHandler.class);
-	}
-
-	public static String getString(String key, Object[] args) {
-		return NLS.bind(key, args);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EditModelLeastUsedCache.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EditModelLeastUsedCache.java
deleted file mode 100644
index 0401cb7..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EditModelLeastUsedCache.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench;
-
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.LinkedHashSet;
-
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-
-/**
- * This class will be used to cache the recently used edit models.  Loading and unloading of edit models can be
- * costly, especially if operations and/or post operations have a need to reload the same edit model repeatedly.
- * This will allow those repeatedly used edit models to be cached, thereby improving performance.  By design, the
- * edit models load resources and these resources are stored in memory, so we don't want to cache every edit
- * model accessed, so this is a least used cache mechanism, where the max size is 10.  If an edit model is used
- * it is put to the back of the stack, and new edit models accessed are put to the back of the stack, so that the
- * top of the stack is the first edit model disposed when the cache is higher than the threshhold.
- *
- */
-public class EditModelLeastUsedCache {
-	
-	/**
-	 * Provide a singleton instance.
-	 */
-	private static EditModelLeastUsedCache INSTANCE = new EditModelLeastUsedCache();	
-	
-	/**
-	 * The threshold, or most edit models we will keep open at a time is 10.  This is low enough to not
-	 * overwhelm workbench memory and high enough to aid in operations which continually reload 3-4 
-	 * edit models.
-	 */
-	private final static int threshhold = 10;
-	
-	/**
-	 *  A LHS is required to ensure the order of the items is maintained. Other
-	 * Set implementations (HashSet, TreeSet) do not preserve the order. This 
-	 * is critical to the implementation. DO NOT CHANGE THIS. 
-	 */
-	private LinkedHashSet lru = new LinkedHashSet(threshhold);
-	
-	/**
-	 * Accessor for the EditModelLeastUsedCache INSTANCE
-	 * 
-	 * @return the EditModelLeastUsedCache INSTANCE
-	 */
-	public static EditModelLeastUsedCache getInstance() {
-		return INSTANCE;
-	}
-	
-	/**
-	 * Remove the all elements from the lru that are contained
-	 * in <code>aCollection</code>.  This method assumes the
-	 * EditModels in the aCollection will be discarded and it
-	 * will not attempt to decrememt its reference count.
-	 * @param aCollection - A {@link Collection} of {@link EditModel}.
-	 */
-	public void removeAllCached(Collection aCollection) {
-		if (aCollection != null) { 
-			lru.removeAll(aCollection);
-		}
-	}
-
-	/**
-	 * An {@link EditModel} is being accessed so we will want
-	 * to update the lru and access the editModel which will hold
-	 * a reference count.
-	 * @param editModel - The {@link EditModel} that we want to place
-	 * 	in the least used cache.
-	 */
-	public void access(EditModel editModel) {
-		boolean shouldAccess = true;
-		synchronized (lru) {
-			if (lru.contains(editModel)) {
-				moveToEnd(editModel);
-				shouldAccess = false;
-			}
-		}
-		if (shouldAccess) {
-			editModel.access(this);
-			synchronized (lru) {
-				lru.add(editModel);
-			}
-		}
-	}
-	
-	/**
-	 * If we hit the capacity of the lru then remove the first one
-	 * and release access.
-	 */
-	public void optimizeLRUSizeIfNecessary() {
-		EditModel model = null;
-		
-		synchronized (lru) {
-			if (lru.size() > threshhold) {
-				// remove oldest element and release the edit model.
-				Iterator iterator = lru.iterator();
-				model = (EditModel) iterator.next();
-				if (model != null) {
-					lru.remove(model);	
-				}
-			}
-		}
-		if (model != null)
-			model.releaseAccess(this);
-	}
-
-	/**
-	 * Move the editModel to the end of the list 
-	 * @param editModel -- EditModel to be moved
-	 */
-	private void moveToEnd(EditModel editModel) {
-		lru.remove(editModel);
-		lru.add(editModel);
-	}	
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EmfPackagePropertyTester.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EmfPackagePropertyTester.java
deleted file mode 100644
index 9959402..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EmfPackagePropertyTester.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench;
-
-import org.eclipse.core.expressions.PropertyTester;
-import org.eclipse.emf.ecore.EObject;
-
-public class EmfPackagePropertyTester extends PropertyTester {
-
-	public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
-		if (receiver == null || !(receiver instanceof EObject) || expectedValue == null || !(expectedValue instanceof String))
-			return false;
-		
-		EObject eObject = (EObject) receiver;
-		String emfPackage = (String)expectedValue;
-		return emfPackage.equals(eObject.eClass().getEPackage().getNsURI());
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EmfValidationHandler.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EmfValidationHandler.java
deleted file mode 100644
index 29f42c7..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/EmfValidationHandler.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.wst.validation.internal.IValidationSelectionHandler;
-
-
-/**
- * Emf validation extension for valaditemenuaction
- */
-public class EmfValidationHandler implements IValidationSelectionHandler {
-
-	private String validationType = null;
-	
-	/**
-	 * Default constructor
-	 */
-	public EmfValidationHandler() {
-		super();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.frameworks.internal.IValidationSelectionHandler#getBaseValidationType(java.lang.Object)
-	 */
-	public IResource getBaseValidationType(Object selection) {
-		if (selection instanceof EObject) {
-			EObject eObject = (EObject) selection;
-			Resource resource = eObject.eResource();
-			IProject project = ProjectUtilities.getProject(resource);
-			return project;
-		}
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.frameworks.internal.IValidationSelectionHandler#getValidationTypeString()
-	 */
-	public String getValidationTypeString() {
-		return validationType;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.frameworks.internal.IValidationSelectionHandler#setValidationTypeString(java.lang.String)
-	 */
-	public void setValidationTypeString(String validationType) {
-		this.validationType = validationType;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/PassthruResourceSet.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/PassthruResourceSet.java
deleted file mode 100644
index d1b36ea..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/PassthruResourceSet.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench;
-
-
-import java.util.Collection;
-import java.util.Iterator;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
-import org.eclipse.jem.internal.util.emf.workbench.ProjectResourceSetImpl;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-
-/**
- * This ResourceSet is to be used by plugins that are currently loading to a cached ResourceSet that
- * always loads relative to the Workbench. This ResourceSet will direct the loads to the appropriate
- * Project ResourceSet. It will only load in this ResourceSet if it was unable to load via the
- * Workspace.
- * 
- * If you set want to used this ResourceSet so that the loaded resources are isolated from everyone
- * else, you should use the
- * 
- * @link PassthruResourceSet(IProject) constructor. This will load all resources locally and it will
- *       not delegate to another ProjectResourceSet. This would be equivalent to creating a
- *       ProjectResourceSet without setting any handlers.
- *  
- */
-public class PassthruResourceSet extends ProjectResourceSetImpl {
-	protected boolean isIsolated = false;
-
-	public class PassthruResourcesEList extends ResourceSetImpl.ResourcesEList {
-		public boolean add(Object object) {
-			if (object == null)
-				return false;
-			ResourceSet set = WorkbenchResourceHelperBase.getResourceSet(((Resource) object).getURI());
-			if (set != null)
-				return set.getResources().add((Resource)object);
-
-			return super.add(object);
-		}
-
-
-		public boolean addAll(Collection collection) {
-			if (collection.isEmpty())
-				return false;
-			Iterator it = collection.iterator();
-			Resource res;
-			while (it.hasNext()) {
-				res = (Resource) it.next();
-				if (!WorkbenchResourceHelperBase.cacheResource(res))
-					super.add(res);
-			}
-			return true;
-		}
-	}
-
-	public PassthruResourceSet() {
-		isIsolated = false;
-	}
-
-	/**
-	 * This constructor should only be used if you want to use this ResourceSet isolated from the
-	 * actual cached ProjectResourcSet for the passed IProject.
-	 */
-	public PassthruResourceSet(IProject project) {
-		setProject(project);
-		isIsolated = true;
-	}
-
-	public boolean isIsolated() {
-		return isIsolated;
-	}
-
-	public Resource createResource(URI uri) {
-		Resource result = WorkbenchResourceHelperBase.getExistingOrCreateResource(uri);
-		if (result == null)
-			return super.createResource(uri);
-		return result;
-	}
-
-	/**
-	 * @see org.eclipse.emf.ecore.resource.impl.ResourceSetImpl#demandCreateResource(URI)
-	 */
-	protected Resource demandCreateResource(URI uri) {
-		Resource result = WorkbenchResourceHelperBase.createResource(uri);
-		if (result == null)
-			return super.createResource(uri); //We do want to call super.createResource and not
-		// demandCreateResource
-		return result;
-	}
-
-	/*
-	 * Javadoc copied from interface.
-	 */
-	public EList getResources() {
-		if (isIsolated)
-			return super.getResources();
-		if (resources == null) {
-			resources = new PassthruResourcesEList();
-		}
-		return resources;
-	}
-
-	/**
-	 * @see org.eclipse.jem.internal.util.emf.workbench.ProjectResourceSetImpl#createResourceFromHandlers(URI)
-	 */
-	protected Resource createResourceFromHandlers(URI uri) {
-		if (!isIsolated)
-			return super.createResourceFromHandlers(uri);
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.jem.internal.util.emf.workbench.ProjectResourceSetImpl#getResourceFromHandlers(URI)
-	 */
-	protected Resource getResourceFromHandlers(URI uri) {
-		if (!isIsolated)
-			return super.getResourceFromHandlers(uri);
-		return null;
-	}
-
-	/**
-	 * @see com.ibm.etools.emf.workbench.ProjectResourceSetImpl#getEObjectFromHandlers(URI, boolean)
-	 */
-	protected EObject getEObjectFromHandlers(URI uri, boolean loadOnDemand) {
-		if (!isIsolated)
-			return super.getEObjectFromHandlers(uri, loadOnDemand);
-		return null;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/WorkbenchResourceHelper.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/WorkbenchResourceHelper.java
deleted file mode 100644
index 6296984..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/WorkbenchResourceHelper.java
+++ /dev/null
@@ -1,531 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 3, 2004
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench;
-
-import java.io.OutputStream;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.jobs.ILock;
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.common.util.WrappedException;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.URIConverter;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-import org.eclipse.jem.util.emf.workbench.WorkbenchURIConverter;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedResource;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedXMIFactoryImpl;
-import org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil;
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class WorkbenchResourceHelper extends WorkbenchResourceHelperBase {
-	protected static Class REFERENCED_RES_CLASS = ReferencedResource.class;
-	private static boolean fileAdapterFactoryInitialized = false;
-
-	private static class FileAdapterFactory extends AdapterFactoryImpl {
-
-		public Adapter adaptNew(Notifier target, Object type) {
-			FileAdapter adapter = new FileAdapter();
-			adapter.setTarget(target);
-			return adapter;
-		}
-
-	}
-
-	/**
-	 * This class is internal and is used to store state on the resource, specifically, a cached
-	 * reference to the IFile
-	 */
-	private static class FileAdapter extends AdapterImpl {
-		public static final Object ADAPTER_KEY = FileAdapter.class.getName();
-		private static final long delay = 30;
-		private IFile file;
-		private long synchronizationStamp;
-		protected ResourceSet previousResourceSet;
-		private ILock saveLock;
-		public static final int FILE_NOT_LOADED = 0;
-		public static final int FILE_INACCESSIBLE = -1;
-
-		public boolean isAdapterForType(Object type) {
-			return ADAPTER_KEY.equals(type);
-		}
-
-		/*
-		 * Update the synchronization stamp where appropriate
-		 */
-		public void notifyChanged(Notification msg) {
-			switch (msg.getFeatureID(null)) {
-				case Resource.RESOURCE__IS_LOADED :
-					if (getResource().isLoaded())
-						handleLoaded();
-					else
-						handleUnloaded();
-					break;
-				case ReferencedResource.RESOURCE_ABOUT_TO_SAVE:
-	                handleAboutToSave();
-	                break;
-	            case ReferencedResource.RESOURCE_WAS_SAVED:
-	                handleSaved();
-	                break;
-	            case ReferencedResource.RESOURCE_SAVE_FAILED:
-	                handleSaveFailed();
-	                break;
-				case Resource.RESOURCE__URI :
-					handleURIChanged();
-			}
-		}
-		
-		private void handleSaveFailed() {
-            releaseSaveLock();
-
-        }
-
-        private void handleAboutToSave() {
-            aquireSaveLock();
-        }
-
-        private void aquireSaveLock() {
-//            System.out.println("FileName: " + getFile().getName() + " " +getFile());
-//            System.out.println("aquiredSaveLock: " + Thread.currentThread().getName());
-//            System.out.println("Depth" + getSaveLock().getDepth());
-//            System.out.println("Instance:"+getSaveLock().hashCode());
-//            new Exception().printStackTrace(System.out);
-            getSaveLock().acquire();
-
-        }
-
-        private boolean aquireSaveLock(long delay) throws InterruptedException {
-//            System.out.println("FileName: " + getFile().getName()  + " " +getFile());
-//            System.out.println("aquiredSaveLock with delay: " + Thread.currentThread().getName());
-//            System.out.println("Depth" + getSaveLock().getDepth());
-//            System.out.println("Instance:"+getSaveLock().hashCode());
-//            new Exception().printStackTrace(System.out);
-            
-            return getSaveLock().acquire(delay);
-
-        }
-
-        private void releaseSaveLock() {
-//            System.out.println("FileName: " + getFile().getName()  + " " +getFile());
-//            System.out.println("releasedSaveLock: " + Thread.currentThread().getName());
-//            System.out.println("Depth" + getSaveLock().getDepth());
-//            System.out.println("Instance:"+getSaveLock().hashCode());
-//            new Exception().printStackTrace(System.out);
-            getSaveLock().release();
-
-        }
-
-        private ILock getSaveLock() {
-            if (saveLock == null)
-                saveLock = Platform.getJobManager().newLock();
-            return saveLock;
-        }
-
-		/**
-		 *  
-		 */
-		private void handleURIChanged() {
-			file = null;
-			synchronizationStamp = FILE_NOT_LOADED;
-		}
-
-		public IFile getFile() {
-			//First test to see if we should reset the file.
-			if (file != null && (!file.isAccessible() || previousResourceSet != getResourceSet())) {
-				file = null;
-				synchronizationStamp = FILE_NOT_LOADED;
-			}
-			if (file == null) {
-				if (isPlatformResourceURI(getURI())) {
-					file = getPlatformFile(getURI());
-				} else {
-					//we should not be here anymore.
-					file = internalGetFile(getResource());
-				}
-				if(null!= file && !file.isAccessible()){
-					synchronizationStamp = FILE_INACCESSIBLE;
-				}
-				previousResourceSet = getResourceSet();
-			}
-			return file;
-		}
-
-		/**
-		 * @return
-		 */
-		public long getSynchronizationStamp() {
-			return synchronizationStamp;
-		}
-
-		/**
-		 * @param file
-		 */
-		public void setFile(IFile file) {
-			this.file = file;
-		}
-
-		/**
-		 * @param l
-		 */
-		public void setSynchronizationStamp(long l) {
-			synchronizationStamp = l;
-		}
-
-		/**
-		 * @see ReferencedResource#isConsistent()
-		 */
-		public boolean isConsistent() {
-			//This checks for the case where the resource hasn't finished saving fo the first time
-			if(!getResource().isLoaded())
-				return true;
-            boolean hasLocked = false;
-            try {
-                hasLocked = aquireSaveLock(delay);
-            } catch (InterruptedException e) {
-                Logger.getLogger().write(e);
-            }
-            boolean result = false;
-            try {
-
-                if (getFile() == null || !getFile().isAccessible())
-                    result = true;
-                else {
-                    if (!getFile().isSynchronized(IFile.DEPTH_ZERO))
-                        result = false;
-                    else {
-                        result = synchronizationStamp == computeModificationStamp(getFile());
-                    }
-                }
-            } catch (Exception e) {
-                Logger.getLogger().write(e);
-            } finally {
-                if (hasLocked)
-                    releaseSaveLock();
-            }
-            return result;
-        }
-
-		public void cacheSynchronizationStamp() {
-			setSynchronizationStamp(computeModificationStamp(getFile()));
-		}
-
-		public ReferencedResource getResource() {
-			return (ReferencedResource) target;
-		}
-
-		public URI getURI() {
-			return target == null ? null : getResource().getURI();
-		}
-
-		public ResourceSet getResourceSet() {
-			return target == null ? null : getResource().getResourceSet();
-		}
-
-		public void handleUnloaded() {
-			file = null;
-			synchronizationStamp = FILE_NOT_LOADED;
-		}
-
-		public void handleLoaded() {
-			cacheSynchronizationStamp();
-		}
-
-		public void handleSaved() {
-			cacheSynchronizationStamp();
-			releaseSaveLock();
-		}
-	}
-
-	/**
-	 * This is an internal method to be used by the plugin only
-	 */
-	public static synchronized void initializeFileAdapterFactory() {
-		if (!fileAdapterFactoryInitialized) {
-			ReferencedXMIFactoryImpl.addGlobalAdapterFactory(new FileAdapterFactory());
-			fileAdapterFactoryInitialized = true;
-		}
-	}
-
-
-	private static FileAdapter getFileAdapter(ReferencedResource res) {
-		FileAdapter adapter = (FileAdapter) EcoreUtil.getExistingAdapter(res, FileAdapter.ADAPTER_KEY);
-		return adapter == null ? createFileAdapter(res) : adapter;
-	}
-
-	private static FileAdapter createFileAdapter(ReferencedResource res) {
-		FileAdapter adapter = new FileAdapter();
-		adapter.setTarget(res);
-		res.eAdapters().add(adapter);
-		return adapter;
-	}
-
-	/**
-	 * Return the underlying IFile for the resource if one exists. This may return null if the
-	 * resource does not belong to a ProjectResourceSet.
-	 */
-	public static IFile getFile(ReferencedResource res) {
-		FileAdapter adapter = getFileAdapter(res);
-		return adapter == null ? null : adapter.getFile();
-	}
-
-	public static long getSynchronizationStamp(ReferencedResource res) {
-		FileAdapter adapter = getFileAdapter(res);
-		return adapter == null ? FileAdapter.FILE_NOT_LOADED : adapter.getSynchronizationStamp();
-	}
-
-	public static void setSynhronizationStamp(ReferencedResource res, long stamp) {
-		FileAdapter adapter = getFileAdapter(res);
-		if (adapter != null)
-			adapter.setSynchronizationStamp(stamp);
-	}
-
-	public static boolean isConsistent(ReferencedResource res) {
-		FileAdapter adapter = getFileAdapter(res);
-		return adapter != null && adapter.isConsistent();
-	}
-
-	/**
-	 * Method cacheSynchronizationStamp.
-	 * 
-	 * @param r
-	 */
-	public static void cacheSynchronizationStamp(ReferencedResource refResource) {
-		if (refResource != null) {
-			FileAdapter adapter = getFileAdapter(refResource);
-			if (adapter != null && adapter.getSynchronizationStamp() <= FileAdapter.FILE_NOT_LOADED)
-				adapter.setSynchronizationStamp(computeModificationStamp(refResource));
-		}
-	}
-
-	public static boolean isReferencedResource(Resource aResource) {
-		return REFERENCED_RES_CLASS.isInstance(aResource);
-	}
-
-	public static long computeModificationStamp(ReferencedResource resource) {
-		FileAdapter adapter = getFileAdapter(resource);
-		return adapter == null ? FileAdapter.FILE_NOT_LOADED : computeModificationStamp(adapter.getFile());
-	}
-
-	public static long computeModificationStamp(IFile file) {
-		if (file == null)
-			return FileAdapter.FILE_NOT_LOADED;
-		if(!file.isAccessible()){
-			return FileAdapter.FILE_INACCESSIBLE;
-		}
-		long currentStamp = file.getModificationStamp();
-		IPath path = file.getLocation();
-		if (path != null)
-			return path.toFile().lastModified();
-		return currentStamp;
-	}
-
-	/**
-	 * Return the IFile that currently corresponds to <code>aResource</code>.
-	 */
-	public static IFile getFile(Resource aResource) {
-		if (aResource != null) {
-			if (isReferencedResource(aResource))
-				return getFile((ReferencedResource) aResource);
-			return internalGetFile(aResource);
-		}
-		return null;
-	}
-
-	public static IFile getFile(EObject obj) {
-		if (obj == null)
-			return null;
-
-		Resource mofResource = obj.eResource();
-		if (mofResource == null)
-			return null;
-		return getFile(mofResource);
-	}
-
-	/**
-	 * Get or load a cached Resource or create one if it is not found. A WrappedException will only
-	 * be thrown if the corresponding file exists but it failed to load.
-	 */
-	public static Resource getOrCreateResource(URI uri, ResourceSet set) throws WrappedException {
-		try {
-			return set.getResource(uri, true); //this will create the resource no matter what
-		} catch (WrappedException e) {
-			if (ExtendedEcoreUtil.getFileNotFoundDetector().isFileNotFound(e))
-				return set.getResource(uri, false);
-			throw e;
-		}
-	}
-
-	protected static boolean isSameProject(Resource resourceA, Resource resourceB) {
-		IProject pA, pB;
-		pA = getProject(resourceA);
-		pB = getProject(resourceB);
-		if (pA != null && pB != null)
-			return pA.equals(pB);
-		//otherwise we do not have enough info to determine false so we must return true
-		return true;
-	}
-
-	public static IProject getProject(Resource res) {
-		IProject proj = getProject(res.getResourceSet());
-		if (proj == null) {
-			IFile file = getFile(res);
-			if (file != null)
-				proj = file.getProject();
-		}
-		return proj;
-	}
-
-	/*
-	 * This method should not be called by clients. It is used internally by clients that also call
-	 * getFile(...). This is to avoid endless loops.
-	 * 
-	 * @see getFile(Resource)
-	 */
-	protected static IFile internalGetFile(Resource aResource) {
-		if (aResource != null)
-			return getFile(aResource.getResourceSet(), aResource.getURI());
-
-		return null;
-	}
-
-	protected static IFile getFile(ResourceSet set, URI uri) {
-		IFile file = getPlatformFile(uri);
-		if (file == null) {
-			if (set != null) {
-				URIConverter converter = set.getURIConverter();
-				URI convertedUri = converter.normalize(uri);
-				if (!uri.equals(convertedUri))
-					return getPlatformFile(convertedUri);
-			}
-		}
-		return file;
-	}
-
-	/**
-	 * Return the IFile for the <code>uri</code> within the Workspace. This URI is assumed to be
-	 * absolute in the following format: platform:/resource/....
-	 */
-	public static IFile getPlatformFile(URI uri) {
-		if (isPlatformResourceURI(uri)) {
-			String fileString = URI.decode(uri.path());
-			fileString = fileString.substring(JEMUtilPlugin.PLATFORM_RESOURCE.length() + 1);
-			return getWorkspace().getRoot().getFile(new Path(fileString));
-		}
-		return null;
-	}
-
-
-
-	public static IFile getFile(IProject project, URI uri) {
-		ResourceSet set = getResourceSet(project);
-		return getFile(set, uri);
-	}
-
-	/**
-	 * This should only be used if you want to save <code>aResource</code> within the IProject
-	 * that it is currently residing but you do not want to save it in the default output location.
-	 * You should not use this api to save a Resource to an existing file.
-	 * 
-	 * @deprecated This api is no longer required. You should create a resource with the absolute
-	 *             path (platform:/resource/...). Upon save, the file will be saved to this
-	 *             location.
-	 */
-	public static boolean saveResourceToFile(Resource aResource, IFile aFile) throws Exception {
-		return saveResourceToFile(aResource, aFile, null);
-	}
-
-	/**
-	 * This should only be used if you want to save <code>aResource</code> within the IProject
-	 * that it is currently residing but you do not want to save it in the default output location.
-	 * You should not use this api to save a Resource to an existing file.
-	 * 
-	 * @deprecated This api is no longer required. You should create a resource with the absolute
-	 *             path (platform:/resource/...). Upon save, the file will be saved to this
-	 *             location.
-	 */
-	public static boolean saveResourceToFile(Resource aResource, IFile aFile, Map saveOptions) throws Exception {
-		if (aResource != null && aFile != null && !aFile.exists()) {
-			ResourceSet set = aResource.getResourceSet();
-			if (set != null) {
-				URIConverter conv = set.getURIConverter();
-				if (conv != null && conv instanceof WorkbenchURIConverter) {
-					WorkbenchURIConverter wbConv = (WorkbenchURIConverter) conv;
-					String uri = aResource.getURI().toString();
-					IPath resPath, filePath;
-					resPath = new Path(uri);
-					filePath = aFile.getProjectRelativePath();
-					int resCount, fileCount;
-					resCount = resPath.segmentCount();
-					fileCount = filePath.segmentCount();
-					if (resCount <= fileCount) {
-						filePath = filePath.removeFirstSegments(fileCount - resCount);
-						if (resPath.equals(filePath)) {
-							OutputStream os = wbConv.createOutputStream(URI.createPlatformResourceURI(aFile.toString()));
-							if (os != null) {
-								try {
-									aResource.save(os, saveOptions);
-								} finally {
-									os.close();
-								}
-								return true;
-							}
-						}
-					}
-				}
-			}
-		}
-		return false;
-	}
-
-	protected static void deleteFile(IFile aFile) throws CoreException {
-		if (aFile != null && aFile.exists())
-			aFile.delete(true, null);
-	}
-
-	/**
-	 * Delete
-	 * 
-	 * @aResource in the Workbench.
-	 */
-	public static void deleteResource(Resource aResource) throws CoreException {
-		if (aResource != null)
-			deleteFile(getFile(aResource));
-	}
-
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/AdapterFactoryDescriptor.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/AdapterFactoryDescriptor.java
deleted file mode 100644
index e72153d..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/AdapterFactoryDescriptor.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Feb 26, 2004
- * 
- * To change the template for this generated file go to Window&gt;Preferences&gt;Java&gt;Code
- * Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-import org.eclipse.wst.common.frameworks.internal.AbstractRegistryDescriptor;
-import org.eclipse.wst.common.internal.emf.utilities.Assert;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchEditResourceHandler;
-
-
-public class AdapterFactoryDescriptor extends AbstractRegistryDescriptor implements Comparable {
-
-	private String packageURI = null;
-	private String id = null;
-	private Set viewIDs = null;
-	private final int loadOrder;
-	private static int loadOrderCounter = 0;
-
-	public AdapterFactoryDescriptor(IConfigurationElement element) {
-		super(element);
-
-		packageURI = element.getAttribute(AdapterFactoryRegistry.PACKAGE_URI);
-		id = element.getAttribute(AdapterFactoryRegistry.ID);
-		Assert.isNotNull(packageURI, EMFWorkbenchEditResourceHandler.AdapterFactoryDescriptor_ERROR_0);
-		Assert.isNotNull(id, EMFWorkbenchEditResourceHandler.getString(EMFWorkbenchEditResourceHandler.AdapterFactoryDescriptor_ERROR_1, new Object[]{element.getDeclaringExtension().getNamespace()}));
-
-		readViewIDs();
-		this.loadOrder = loadOrderCounter++;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString() {
-		StringBuffer sb = new StringBuffer();
-		sb.append("AdapterFactoryDescriptor"); //$NON-NLS-1$
-		sb.append('[');
-		sb.append(packageURI);
-		sb.append(",p"); //$NON-NLS-1$
-		sb.append(getPriority());
-		if (viewIDs != null && !viewIDs.isEmpty()) {
-			sb.append(':');
-			boolean first = true;
-			Iterator iter = viewIDs.iterator();
-			while (iter.hasNext()) {
-				if (!first)
-					sb.append(',');
-				first = false;
-				sb.append(iter.next());
-			}
-		}
-		sb.append(']');
-		return sb.toString();
-	}
-
-	private void readViewIDs() {
-		viewIDs = new HashSet(3);
-		IConfigurationElement[] children = element.getChildren(AdapterFactoryRegistry.VIEW);
-		if (children == null || children.length == 0)
-			return;
-
-		String viewID = null;
-		for (int i = 0; i < children.length; i++) {
-			viewID = children[i].getAttribute(AdapterFactoryRegistry.ID);
-			if (viewID != null)
-				viewIDs.add(viewID);
-		}
-	}
-
-	public AdapterFactory createInstance() {
-		if (element == null)
-			return null;
-
-		AdapterFactory factory = null;
-		try {
-			factory = (AdapterFactory) element.createExecutableExtension(AdapterFactoryRegistry.CLASS_NAME);
-		} catch (CoreException e) {
-			JEMUtilPlugin.getLogger().logError(e);
-			factory = null;
-		}
-		return factory;
-	}
-
-
-	public String getPackageURI() {
-		return packageURI;
-	}
-
-	public Set getViewIDs() {
-		return viewIDs;
-	}
-
-	public boolean appliesTo(String viewID) {
-		return viewIDs.isEmpty() || viewIDs.contains(viewID);
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Comparable#compareTo(java.lang.Object)
-	 */
-	public int compareTo(Object o) {
-		if (this == o)
-			return 0;
-		if (!(o instanceof AdapterFactoryDescriptor))
-			return 1;
-		AdapterFactoryDescriptor desc = (AdapterFactoryDescriptor) o;
-
-		int pCompare = getPriority() - desc.getPriority();
-		if (pCompare != 0)
-			//We have reverse the sorting of the priority for the adapter factories
-			return -pCompare;
-
-		//The group is the same - in this case the one for a specific view has precedence over
-		//a generic one
-		else if (viewIDs != null && !viewIDs.isEmpty())
-			return -1;
-		else
-			return 1;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.frameworks.internal.AbstractRegistryDescriptor#getID()
-	 */
-	public String getID() {
-		return id;
-	}
-
-
-	/**
-	 * @return Returns the loadOrder.
-	 */
-	public int getLoadOrder() {
-		return loadOrder;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/AdapterFactoryRegistry.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/AdapterFactoryRegistry.java
deleted file mode 100644
index e986962..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/AdapterFactoryRegistry.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.TreeSet;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.jem.util.RegistryReader;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EMFWorkbenchEditPlugin;
-
-/**
- * @author mdelder
- */
-public class AdapterFactoryRegistry extends RegistryReader {
-
-	public static final String ADAPTER_FACTORY = "adapterFactory"; //$NON-NLS-1$
-
-	public static final String PACKAGE_URI = "packageURI"; //$NON-NLS-1$
-
-	public static final String CLASS_NAME = "className"; //$NON-NLS-1$
-
-	public static final String VIEW = "view"; //$NON-NLS-1$
-
-	public static final String ID = "id"; //$NON-NLS-1$
-
-	private Map descriptorMap = null;
-
-	private static AdapterFactoryRegistry instance;
-
-	private AdapterFactoryRegistry() {
-		super(EMFWorkbenchEditPlugin.ID, EMFWorkbenchEditPlugin.ADAPTER_FACTORY_REGISTRY_EXTENSION_POINT);
-	}
-
-	public List getDescriptors(EPackage pkg, String viewID) {
-		Collection all = getDescriptors(pkg);
-		if (all == null)
-			return null;
-
-		Iterator iter = all.iterator();
-		AdapterFactoryDescriptor desc = null;
-		List result = new ArrayList(all.size());
-		while (iter.hasNext()) {
-			desc = (AdapterFactoryDescriptor) iter.next();
-			if (desc.appliesTo(viewID))
-				result.add(desc);
-		}
-		return result;
-	}
-
-	public Collection getDescriptors(EPackage registeredPackage) {
-		return (Collection) getDescriptorMap().get(registeredPackage.getNsURI());
-	}
-
-	private Map getDescriptorMap() {
-		if (descriptorMap == null)
-			descriptorMap = new HashMap();
-		return descriptorMap;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.frameworks.internal.RegistryReader#readElement(org.eclipse.core.runtime.IConfigurationElement)
-	 */
-	public boolean readElement(IConfigurationElement element) {
-		try {
-			if (element.getName().equals(ADAPTER_FACTORY)) {
-				AdapterFactoryDescriptor descriptor = new AdapterFactoryDescriptor(element);
-				mapDescriptor(descriptor);
-				return true;
-			}
-		} catch (RuntimeException re) {
-			Logger.getLogger().logError(re);
-		}
-		return false;
-	}
-
-	private void mapDescriptor(AdapterFactoryDescriptor descriptor) {
-		String uri = descriptor.getPackageURI();
-		Collection descriptors = (Collection) getDescriptorMap().get(uri);
-		if (descriptors == null) {
-			descriptors = new TreeSet();
-			getDescriptorMap().put(uri, descriptors);
-		}
-		descriptors.add(descriptor);
-	}
-
-	/**
-	 * @return Returns the instance.
-	 */
-	public static AdapterFactoryRegistry instance() {
-		if (instance == null) {
-			instance = new AdapterFactoryRegistry();
-			instance.readRegistry();
-		}
-		return instance;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ChildCommand.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ChildCommand.java
deleted file mode 100644
index 6dec40e..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ChildCommand.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-
-
-import org.eclipse.emf.common.command.Command;
-import org.eclipse.wst.common.internal.emfworkbench.integration.AbstractEditModelCommand;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModelCommand;
-
-/**
- * Insert the type's description here. Creation date: (05/22/01 8:57:56 AM)
- * 
- * @author: Administrator
- */
-public class ChildCommand extends EditModelCommand {
-	private ParentCommand parent;
-	private EditModelRetriever modelRetriever;
-
-	public ChildCommand(ParentCommand parentCmd, Command targetCmd, EditModelRetriever retriever) {
-		super(targetCmd);
-		parent = parentCmd;
-		modelRetriever = retriever;
-	}
-
-	public boolean canExecute() {
-		return true;
-	}
-
-	/**
-	 * Does nothing
-	 */
-	public void execute() {
-		//does nothing
-	}
-
-	protected void executeInModel(AbstractEditModelCommand cmd) {
-		EditModel model = modelRetriever.getEditModelForWrite(this);
-		try {
-			model.getCommandStack().execute(cmd);
-			model.saveIfNecessary(this);
-		} finally {
-			model.releaseAccess(this);
-		}
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (05/22/01 9:35:36 AM)
-	 * 
-	 * @return java.lang.Object
-	 */
-	public java.lang.Object getEditModelKey() {
-		return modelRetriever.getEditModelID();
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (05/22/01 9:35:36 AM)
-	 * 
-	 * @return com.ibm.etools.j2ee.workbench.ParentCommand
-	 */
-	public ParentCommand getParent() {
-		return parent;
-	}
-
-	public void redo() {
-		redoInModel();
-		getParent().redoFrom(this);
-	}
-
-	protected void redoInModel() {
-		EditModel model = modelRetriever.getEditModelForWrite(this);
-		try {
-			getTarget().redo();
-			model.saveIfNecessary(this);
-		} finally {
-			model.releaseAccess(this);
-		}
-	}
-
-	public void undo() {
-		undoInModel();
-		getParent().undoFrom(this);
-	}
-
-	protected void undoInModel() {
-		EditModel model = modelRetriever.getEditModelForWrite(this);
-		try {
-			getTarget().undo();
-			model.saveIfNecessary(this);
-		} finally {
-			model.releaseAccess(this);
-		}
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ClientAccessRegistry.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ClientAccessRegistry.java
deleted file mode 100644
index 5f0f82d..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ClientAccessRegistry.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Oct 6, 2003
- */
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-import java.util.HashSet;
-import java.util.Set;
-import java.util.WeakHashMap;
-
-import org.eclipse.jem.internal.util.emf.workbench.nls.EMFWorkbenchResourceHandler;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchEditResourceHandler;
-
-/**
- * @author mdelder
- */
-public class ClientAccessRegistry {
-
-	protected final WeakHashMap registry = new WeakHashMap();
-	protected final Set baseSet = new HashSet();
-
-	public synchronized void access(Object accessorKey) {
-		if (isStable()) {
-			if (!registry.containsKey(accessorKey)) {
-				Snapshot snapshot = new Snapshot();
-				this.registry.put(accessorKey, snapshot);
-				this.baseSet.add(snapshot);
-
-			} else
-				throw new ClientAccessRegistryException(EMFWorkbenchEditResourceHandler.ClientAccessRegistry_ERROR_0, accessorKey);
-
-		} else
-			complain();
-	}
-
-	public synchronized void release(Object accessorKey) {
-
-		/*
-		 * Error condition: Some one has been naughty and not released the resource
-		 */
-		if (this.registry.containsKey(accessorKey) && isStable()) {
-			Snapshot snapshot = (Snapshot) this.registry.remove(accessorKey);
-			this.baseSet.remove(snapshot);
-		} else
-			complain(accessorKey);
-	}
-
-	public synchronized void assertAccess(Object accessorKey) {
-		if (!isClientAccessing(accessorKey))
-			throw new ClientAccessRegistryException(EMFWorkbenchResourceHandler.getString("ClientAccessRegistry_ERROR_1"), accessorKey); //$NON-NLS-1$
-	}
-
-	public synchronized boolean isClientAccessing(Object client) {
-		boolean result = this.registry.containsKey(client);
-		if (!isStable())
-			complain();
-		return result;
-	}
-
-	public synchronized boolean isAnyClientAccessing() {
-		boolean result = this.registry.size() > 0;
-		if (!isStable())
-			complain();
-		return result;
-	}
-
-	public synchronized boolean isStable() {
-		return this.baseSet.size() == this.registry.size();
-	}
-
-	public void complain() {
-		complain(null);
-	}
-
-	public void complain(Object accessorKey) {
-		if (!isStable())
-			throw new ClientAccessRegistryException(this.registry, this.baseSet);
-		throw new ClientAccessRegistryException(EMFWorkbenchResourceHandler.getString("ClientAccessRegistry_ERROR_1"), accessorKey); //$NON-NLS-1$
-	}
-
-	public String toString() {
-		StringBuffer result = new StringBuffer("ClientAccessRegistry: ["); //$NON-NLS-1$
-		result.append((isStable()) ? "STABLE" : "OUT OF SYNC"); //$NON-NLS-1$ //$NON-NLS-2$
-		result.append("]: Reference Count = "); //$NON-NLS-1$
-		result.append(this.size());
-		return result.toString();
-	}
-
-	public synchronized int size() {
-		return this.registry.size();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ClientAccessRegistryException.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ClientAccessRegistryException.java
deleted file mode 100644
index a5aa1cb..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ClientAccessRegistryException.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Oct 2, 2003
- *  
- */
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-import java.io.PrintStream;
-import java.io.PrintWriter;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-import java.util.WeakHashMap;
-
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchEditResourceHandler;
-
-
-/**
- * The ClientAccessRegistryException accepts a WeakHashSet registry and a Set of all Snapshots that
- * should be contained in the registry. It will perform the necessary set difference in order to
- * determine which Snapshots exist in the baseSet but not in the registry.
- * 
- * @author mdelder
- */
-public class ClientAccessRegistryException extends RuntimeException {
-
-	public static final int UNKNOWN = 0;
-	public static final int DANGLING_REFERENCE = 1;
-	public static final int INVALID_ACCESS_KEY = 2;
-	private WeakHashMap registry = null;
-	private Set baseSet = null;
-	private boolean processed = false;
-	private int type = UNKNOWN;
-
-	public ClientAccessRegistryException(WeakHashMap registry, Set baseSet) {
-		this.registry = registry;
-		this.baseSet = new HashSet();
-		this.baseSet.addAll(baseSet);
-		this.type = DANGLING_REFERENCE;
-	}
-
-	public ClientAccessRegistryException(String msg, Object key) {
-		super(msg + " : " + key); //$NON-NLS-1$
-		this.type = INVALID_ACCESS_KEY;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Throwable#printStackTrace(java.io.PrintStream)
-	 */
-	public void printStackTrace(PrintStream s) {
-
-		s.println(toString());
-		super.printStackTrace(s);
-
-		if (this.registry != null) {
-			Snapshot snapshot = null;
-			if (!processed) {
-				Object key = null;
-				Iterator keyIterator = this.registry.keySet().iterator();
-				while (keyIterator.hasNext()) {
-					key = keyIterator.next();
-					snapshot = (Snapshot) this.registry.get(key);
-					this.baseSet.remove(snapshot);
-				}
-				processed = true;
-			}
-			s.println(EMFWorkbenchEditResourceHandler.getString(EMFWorkbenchEditResourceHandler.ClientAccessRegistryException_UI_0, new Object[]{new Integer(baseSet.size()).toString()}));
-
-			for (Iterator possibleCulpritsItr = baseSet.iterator(); possibleCulpritsItr.hasNext();) {
-				snapshot = (Snapshot) possibleCulpritsItr.next();
-				snapshot.printStackTrace(s);
-			}
-
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Throwable#printStackTrace(java.io.PrintWriter)
-	 */
-	public void printStackTrace(PrintWriter s) {
-
-		s.println(toString());
-		super.printStackTrace(s);
-		if (this.registry != null) {
-			Snapshot snapshot = null;
-			if (!processed) {
-				Object key = null;
-				Iterator keyIterator = this.registry.keySet().iterator();
-				while (keyIterator.hasNext()) {
-					key = keyIterator.next();
-					snapshot = (Snapshot) this.registry.get(key);
-					this.baseSet.remove(snapshot);
-				}
-				processed = true;
-			}
-			s.println(EMFWorkbenchEditResourceHandler.getString("", new Object[]{new Integer(baseSet.size()).toString()})); //$NON-NLS-1$
-
-			for (Iterator possibleCulpritsItr = baseSet.iterator(); possibleCulpritsItr.hasNext();) {
-				snapshot = (Snapshot) possibleCulpritsItr.next();
-				snapshot.printStackTrace(s);
-			}
-
-		}
-	}
-
-	public String getType() {
-		switch (type) {
-			case DANGLING_REFERENCE :
-				return "DANGLING_REFERENCE"; //$NON-NLS-1$
-			case INVALID_ACCESS_KEY :
-				return "INVALID_ACCESS_KEY"; //$NON-NLS-1$
-			default :
-				return "UNKNOWN"; //$NON-NLS-1$
-		}
-	}
-
-	public String toString() {
-		StringBuffer result = new StringBuffer(super.toString()).append("\r\n"); //$NON-NLS-1$
-		result.append(EMFWorkbenchEditResourceHandler.getString(EMFWorkbenchEditResourceHandler.ClientAccessRegistryException_UI_1, new Object[]{getType()}));
-		//		if (this.badReferenceLocation != null) {
-		//			result.append("The invalid access occurred somewhere in the following stack
-		// trace.").append("\n");
-		//			result.append(this.badReferenceLocation.getStackTraceString());
-		//		}
-		return result.toString();
-	}
-
-	public static void main(String[] args) {
-		System.out.println(new ClientAccessRegistryException("test message", "-somekeyobj-").toString()); //$NON-NLS-1$ //$NON-NLS-2$
-		System.out.println("LINEBREAK"); //$NON-NLS-1$
-		System.out.println(new ClientAccessRegistryException(new WeakHashMap(), new HashSet()).toString());
-		System.out.println("LINEBREAK"); //$NON-NLS-1$
-		new ClientAccessRegistryException("test message", "-somekeyobj-").printStackTrace(); //$NON-NLS-1$ //$NON-NLS-2$
-		System.out.println("LINEBREAK"); //$NON-NLS-1$
-		new ClientAccessRegistryException(new WeakHashMap(), new HashSet()).printStackTrace();
-
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EMFWorkbenchEditContextFactory.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EMFWorkbenchEditContextFactory.java
deleted file mode 100644
index 0a8d2f8..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EMFWorkbenchEditContextFactory.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 3, 2004
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-import java.util.Hashtable;
-import java.util.Map;
-
-import org.eclipse.core.internal.jobs.LockManager;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.jobs.ILock;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.jem.internal.util.emf.workbench.EMFWorkbenchContextFactory;
-import org.eclipse.jem.util.emf.workbench.EMFWorkbenchContextBase;
-import org.eclipse.jem.util.emf.workbench.IEMFContextContributor;
-import org.eclipse.jem.util.emf.workbench.ResourceSetWorkbenchSynchronizer;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.integration.ResourceSetWorkbenchEditSynchronizer;
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class EMFWorkbenchEditContextFactory extends EMFWorkbenchContextFactory {
-	
-	
-	/**
-	 *  
-	 */
-	public EMFWorkbenchEditContextFactory() {
-		super();
-	}
-
-	protected EMFWorkbenchContextBase primCreateEMFContext(IProject aProject) {
-		return new EMFWorkbenchContext(aProject);
-	}
-
-	public ResourceSetWorkbenchSynchronizer createSynchronizer(ResourceSet aResourceSet, IProject aProject) {
-		return new ResourceSetWorkbenchEditSynchronizer(aResourceSet, aProject);
-	}
-	
-	protected static LockManager lockManager = new LockManager();
-	protected static Map projectLocks = new Hashtable();
-
-	public static ILock getProjectLockObject(IProject aProject){
-		if(null == aProject){
-			return null;
-		}
-		Integer hashCode = new Integer(aProject.hashCode());
-		synchronized (projectLocks) {
-			ILock lock = (ILock)projectLocks.get(hashCode);
-			if(lock == null){
-				lock = lockManager.newLock();
-				projectLocks.put(hashCode, lock);
-			}
-			return lock;
-		}
-	}
-	
-	public EMFWorkbenchContextBase createEMFContext(IProject aProject, IEMFContextContributor contributor) {
-		ILock lock = getProjectLockObject(aProject);
-		try{
-			if(null != lock){
-				lock.acquire();
-			}
-			return super.createEMFContext(aProject, contributor);
-		} finally{
-			if(null != lock){
-				lock.release();
-			}
-		}
-	}
-	
-	protected EMFWorkbenchContextBase getCachedEMFContext(IProject aProject) {
-		ILock lock = getProjectLockObject(aProject);
-		try{
-			if(null != lock){
-				lock.acquire();
-			}
-			return super.getCachedEMFContext(aProject);
-		} finally{
-			if(null != lock){
-				lock.release();
-			}
-		}
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelExtension.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelExtension.java
deleted file mode 100644
index 6041def..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelExtension.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Feb 18, 2004
- * 
- * To change the template for this generated file go to Window&gt;Preferences&gt;Java&gt;Code
- * Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.frameworks.internal.ConfigurationElementWrapper;
-
-
-public class EditModelExtension extends ConfigurationElementWrapper {
-	public static final String ID_ATTR = "id"; //$NON-NLS-1$
-
-	private String editModelID = null;
-	private Collection resources = null;
-	private String id = null;
-
-
-	public EditModelExtension(IConfigurationElement element) {
-		super(element);
-		init();
-	}
-
-	private void init() {
-		id = element.getAttribute(ID_ATTR);
-		if (id == null) {
-			Logger.getLogger().logError("Incorrect usage of editModelExtension extension point.  Element must contain id attribute.  Plugin: " + getPluginId()); //$NON-NLS-1$
-			return;
-		}
-
-		editModelID = element.getAttribute(EditModelExtensionRegistry.EDIT_MODEL_ID_ATTR);
-		resources = new ArrayList();
-		IConfigurationElement[] editModelResources = element.getChildren(EditModelResource.EDIT_MODEL_RESOURCE_ELEMENT);
-		for (int j = 0; j < editModelResources.length; j++)
-			resources.add(new EditModelResource(editModelResources[j], id));
-	}
-
-	/**
-	 * @return
-	 */
-	public String getEditModelID() {
-		return editModelID;
-	}
-
-
-	/**
-	 * @return
-	 */
-	public Collection getResources() {
-		return resources;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelExtensionRegistry.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelExtensionRegistry.java
deleted file mode 100644
index 47bc51b..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelExtensionRegistry.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.jem.util.RegistryReader;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EMFWorkbenchEditPlugin;
-
-
-/**
- * @author mdelder
- */
-class EditModelExtensionRegistry extends RegistryReader {
-
-	private static EditModelExtensionRegistry INSTANCE = null;
-
-	public static final String EDIT_MODEL_EXT_ELEMENT = "editModelExtension"; //$NON-NLS-1$
-	public static final String EDIT_MODEL_ID_ATTR = "editModelID"; //$NON-NLS-1$
-	public static final String GROUP_ID_ATTR = "functionGroupID"; //$NON-NLS-1$
-
-
-	private Map extensions = null;
-
-	protected EditModelExtensionRegistry() {
-		super(EMFWorkbenchEditPlugin.ID, EMFWorkbenchEditPlugin.EDIT_MODEL_EXTENSION_REGISTRY_EXTENSION_POINT);
-	}
-
-	public static EditModelExtensionRegistry getInstance() {
-		if (INSTANCE == null) {
-			INSTANCE = new EditModelExtensionRegistry();
-			INSTANCE.readRegistry();
-		}
-		return INSTANCE;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.frameworks.internal.RegistryReader#readElement(org.eclipse.core.runtime.IConfigurationElement)
-	 */
-	public boolean readElement(IConfigurationElement element) {
-
-		boolean result = false;
-		Collection extensionsByID = null;
-		EditModelExtension editModelExtension = null;
-		if (element.getName().equals(EDIT_MODEL_EXT_ELEMENT)) {
-			editModelExtension = new EditModelExtension(element);
-			extensionsByID = (Collection) getExtensions().get(editModelExtension.getEditModelID());
-			if (extensionsByID == null) {
-				extensionsByID = new ArrayList();
-				getExtensions().put(editModelExtension.getEditModelID(), extensionsByID);
-			}
-			extensionsByID.add(editModelExtension);
-			result = true;
-		}
-		return result;
-	}
-
-	protected Map getExtensions() {
-		if (extensions == null)
-			extensions = new HashMap();
-		return extensions;
-	}
-
-	/**
-	 * @return
-	 */
-	public Collection getEditModelResources(Object editModelID) {
-		//TODO - Cache the resources
-		Collection editModelResources = new ArrayList();
-		Collection editModelExtensions = (Collection) getExtensions().get(editModelID);
-
-		if (editModelExtensions == null || editModelExtensions.size() == 0)
-			return Collections.EMPTY_LIST;
-		Iterator itr = editModelExtensions.iterator();
-		while (itr.hasNext()) {
-			EditModelExtension ext = (EditModelExtension) itr.next();
-			editModelResources.addAll(ext.getResources());
-		}
-		return (!editModelExtensions.isEmpty()) ? editModelResources : Collections.EMPTY_LIST;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelRegistry.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelRegistry.java
deleted file mode 100644
index facd9cb..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelRegistry.java
+++ /dev/null
@@ -1,372 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.TreeSet;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.jem.util.RegistryReader;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchEditResourceHandler;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EMFWorkbenchEditPlugin;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.integration.IEditModelFactory;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * @author mdelder
- */
-public class EditModelRegistry extends RegistryReader {
-
-	private final static EditModelRegistry INSTANCE =  new EditModelRegistry();
-
-	private final Map factoryConfigurations = new HashMap();
-	private static boolean initialized = false;
-	
-
-	public static final String EDIT_MODEL_ELEMENT = "editModel"; //$NON-NLS-1$
-	public static final String EDIT_MODEL_RESOURCE_EXTENSION = "resourceExtension"; //$NON-NLS-1$
-	public static final String EDIT_MODEL_RESOURCE_EXTENSION_NAME = "name"; //$NON-NLS-1$
-	public static final String EDIT_MODEL_ID_ATTR = "editModelID"; //$NON-NLS-1$
-	public static final String FACTORY_CLASS_ATTR = "factoryClass"; //$NON-NLS-1$
-	public static final String PARENT_MODEL_ATTR = "parentModelID"; //$NON-NLS-1$
-
-
-
-	public static final String LOAD_UNKNOWN_RESOURCES_ATTR = "loadUnknownResourcesAsReadOnly"; //$NON-NLS-1$
-
-	protected EditModelRegistry() {
-		super(EMFWorkbenchEditPlugin.ID, EMFWorkbenchEditPlugin.EDIT_MODEL_FACTORIES_EXTENSION_POINT);
-	}
-
-	public static EditModelRegistry getInstance() {
-		if(isInitialized()) 
-			return INSTANCE;
-		synchronized(INSTANCE) {
-			if(!isInitialized()) {
-				INSTANCE.readRegistry();
-				initialized = true;
-			}
-		} 
-		return INSTANCE;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.frameworks.internal.RegistryReader#readElement(org.eclipse.core.runtime.IConfigurationElement)
-	 */
-	public boolean readElement(IConfigurationElement element) {
-		/*
-		 * The EditModel Extension Point defines Configuration elements named "editModel" with
-		 * attributes "editModelID" and "factoryClass"
-		 */
-		boolean result = false;
-		if (element.getName().equals(EDIT_MODEL_ELEMENT)) {
-			String editModelID = element.getAttribute(EDIT_MODEL_ID_ATTR);
-			if (editModelID != null) {
-				this.factoryConfigurations.put(editModelID, new EditModelInfo(editModelID, element));
-				result = true;
-			}
-		}
-		return result;
-	}
-
-	public String getCacheID(String editModelID, Map params) {
-		IEditModelFactory factory = getEditModelFactoryByKey(editModelID);
-		return factory.getCacheID(editModelID, params);
-	}
-
-	public EditModel createEditModelForRead(String editModelID, EMFWorkbenchContext context, Map params) {
-		return getEditModelFactoryByKey(editModelID).createEditModelForRead(editModelID, context, params);
-	}
-
-	public EditModel createEditModelForWrite(String editModelID, EMFWorkbenchContext context, Map params) {
-		return getEditModelFactoryByKey(editModelID).createEditModelForWrite(editModelID, context, params);
-	}
-
-	public Collection getEditModelResources(String editModelID) {
-		Collection resources = new TreeSet();
-
-		EditModelInfo nextEditModelInfo = getEditModelInfoById(editModelID);
-
-		String parentModelID = null;
-		Map visitedEditModels = new HashMap();
-		/* collect the resources from the parents */
-		while (nextEditModelInfo != null && (parentModelID = nextEditModelInfo.getParentModelID()) != null) {
-			if (visitedEditModels.containsKey(parentModelID))
-				throw new IllegalStateException(EMFWorkbenchEditResourceHandler.getString(EMFWorkbenchEditResourceHandler.EditModelRegistry_ERROR_0, new Object[]{editModelID}));
-			visitedEditModels.put(parentModelID, null);
-			resources.addAll(getAllEditModelResources(parentModelID));
-			nextEditModelInfo = getEditModelInfoById(parentModelID);
-		}
-
-		/* Get the resources for the actual edit model id */
-		resources.addAll(getAllEditModelResources(editModelID));
-
-		return resources;
-	}
-	
-	public Collection getEditModelExtensions(String editModelID) { 
-		Collection extensions = new TreeSet();
-		
-		EditModelInfo nextEditModelInfo = getEditModelInfoById(editModelID);
-
-		String parentModelID = null;
-		Map visitedEditModels = new HashMap();
-		/* collect the resources from the parents */
-		while(nextEditModelInfo != null && (parentModelID = nextEditModelInfo.getParentModelID()) != null) {
-			if(visitedEditModels.containsKey(parentModelID)) 
-				throw new IllegalStateException(EMFWorkbenchEditResourceHandler.getString(EMFWorkbenchEditResourceHandler.EditModelRegistry_ERROR_0,new Object [] {editModelID})); 
-			else 
-				visitedEditModels.put(parentModelID, null);
-			
-			extensions.addAll(getAllEditModelExtensions(parentModelID));
-			nextEditModelInfo = getEditModelInfoById(parentModelID);
-		}
-		
-		/* Get the resources for the actual edit model id */
-		extensions.addAll(getAllEditModelExtensions(editModelID));
-		
-		return extensions;
-	}
-	
-	public IEditModelFactory findEditModelFactoryByKey(Object editModelID) {
-		IEditModelFactory factory = null;
-		EditModelInfo editMdlInfo = (EditModelInfo) factoryConfigurations.get(editModelID);
-		if (editMdlInfo != null)
-			factory = editMdlInfo.getEditModelFactory();
-		return factory; 
-	}
-	
-	public IEditModelFactory findEditModelFactoryByProject(IProject project) {
-		IFacetedProject facetedProject = null;
-		try {
-			facetedProject = ProjectFacetsManager.create(project);
-		} catch (Exception e) {
-			return null;
-		}
-		if (facetedProject == null) return null;
-		Iterator keys = factoryConfigurations.keySet().iterator();
-		while (keys.hasNext()) {
-			Object key = keys.next();
-			if (key instanceof String) {
-				try {
-					IProjectFacet projectFacet = ProjectFacetsManager.getProjectFacet((String)key);
-					if (projectFacet != null && facetedProject.hasProjectFacet(projectFacet))
-						return findEditModelFactoryByKey(key);
-				} catch (Exception e) {
-					continue;
-				}
-				
-			}
-		}
-		
-		return null;
-	}
-
-	protected Collection getAllEditModelResources(String editModelID) {
-		Collection resources = new ArrayList();
-		resources.addAll(getLocalEditModelResources(editModelID));
-		resources.addAll(getExtendedEditModelResources(editModelID));
-		return resources;
-	}
-	
-	protected Collection getAllEditModelExtensions(String editModelID) {
-		Collection resources = new ArrayList();
-		resources.addAll(getLocalEditModelExtensions(editModelID));
-		return resources;
-	}
-
-	protected Collection getLocalEditModelResources(String editModelID) { 
-		EditModelInfo editMdlInfo = getEditModelInfoById(editModelID);
-  		return (editMdlInfo != null) ? editMdlInfo.getEditModelResources() : Collections.EMPTY_LIST; 
-	}
-	protected Collection getLocalEditModelExtensions(String editModelID) { 
-		EditModelInfo editMdlInfo = getEditModelInfoById(editModelID);
-  		return (editMdlInfo != null) ? editMdlInfo.getEditModelExtensions() : Collections.EMPTY_LIST; 
-	}
-
-	protected Collection getExtendedEditModelResources(String editModelID) {
-		return EditModelExtensionRegistry.getInstance().getEditModelResources(editModelID);
-	}
-
-	/**
-	 * @param editModelKey
-	 *            the editModelID of a given EditModelFactory defined in the Extension Point
-	 * @throws IllegalArgumentException
-	 *             if a IEditModelFactory cannot be found for the given ID.
-	 * @return the EditModelFactory associated with a given EditModelID
-	 */
-	protected IEditModelFactory getEditModelFactoryByKey(Object editModelID) {
-		IEditModelFactory factory = null;
-		EditModelInfo editMdlInfo = getEditModelInfoById(editModelID);
-		if (editMdlInfo != null)
-			factory = editMdlInfo.getEditModelFactory();
-		else
-			throw new IllegalArgumentException(EMFWorkbenchEditResourceHandler.getString(EMFWorkbenchEditResourceHandler.EditModelRegistry_ERROR_2, new Object[]{editModelID}));
-
-		return factory;
-	}
-	
-	/**
-     * @param editModelID
-     * @return
-     */
-    protected EditModelInfo getEditModelInfoById(Object editModelID) {
-        waitForInitializationIfNecessary();
-        return (EditModelInfo) factoryConfigurations.get(editModelID);
-    }
-    
-    /**
-     * If we are not initialized, block until the INSTANCE is released ( from getInstance())
-     */
-    private void waitForInitializationIfNecessary() {
-        /* We only need to acquire the semaphore (INSTANCE), we do not need 
-         * to execute anything in this block. If the Registry is not initailized,
-         * then it will block until the semaphore is released (from getInstance()),
-         * and then release it and return immediately. 
-         */
-		if(!isInitialized()) 
-		    synchronized(INSTANCE) { }
-    }
-
-	public class EditModelInfo {
-
-		private String editModelID = null;
-		private IConfigurationElement configurationElement = null;
-
-		private IEditModelFactory factory = null;
-		private List editModelResources = null;
-		private List editModelExtensions = null;
-
-		private String parentModelID = null;
-
-		private String tostringCache = null;
-
-		public EditModelInfo(String editModelID, IConfigurationElement configurationElement) {
-
-			this.configurationElement = configurationElement;
-			this.editModelID = editModelID;
-			this.parentModelID = this.configurationElement.getAttribute(PARENT_MODEL_ATTR);
-		}
-
-
-		public List getEditModelResources() {
-			/* this method is guarded */
-			initializeResources();
-			return editModelResources;
-		}
-
-		public IEditModelFactory getEditModelFactory() {
-//			 Do not block if the factory is not null
-			if (this.factory == null) {
-			  synchronized (this) {
-			      // another thread could have already initialized the factory
-			      // while this thread was waiting to enter the sync block
-			      if(this.factory == null) {
-					if (this.configurationElement != null) {
-						try {
-							this.factory = (IEditModelFactory) this.configurationElement.createExecutableExtension(FACTORY_CLASS_ATTR);
-							Boolean value = Boolean.valueOf(this.configurationElement.getAttribute(LOAD_UNKNOWN_RESOURCES_ATTR));
-							this.factory.setLoadKnownResourcesAsReadOnly(value.booleanValue());
-							discardConfigurationElementIfNecessary();
-						} catch (CoreException e) {
-							Logger.getLogger(EMFWorkbenchEditPlugin.ID).logError(e);
-						}
-					} else {
-						Logger.getLogger().logError(EMFWorkbenchEditResourceHandler.EditModelRegistry_ERROR_1);
-					}
-			      }
-			    }
-			}
-			return this.factory;
-		}
-
-		private synchronized void initializeResources() {
-
-			if (editModelResources == null) {
-				if (configurationElement != null) {
-
-					editModelResources = new ArrayList();
-
-					IConfigurationElement[] resources = configurationElement.getChildren(EditModelResource.EDIT_MODEL_RESOURCE_ELEMENT);
-					IConfigurationElement[] resExtensions = configurationElement.getChildren(EDIT_MODEL_RESOURCE_EXTENSION);
-					// set the configurationElement to null- keeps code from reentering
-					discardConfigurationElementIfNecessary();
-					for (int j = 0; j < resources.length; j++) {
-						editModelResources.add(new EditModelResource(resources[j]));
-					}
-					if (resExtensions == null || resExtensions.length == 0) {
-						editModelExtensions = Collections.EMPTY_LIST;
-					} else {
-						editModelExtensions = new ArrayList();
-						for (int i = 0; i < resExtensions.length; i++) {
-							String extension = resExtensions[i].getAttribute(EDIT_MODEL_RESOURCE_EXTENSION_NAME);
-							editModelExtensions.add(extension);
-						}
-					}
-				} else {
-					editModelResources = Collections.EMPTY_LIST;
-					editModelExtensions = Collections.EMPTY_LIST;
-				}
-			}
-		}
-
-		private void discardConfigurationElementIfNecessary() {
-			if (this.editModelResources != null && this.factory != null)
-				this.configurationElement = null;
-		}
-
-		public String toString() {
-			if (tostringCache == null)
-				tostringCache = "EditModelID: {" + this.editModelID + "}, Parent Model ID {" + this.parentModelID + "}, Configuration Element: [" + this.configurationElement + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$//$NON-NLS-4$
-			return tostringCache;
-		}
-
-		/**
-		 * @return Returns the parentModelID.
-		 */
-		public String getParentModelID() {
-			return parentModelID;
-		}
-		
-		public List getEditModelExtensions() {
-			/* this method is guarded */
-			initializeResources();
-			return editModelExtensions;
-		}
-
-	}
-	/**
-	 * @return Returns the initialized.
-	 */
-	protected static boolean isInitialized() {
-		return initialized;
-	}
-	
-	public String[] getRegisteredEditModelIDs() {
-		return (String[]) factoryConfigurations.keySet().toArray(new String[factoryConfigurations.keySet().size()]);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelResource.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelResource.java
deleted file mode 100644
index b5543ac..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelResource.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-/*
- * Created on Feb 5, 2004
- * 
- * To change the template for this generated file go to Window&gt;Preferences&gt;Java&gt;Code
- * Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.wst.common.frameworks.internal.AbstractRegistryDescriptor;
-
-
-
-public class EditModelResource extends AbstractRegistryDescriptor implements Comparable {
-	public static final String EDIT_MODEL_URI_ATTR = "URI"; //$NON-NLS-1$
-	public static final String AUTO_LOAD_ATTR = "autoload"; //$NON-NLS-1$
-	public static final String EDIT_MODEL_RESOURCE_ELEMENT = "editModelResource"; //$NON-NLS-1$
-
-	private static int loadOrderCounter = 1;
-	private URI uri;
-	private boolean autoload = false;
-	//Indicates if this was defined as part of the edit model,
-	//as opposed to an extension
-	private boolean isCore = true;
-
-	private String extensionID;
-
-	private int loadOrder;
-
-	public EditModelResource(IConfigurationElement element) {
-		super(element);
-		String strUri = element.getAttribute(EDIT_MODEL_URI_ATTR);
-		if (strUri != null)
-			EditModelResource.this.uri = URI.createURI(strUri);
-
-		String strLoad = element.getAttribute(AUTO_LOAD_ATTR);
-		if (strLoad != null)
-			autoload = Boolean.valueOf(strLoad).booleanValue();
-		loadOrder = loadOrderCounter++;
-	}
-
-	public EditModelResource(IConfigurationElement element, String extensionID) {
-		this(element);
-		this.extensionID = extensionID;
-		isCore = false;
-	}
-
-	public URI getURI() {
-		return uri;
-	}
-
-	public boolean isAutoLoad() {
-		return autoload;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.frameworks.internal.AbstractRegistryDescriptor#getID()
-	 */
-	public String getID() {
-		return extensionID;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.frameworks.internal.AbstractRegistryDescriptor#getPriority()
-	 */
-	public int getPriority() {
-		if (isCore)
-			return 0;
-		return super.getPriority();
-	}
-
-	/**
-	 * return whether this resource is defined as part of the edit model definition as opposed to an
-	 * extension
-	 */
-	public boolean isCore() {
-		return isCore;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Comparable#compareTo(java.lang.Object)
-	 */
-	public int compareTo(Object o) {
-		if (!(o instanceof EditModelResource))
-			return 1;
-		EditModelResource res = (EditModelResource) o;
-		int value = getPriority() - res.getPriority();
-		if (value == 0)
-			return loadOrder - res.loadOrder;
-		return value;
-	}
-
-	/**
-	 * @return Returns the loadOrder.
-	 */
-	public int getLoadOrder() {
-		return loadOrder;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelRetriever.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelRetriever.java
deleted file mode 100644
index 8efb8c1..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/EditModelRetriever.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-import java.util.Map;
-
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-
-
-
-public class EditModelRetriever {
-	private EMFWorkbenchContext context;
-	private String editModelID;
-	private Map editModelParms;
-
-	/**
-	 * EditModelRetriever constructor comment.
-	 */
-	public EditModelRetriever(EMFWorkbenchContext context, String editModelKey, Map parms) {
-		super();
-		this.context = context;
-		editModelID = editModelKey;
-		editModelParms = parms;
-	}
-
-	public EditModel getEditModelForRead(Object accessorKey) {
-		return context.getEditModelForRead(getEditModelID(), accessorKey, editModelParms);
-	}
-
-	public EditModel getEditModelForWrite(Object accessorKey) {
-		return context.getEditModelForWrite(getEditModelID(), accessorKey, editModelParms);
-	}
-
-	public String getEditModelID() {
-		return editModelID;
-	}
-
-	public EMFWorkbenchContext context() {
-		return context;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ExtendedComposedAdapterFactory.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ExtendedComposedAdapterFactory.java
deleted file mode 100644
index 8f26cf3..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ExtendedComposedAdapterFactory.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Dec 3, 2003
- * 
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashSet;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class ExtendedComposedAdapterFactory extends ComposedAdapterFactory {
-
-	/**
-	 * @param adapterFactory
-	 */
-	public ExtendedComposedAdapterFactory(AdapterFactory adapterFactory) {
-		super(adapterFactory);
-	}
-
-	/**
-	 * @param adapterFactories
-	 */
-	public ExtendedComposedAdapterFactory(AdapterFactory[] adapterFactories) {
-		super(adapterFactories);
-	}
-
-	/**
-	 * @param adapterFactories
-	 */
-	public ExtendedComposedAdapterFactory(Collection adapterFactories) {
-		super(adapterFactories);
-	}
-
-	/*
-	 * overrode from the super class, changed not to check supertypes of the EObject, because that
-	 * will be handled by the DynamicAdapterFactory
-	 * 
-	 * @see org.eclipse.emf.common.notify.AdapterFactory#adapt(org.eclipse.emf.common.notify.Notifier,
-	 *      java.lang.Object)
-	 */
-	public Adapter adapt(Notifier target, Object type) {
-		Adapter result = null;
-
-		if (target instanceof EObject) {
-			EObject eObject = (EObject) target;
-			EClass eClass = eObject.eClass();
-			if (eClass != null) {
-				EPackage ePackage = eClass.getEPackage();
-				Collection types = new ArrayList();
-				types.add(ePackage);
-				if (type != null) {
-					types.add(type);
-				}
-				/* when an error occurs, remove the delegate and try again */
-				boolean attemptAdaptAgain = true;
-				while (result == null && attemptAdaptAgain) {
-					attemptAdaptAgain = false;
-					AdapterFactory delegateAdapterFactory = getFactoryForTypes(types);
-					if (delegateAdapterFactory != null) {
-						try {
-							result = delegateAdapterFactory.adapt(target, type);
-						} catch (RuntimeException re) {
-							Logger.getLogger().logError(re);
-							adapterFactories.remove(delegateAdapterFactory);
-							attemptAdaptAgain = true;
-						}
-					}
-				}
-			}
-		} else {
-			result = adapt(target, type, new HashSet(), target.getClass());
-		}
-
-		return result;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/InvertedCommand.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/InvertedCommand.java
deleted file mode 100644
index 2bbcb11..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/InvertedCommand.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-
-
-import org.eclipse.emf.common.command.Command;
-import org.eclipse.wst.common.internal.emfworkbench.integration.AbstractEditModelCommand;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModelCommand;
-
-/**
- * Insert the type's description here. Creation date: (05/22/01 8:58:24 AM)
- * 
- * @author: Administrator
- */
-public class InvertedCommand extends AbstractEditModelCommand {
-	public InvertedCommand(Command targetCommand) {
-		super(targetCommand);
-	}
-
-	public boolean canExecute() {
-		return getTarget().canUndo();
-	}
-
-	public boolean canUndo() {
-		return getTarget().canExecute();
-	}
-
-	/**
-	 * Does nothing
-	 */
-	public void execute() {
-		//does nothing
-	}
-
-	/**
-	 * getEditModelCommand method comment.
-	 */
-	public EditModelCommand getEditModelCommand() {
-		return ((AbstractEditModelCommand) getTarget()).getEditModelCommand();
-	}
-
-	protected int inversionDepth() {
-		if (getEditModelCommand() == getTarget())
-			return 1;
-		return ((InvertedCommand) getTarget()).inversionDepth() + 1;
-	}
-
-	protected String labelPrefix() {
-		return inversionDepth() % 2 == 1 ? "Undo " : "Redo ";//$NON-NLS-2$//$NON-NLS-1$
-	}
-
-	public void redo() {
-		getTarget().undo();
-	}
-
-	public void undo() {
-		getTarget().redo();
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ParentCommand.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ParentCommand.java
deleted file mode 100644
index 9c7dc90..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ParentCommand.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.emf.common.command.Command;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.wst.common.internal.emfworkbench.integration.AbstractEditModelCommand;
-import org.eclipse.wst.common.internal.emfworkbench.integration.ComposedEditModel;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModelCommand;
-
-/**
- * Insert the type's description here. Creation date: (05/22/01 8:57:38 AM)
- * 
- * @author: Administrator
- */
-public class ParentCommand extends EditModelCommand {
-	private List children;
-	private ComposedEditModel editModel;
-	private List affectedModels;
-
-	public ParentCommand(Command targetCommand, ComposedEditModel anEditModel) {
-		super(targetCommand);
-		editModel = anEditModel;
-		children = new ArrayList(1);
-	}
-
-	public boolean canExecute() {
-		return getTarget().canExecute();
-	}
-
-	protected void computeAffectedModels() {
-		ResourceSet set = null;
-		List editModels = getEditModel().getChildren();
-		Iterator it = computeAffectedResourceSets().iterator();
-		while (it.hasNext()) {
-			set = (ResourceSet) it.next();
-			for (int i = 0; i < editModels.size(); i++) {
-				EditModel model = (EditModel) editModels.get(i);
-				if (model.getResourceSet() == set) {
-					getAffectedModels().add(new EditModelRetriever(model.getEmfContext(), model.getEditModelID(), model.getParams()));
-					continue;
-				}
-			}
-		}
-	}
-
-	protected Set computeAffectedResourceSets() {
-		Iterator objects = getTarget().getAffectedObjects().iterator();
-		Set resourceSets = new HashSet();
-		Object o = null;
-		EObject ref = null;
-		ResourceSet set = null;
-		while (objects.hasNext()) {
-			o = objects.next();
-			if (!(o instanceof EObject))
-				continue;
-			ref = (EObject) o;
-			if (ref.eResource() != null) {
-				set = ref.eResource().getResourceSet();
-				if (set != null)
-					resourceSets.add(set);
-			}
-		}
-		return resourceSets;
-	}
-
-	protected ChildCommand createChildCommand(EditModelRetriever retriever) {
-		return new ChildCommand(this, getTarget(), retriever);
-	}
-
-	public void execute() {
-		getTarget().execute();
-		computeAffectedModels();
-		pushChildrenForExecute();
-	}
-
-	protected void executeInModel(AbstractEditModelCommand cmd) {
-		getEditModel().getCommandStack().execute(cmd);
-	}
-
-	protected List getAffectedModels() {
-		if (affectedModels == null)
-			affectedModels = new ArrayList(1);
-		return affectedModels;
-	}
-
-	protected List getChildren() {
-		return children;
-	}
-
-	protected ComposedEditModel getEditModel() {
-		return editModel;
-	}
-
-	protected void invertChildren() {
-		invertChildrenExcept((ChildCommand) null);
-	}
-
-	protected void invertChildrenExcept(ChildCommand caller) {
-		for (int i = 0; i < children.size(); i++) {
-			ChildCommand childCmd = (ChildCommand) children.get(i);
-			if (caller == null || childCmd != caller)
-				childCmd.invertAndPush();
-		}
-	}
-
-	protected void invertFrom(ChildCommand caller) {
-		invertAndPush();
-		invertChildrenExcept(caller);
-	}
-
-	protected void pushChildrenForExecute() {
-		for (int i = 0; i < getAffectedModels().size(); i++) {
-			EditModelRetriever retriever = (EditModelRetriever) getAffectedModels().get(i);
-			ChildCommand command = createChildCommand(retriever);
-			getChildren().add(command);
-			command.executeInModel(command);
-		}
-	}
-
-	public void redo() {
-		getTarget().redo();
-		invertChildren();
-	}
-
-	public void redoFrom(ChildCommand child) {
-		invertFrom(child);
-	}
-
-	public void undo() {
-		getTarget().undo();
-		invertChildren();
-	}
-
-	public void undoFrom(ChildCommand child) {
-		invertFrom(child);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ReadOnlyClientAccessRegistry.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ReadOnlyClientAccessRegistry.java
deleted file mode 100644
index e845428..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/ReadOnlyClientAccessRegistry.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-import org.eclipse.jem.internal.util.emf.workbench.nls.EMFWorkbenchResourceHandler;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchEditResourceHandler;
-
-/**
- * This is a readonly version of the editmodel access registry, only uses a weak hash dictionary,
- * and because the access is read only, is less concerned with timing of access/release, and will be
- * cleaned up on garbage collection if needed.
- * 
- */
-public class ReadOnlyClientAccessRegistry extends ClientAccessRegistry {
-
-	public ReadOnlyClientAccessRegistry() {
-		super();
-	}
-
-	public synchronized void access(Object accessorKey) {
-		if (!registry.containsKey(accessorKey)) {
-			this.registry.put(accessorKey, null);
-		} else
-			throw new ClientAccessRegistryException(EMFWorkbenchEditResourceHandler.ClientAccessRegistry_ERROR_0, accessorKey);
-	}
-
-	public synchronized void release(Object accessorKey) {
-
-		/*
-		 * Error condition: Some one has been naughty and not released the resource
-		 */
-		if (this.registry.containsKey(accessorKey)) {
-			this.registry.remove(accessorKey);
-		} else
-			complain(accessorKey);
-	}
-
-	public void complain(Object accessorKey) {
-
-		throw new ClientAccessRegistryException(EMFWorkbenchResourceHandler.getString("ClientAccessRegistry_ERROR_1"), accessorKey); //$NON-NLS-1$
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/Snapshot.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/Snapshot.java
deleted file mode 100644
index a2b64b4..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/Snapshot.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Oct 3, 2003
- *
- */
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-import java.io.PrintWriter;
-import java.io.StringWriter;
-
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchEditResourceHandler;
-
-
-/**
- * The Snapshot is used to remember the call stack trace of any method that accesses a Resource.
- * 
- * @author mdelder
- */
-public class Snapshot extends RuntimeException {
-
-	public Snapshot() {
-		super(EMFWorkbenchEditResourceHandler.Snapshot_ERROR_0);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Throwable#printStackTrace()
-	 */
-	public String getStackTraceString() {
-		StringWriter writer = new StringWriter();
-		PrintWriter printWriter = new PrintWriter(writer);
-		super.printStackTrace(printWriter);
-		return writer.toString();
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/WrappingCommandStack.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/WrappingCommandStack.java
deleted file mode 100644
index bf15371..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/edit/WrappingCommandStack.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.edit;
-
-
-
-import org.eclipse.emf.common.command.BasicCommandStack;
-import org.eclipse.emf.common.command.Command;
-import org.eclipse.wst.common.internal.emfworkbench.integration.ComposedEditModel;
-
-/**
- * Insert the type's description here. Creation date: (05/21/01 9:31:02 PM)
- * 
- * @author: Administrator
- */
-public class WrappingCommandStack extends BasicCommandStack {
-	private ComposedEditModel editModel;
-
-	/**
-	 * WrappingCommandStack constructor comment.
-	 */
-	public WrappingCommandStack(ComposedEditModel anEditModel) {
-		super();
-		editModel = anEditModel;
-	}
-
-	public void execute(Command command) {
-		ParentCommand parent = new ParentCommand(command, editModel);
-		super.execute(parent);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/AbstractEditModelCommand.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/AbstractEditModelCommand.java
deleted file mode 100644
index 7061e7d..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/AbstractEditModelCommand.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-
-
-import org.eclipse.emf.common.command.AbstractCommand;
-import org.eclipse.emf.common.command.Command;
-import org.eclipse.wst.common.internal.emfworkbench.edit.InvertedCommand;
-
-
-public abstract class AbstractEditModelCommand extends AbstractCommand {
-	private Command target;
-	private AbstractEditModelCommand owner;
-
-	protected AbstractEditModelCommand() {
-		super();
-	}
-
-	public AbstractEditModelCommand(Command targetCommand) {
-		super();
-		target = targetCommand;
-	}
-
-	public abstract EditModelCommand getEditModelCommand();
-
-	protected AbstractEditModelCommand getOutermostCommand() {
-		return owner == null ? this : owner.getOutermostCommand();
-	}
-
-	protected Command getOwner() {
-		return owner;
-	}
-
-	public Command getTarget() {
-		return target;
-	}
-
-	/**
-	 * Creates a new inverted command on the outermost command
-	 */
-	public InvertedCommand inverted() {
-		AbstractEditModelCommand outer = getOutermostCommand();
-		InvertedCommand cmd = new InvertedCommand(outer);
-		outer.setOwner(cmd);
-		return cmd;
-	}
-
-	protected void setOwner(AbstractEditModelCommand ownerCommand) {
-		owner = ownerCommand;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedAccessorKey.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedAccessorKey.java
deleted file mode 100644
index 70cac1e..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedAccessorKey.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-
-
-/**
- * @author Administrator
- * 
- *  
- */
-public class ComposedAccessorKey {
-
-	private Object accessorKey = null;
-	private Object addonKey = null;
-
-
-	public static ComposedAccessorKey getComposedAccessorKey(Object accessorKey, ComposedEditModel editModel) {
-		ComposedAccessorKey newKey = new ComposedAccessorKey(accessorKey, editModel);
-		editModel.cacheAccessorKey(newKey);
-		return newKey;
-	}
-
-
-	private ComposedAccessorKey(Object accessorKey, Object addonKey) {
-		this.accessorKey = accessorKey;
-		this.addonKey = addonKey;
-	}
-
-	public boolean equals(Object other) {
-		if (other == null || !(other instanceof ComposedAccessorKey))
-			return false;
-		ComposedAccessorKey otherKey = (ComposedAccessorKey) other;
-
-		return accessorKey.equals(otherKey.accessorKey) && addonKey.equals(otherKey.addonKey);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return accessorKey.hashCode() ^ addonKey.hashCode();
-	}
-
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedEditModel.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedEditModel.java
deleted file mode 100644
index e46fa9a..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ComposedEditModel.java
+++ /dev/null
@@ -1,279 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.emf.common.command.BasicCommandStack;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.wst.common.frameworks.internal.operations.IOperationHandler;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.edit.WrappingCommandStack;
-
-/**
- * Insert the type's description here. Creation date: (05/21/01 8:26:32 PM)
- * 
- * @author: Administrator
- */
-public class ComposedEditModel extends EditModel implements EditModelListener {
-
-	private List children = null;
-	private Map childrenMap = null;
-	private List cachedKeys = new ArrayList();
-
-	/**
-	 * ComposedEditModel constructor comment.
-	 */
-	public ComposedEditModel(String editModelID, EMFWorkbenchContext context) {
-		super(editModelID, context, false);
-	}
-
-
-	public void createChildrenIfNecessary(ComposedAccessorKey composedAccessorKey) {
-		//do nothing
-	}
-
-	/**
-	 * @param newKey
-	 */
-	public void cacheAccessorKey(ComposedAccessorKey newKey) {
-		if (!cachedKeys.contains(newKey))
-			cachedKeys.add(newKey);
-	}
-
-	// Is this necessary anymore?  The only diff seems to be it doesn't release resources
-//	public void dispose() {
-//		disposing = true;
-//		if (commandStack != null)
-//			commandStack.removeCommandStackListener(this);
-//		if (hasListeners())
-//			notifyListeners(new EditModelEvent(EditModelEvent.PRE_DISPOSE, this));
-//		releasePreloadResources();
-//		releaseIdentifiers();
-//		emfContext = null; 
-//		resources = null;
-//		disposing = false;
-//		project = null;
-//		cachedKeys = new ArrayList();
-//	}
-
-	public EditModel.Reference addChild(String editModelID, Map params, Object accessorKey) {
-		return addChild(editModelID, params, ComposedAccessorKey.getComposedAccessorKey(accessorKey, this));
-	}
-
-	public EditModel.Reference addChild(String editModelID, Map params, ComposedAccessorKey composedAccessorKey) {
-
-		EditModel editModel = getEmfContext().getEditModelForWrite(editModelID, composedAccessorKey, params);
-		editModel.addListener(this);
-
-		getChildrenMap().put(editModel.getReference(), editModel);
-		getChildren().add(editModel);
-
-		return editModel.getReference();
-	}
-
-	public void removeChild(EditModel.Reference reference, Object accessorKey) {
-		ComposedAccessorKey composedAccessorKey = ComposedAccessorKey.getComposedAccessorKey(accessorKey, this);
-		EditModel editModel = (EditModel) getChildrenMap().remove(reference);
-		if (editModel != null) {
-			editModel.releaseAccess(composedAccessorKey);
-			editModel.removeListener(this);
-			getChildren().remove(editModel);
-		}
-	}
-
-	public Iterator getContainedReferences() {
-		return getChildrenMap().keySet().iterator();
-	}
-
-	public EditModel getContainedEditModel(EditModel.Reference reference) {
-		return (EditModel) getChildrenMap().get(reference);
-	}
-
-	/**
-	 * Return the CommandStack.
-	 */
-	protected BasicCommandStack createCommandStack() {
-		return new WrappingCommandStack(this);
-	}
-
-	/**
-	 * Forward all events to the listeners for this model
-	 */
-	public void editModelChanged(EditModelEvent anEvent) {
-		if (hasListeners())
-			notifyListeners(anEvent);
-	}
-
-	public Set getAffectedFiles() {
-		Set aSet = new HashSet();
-		List models = getChildren();
-		for (int i = 0; i < models.size(); i++) {
-			EditModel child = (EditModel) models.get(i);
-			aSet.addAll(child.getAffectedFiles());
-		}
-		return aSet;
-	}
-
-	public List getChildren() {
-		if (children == null)
-			children = new ArrayList();
-		return children;
-	}
-
-	protected Map getChildrenMap() {
-		if (childrenMap == null)
-			childrenMap = new HashMap();
-		return childrenMap;
-	}
-
-	/**
-	 * Pass along to children.
-	 */
-	protected void handleSaveIfNecessaryDidNotSave(IProgressMonitor monitor) {
-		List list = getChildren();
-		EditModel editModel;
-		for (int i = 0; i < list.size(); i++) {
-			editModel = (EditModel) list.get(i);
-			editModel.handleSaveIfNecessaryDidNotSave(monitor);
-		}
-	}
-
-	/**
-	 * Return whether a save is needed on the CommandStack
-	 */
-	public boolean isDirty() {
-		Iterator editModels = getChildren().iterator();
-		while (editModels.hasNext()) {
-			EditModel editModel = (EditModel) editModels.next();
-			if (editModel.isDirty())
-				return true;
-		}
-		return false;
-	}
-
-	public boolean isReadOnly() {
-		return false;
-	}
-
-	/**
-	 * Return whether a save is needed on the CommandStack
-	 */
-	public boolean isInterrestedInResource(Resource aResource) {
-		Iterator editModels = getChildren().iterator();
-		while (editModels.hasNext()) {
-			EditModel editModel = (EditModel) editModels.next();
-			if (editModel.isInterrestedInResource(aResource))
-				return true;
-		}
-		return false;
-	}
-
-	public void primSave(IProgressMonitor monitor) {
-		List list = getChildren();
-		for (int i = 0; i < list.size(); i++)
-			((EditModel) list.get(i)).primSave(monitor);
-	}
-
-	/**
-	 * This only increments the reference count of the children and should only be called if you
-	 * know what you are doing.
-	 */
-	public void access(Object accessorKey) {
-		ComposedAccessorKey composedAccessorKey = ComposedAccessorKey.getComposedAccessorKey(accessorKey, this);
-		if (getChildren().size() == 0) {
-			createChildrenIfNecessary(composedAccessorKey);
-		} else {
-
-			List tempchildren = getChildren();
-			for (int i = 0; i < tempchildren.size(); i++) {
-				EditModel model = (EditModel) tempchildren.get(i);
-				model.access(composedAccessorKey);
-			}
-		}
-		// removing for defect 1978, children should do all the accessing
-		super.access(accessorKey);
-
-	}
-
-	/**
-	 * This method should be called from each client when they are finished working with the
-	 * EditModel.
-	 */
-	public void releaseAccess(Object accessorKey) {
-		List tempchildren = getChildren();
-		ComposedAccessorKey composedAccessorKey = ComposedAccessorKey.getComposedAccessorKey(accessorKey, this);
-		for (int i = 0; i < tempchildren.size(); i++) {
-			EditModel model = (EditModel) tempchildren.get(i);
-			model.releaseAccess(composedAccessorKey);
-		}
-		removeKeyFromCache(composedAccessorKey);
-		// Removing this call... Children should be able to handle all releasing defect 1978
-		super.releaseAccess(accessorKey);
-	}
-
-	public void removeKeyFromCache(ComposedAccessorKey key) {
-		cachedKeys.remove(key);
-	}
-
-	/**
-	 * If one should save, they all should save.
-	 */
-	protected boolean shouldSave() {
-		List list = getChildren();
-		EditModel editModel;
-		for (int i = 0; i < list.size(); i++) {
-			editModel = (EditModel) list.get(i);
-			if (editModel.shouldSave())
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * If one should save, they all should save.
-	 */
-	protected boolean shouldSave(IOperationHandler operationHandler) {
-		List list = getChildren();
-		EditModel editModel;
-		for (int i = 0; i < list.size(); i++) {
-			editModel = (EditModel) list.get(i);
-			if (editModel.shouldSave(operationHandler))
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * @see com.ibm.etools.j2ee.workbench.EditModel#getNonResourceFiles()
-	 */
-	public List getNonResourceFiles() {
-		List list = getChildren();
-		List result = new ArrayList();
-		EditModel editModel;
-		for (int i = 0; i < list.size(); i++) {
-			editModel = (EditModel) list.get(i);
-			List files = editModel.getNonResourceFiles();
-			if (files != null && !files.isEmpty())
-				result.addAll(files);
-		}
-		return result;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/CompoundingCommandStack.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/CompoundingCommandStack.java
deleted file mode 100644
index 188a889..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/CompoundingCommandStack.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Nov 26, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import org.eclipse.emf.common.command.Command;
-import org.eclipse.emf.common.command.CommandStack;
-import org.eclipse.emf.common.command.CommandStackListener;
-
-
-/**
- * @author DABERG
- * 
- * This class does not actually execute any commands. It merely gathers the commands to be executed
- * and compounds them so that they can be executed against the actualCommandStack.
- */
-public class CompoundingCommandStack implements CommandStack {
-	private CommandStack actualCommandStack;
-	private Command compoundCommand;
-
-	/**
-	 *  
-	 */
-	public CompoundingCommandStack(CommandStack actualCommandStack) {
-		this.actualCommandStack = actualCommandStack;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#execute(org.eclipse.emf.common.command.Command)
-	 */
-	public void execute(Command command) {
-		if (compoundCommand == null)
-			compoundCommand = command;
-		else
-			compoundCommand = compoundCommand.chain(command);
-	}
-
-	public void performExecution() {
-		if (compoundCommand != null) {
-			try {
-				actualCommandStack.execute(compoundCommand);
-			} finally {
-				compoundCommand = null;
-			}
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#canUndo()
-	 */
-	public boolean canUndo() {
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#undo()
-	 */
-	public void undo() {
-		//default
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#canRedo()
-	 */
-	public boolean canRedo() {
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#getUndoCommand()
-	 */
-	public Command getUndoCommand() {
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#getRedoCommand()
-	 */
-	public Command getRedoCommand() {
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#getMostRecentCommand()
-	 */
-	public Command getMostRecentCommand() {
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#redo()
-	 */
-	public void redo() {
-		//redo
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#flush()
-	 */
-	public void flush() {
-		//flush
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#addCommandStackListener(org.eclipse.emf.common.command.CommandStackListener)
-	 */
-	public void addCommandStackListener(CommandStackListener listener) {
-		//default
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.command.CommandStack#removeCommandStackListener(org.eclipse.emf.common.command.CommandStackListener)
-	 */
-	public void removeCommandStackListener(CommandStackListener listener) {
-		//default
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/DynamicAdapterFactory.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/DynamicAdapterFactory.java
deleted file mode 100644
index 37571ee..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/DynamicAdapterFactory.java
+++ /dev/null
@@ -1,642 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Dec 1, 2003
- * 
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
-import org.eclipse.emf.common.notify.impl.NotificationImpl;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.edit.provider.ChangeNotifier;
-import org.eclipse.emf.edit.provider.IChangeNotifier;
-import org.eclipse.emf.edit.provider.IDisposable;
-import org.eclipse.emf.edit.provider.INotifyChangedListener;
-import org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.frameworks.internal.enablement.EnablementIdentifier;
-import org.eclipse.wst.common.frameworks.internal.enablement.EnablementIdentifierEvent;
-import org.eclipse.wst.common.frameworks.internal.enablement.EnablementManager;
-import org.eclipse.wst.common.frameworks.internal.enablement.IEnablementIdentifier;
-import org.eclipse.wst.common.frameworks.internal.enablement.IEnablementIdentifierListener;
-import org.eclipse.wst.common.frameworks.internal.enablement.IEnablementManager;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchEditResourceHandler;
-import org.eclipse.wst.common.internal.emfworkbench.edit.AdapterFactoryDescriptor;
-import org.eclipse.wst.common.internal.emfworkbench.edit.AdapterFactoryRegistry;
-import org.eclipse.wst.common.internal.emfworkbench.edit.ExtendedComposedAdapterFactory;
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class DynamicAdapterFactory implements AdapterFactory, IChangeNotifier, IDisposable, INotifyChangedListener, IEnablementIdentifierListener {
-
-	private static final AdapterFactory NULL_FACTORY = new AdapterFactoryImpl();
-
-	private ResourceItemProviderAdapterFactory resourceItemProviderAdapterFactory = null;
-
-	private String viewID;
-
-	//Each of the two maps below are keyed by the project
-	private Map adapterFactoriesByPackage;
-
-	private Map adapterFactoriesByType;
-
-	private Set allFactories;
-
-	/**
-	 * This is used to implement {@link IChangeNotifier}
-	 */
-	protected ChangeNotifier changeNotifier = new ChangeNotifier();
-
-	private boolean respectingActivities = false;
-
-	protected static final Object NO_PROJECT = "NO_PROJECT"; //$NON-NLS-1$
-
-	/**
-	 */
-	public DynamicAdapterFactory(String viewID, boolean respectActivies) {
-		this.viewID = viewID;
-		this.respectingActivities = respectActivies;
-		initialize();
-	}
-
-	/**
-	 */
-	public DynamicAdapterFactory(String viewID) {
-		this.viewID = viewID;
-		initialize();
-	}
-
-	private void initialize() {
-		adapterFactoriesByPackage = new HashMap();
-		adapterFactoriesByType = new HashMap();
-		allFactories = new HashSet();
-	}
-
-	public boolean isFactoryForType(Object type) {
-		return getFactoryForType(type) != null;
-	}
-
-	private AdapterFactory getFactoryForType(Object type) {
-
-		if (type == null)
-			return null;
-
-		if (type instanceof EObject)
-			return getFactoryForType((EObject) type);
-
-		Object aProject = ProjectUtilities.getProject(type);
-		if (aProject == null)
-			aProject = NO_PROJECT;
-		AdapterFactory factory = getExistingFactoryForType(aProject, type);
-		if (factory == NULL_FACTORY)
-			return null;
-		else if (factory == null) {
-			factory = findFactoryForType(aProject, type);
-
-			if (factory == null)
-				addAdapterFactory(aProject, type, NULL_FACTORY);
-			else
-				addAdapterFactory(aProject, type, factory);
-		}
-		return factory;
-	}
-
-	private AdapterFactory getExistingFactoryForType(Object p, Object type) {
-		if (p == null)
-			return null;
-		Map aMap = (Map) adapterFactoriesByType.get(p);
-		if (aMap == null)
-			return null;
-		return (AdapterFactory) adapterFactoriesByType.get(type);
-	}
-
-	/*
-	 * The factory was not cached by type, so we will search the cache of factories for the project
-	 * and see if it can be found there
-	 */
-	private AdapterFactory findFactoryForType(Object project, Object type) {
-		if (project == null)
-			return null;
-		Map aMap = (Map) adapterFactoriesByPackage.get(project);
-		if (aMap == null)
-			return null;
-		Iterator iter = aMap.values().iterator();
-		AdapterFactory factory = null;
-		while (iter.hasNext()) {
-			factory = (AdapterFactory) iter.next();
-			if (factory.isFactoryForType(type))
-				return factory;
-		}
-
-		// adapt the resource to its contents
-		if (getResourceItemProviderAdapterFactory().isFactoryForType(type))
-			return getResourceItemProviderAdapterFactory();
-		return null;
-	}
-
-	private AdapterFactory getFactoryForType(EObject obj) {
-		EClass eClass = obj.eClass();
-		if (eClass == null)
-			return null;
-
-		EPackage ePackage = eClass.getEPackage();
-		Object aProject = ProjectUtilities.getProject(obj);
-		if (aProject == null)
-			aProject = NO_PROJECT;
-		AdapterFactory result = getFactoryForPackage(aProject, ePackage);
-
-		if (result == null) {
-			Set failedPackageSet = new HashSet();
-			failedPackageSet.add(ePackage);
-			Iterator supertypes = eClass.getEAllSuperTypes().iterator();
-			while (supertypes.hasNext()) {
-				eClass = (EClass) supertypes.next();
-				if (eClass != null) {
-					ePackage = eClass.getEPackage();
-					if (failedPackageSet.add(ePackage)) {
-						result = getFactoryForPackage(aProject, ePackage);
-						if (result != null)
-							break;
-					}
-				}
-			}
-		}
-		return result;
-	}
-
-	private AdapterFactory getFactoryForPackage(Object aProject, EPackage aPackage) {
-		if (aProject == null || aPackage == null)
-			return null;
-		AdapterFactory factory = getExistingFactoryForPackage(aProject, aPackage);
-		if (factory == NULL_FACTORY)
-			return null;
-		else if (factory == null) {
-			try {
-				factory = createAdapterFactory(aProject, aPackage);
-
-				if (factory == null)
-					addAdapterFactory(aProject, aPackage, NULL_FACTORY);
-				else
-					addAdapterFactory(aProject, aPackage, factory);
-			} catch (RuntimeException re) {
-				Logger.getLogger().logError(re);
-			}
-		}
-		return factory;
-	}
-
-	private AdapterFactory getFactoryForTypes(Object p, List types) {
-		Map aMap = (Map) adapterFactoriesByPackage.get(p);
-		if (aMap == null)
-			return adaptResourceTypes(types);
-
-		Iterator factories = aMap.values().iterator();
-		AdapterFactory factory = null;
-		while (factories.hasNext()) {
-			factory = (AdapterFactory) factories.next();
-			if (isFactoryForAllTypes(factory, types)) {
-				return factory;
-			}
-		}
-
-
-		return null;
-	}
-
-	private AdapterFactory adaptResourceTypes(List types) {
-		//      adapt the resource to its contents
-		if (isFactoryForAllTypes(getResourceItemProviderAdapterFactory(), types))
-			return getResourceItemProviderAdapterFactory();
-		return null;
-	}
-
-	private void removeFactoryForTypes(Object p, List types) {
-		Map aMap = (Map) adapterFactoriesByPackage.get(p);
-		if (aMap == null)
-			return;
-		Iterator factories = aMap.values().iterator();
-		AdapterFactory factory = null;
-		while (factories.hasNext()) {
-			factory = (AdapterFactory) factories.next();
-			if (isFactoryForAllTypes(factory, types)) {
-				aMap.remove(factory);
-			}
-		}
-
-	}
-
-	private boolean isFactoryForAllTypes(AdapterFactory factory, List types) {
-		for (int i = 0; i < types.size(); i++) {
-			if (!factory.isFactoryForType(types.get(i))) {
-				return false;
-			}
-		}
-		return true;
-
-	}
-
-	private AdapterFactory getExistingFactoryForPackage(Object p, EPackage aPackage) {
-		if (p == null)
-			return null;
-		Map aMap = (Map) adapterFactoriesByPackage.get(p);
-		if (aMap == null)
-			return null;
-		return (AdapterFactory) aMap.get(aPackage);
-	}
-
-	private void addAdapterFactory(Object p, EPackage aPackage, AdapterFactory adapterFactory) {
-		Map aMap = getOrCreateMap(p, adapterFactoriesByPackage);
-
-		aMap.put(aPackage, adapterFactory);
-
-		if (adapterFactory == NULL_FACTORY)
-			return;
-
-		if (adapterFactory instanceof IChangeNotifier) {
-			((IChangeNotifier) adapterFactory).addListener(this);
-		}
-		allFactories.add(adapterFactory);
-	}
-
-	private Map getOrCreateMap(Object p, Map container) {
-		Map aMap = (Map) container.get(p);
-		if (aMap == null) {
-			aMap = new HashMap(10);
-			container.put(p, aMap);
-		}
-		return aMap;
-	}
-
-	private void addAdapterFactory(Object p, Object type, AdapterFactory adapterFactory) {
-		Map aMap = getOrCreateMap(p, adapterFactoriesByType);
-		aMap.put(type, adapterFactory);
-
-		if (adapterFactory == NULL_FACTORY)
-			return;
-
-		if (adapterFactory instanceof IChangeNotifier) {
-			((IChangeNotifier) adapterFactory).addListener(this);
-		}
-		allFactories.add(adapterFactory);
-	}
-
-	public Object adapt(Object target, Object type) {
-		Object adapter = target;
-		if (target instanceof Notifier) {
-			adapter = adapt((Notifier) target, type);
-		}
-
-		if (!(type instanceof Class) || (((Class) type).isInstance(adapter))) {
-			return adapter;
-		}
-
-		return null;
-	}
-
-	public Adapter adapt(Notifier target, Object type) {
-		Adapter result = null;
-
-		if (target instanceof EObject)
-			result = adapt((EObject) target, type);
-		else {
-			Object p = ProjectUtilities.getProject(target);
-			if (p == null)
-				p = NO_PROJECT;
-			result = adapt(p, target, type, new HashSet(), target.getClass());
-
-		}
-
-		return result;
-	}
-
-	public Adapter adapt(EObject target, Object type) {
-
-		EClass eClass = target.eClass();
-		if (eClass == null)
-			return null;
-
-		EPackage ePackage = eClass.getEPackage();
-		Adapter result = adapt(target, ePackage, type);
-
-		if (result == null) {
-			Set failedPackageSet = new HashSet();
-			failedPackageSet.add(ePackage);
-			Iterator supertypes = eClass.getEAllSuperTypes().iterator();
-			while (supertypes.hasNext()) {
-				eClass = (EClass) supertypes.next();
-				if (eClass != null) {
-					ePackage = eClass.getEPackage();
-					if (failedPackageSet.add(ePackage)) {
-						result = adapt(target, ePackage, type);
-						if (result != null)
-							break;
-					}
-				}
-			}
-		}
-		return result;
-	}
-
-	private Adapter adapt(EObject target, EPackage ePackage, Object type) {
-		Object aProject = ProjectUtilities.getProject(target);
-		if (aProject == null)
-			aProject = NO_PROJECT;
-		AdapterFactory delegate = getFactoryForPackage(aProject, ePackage);
-		if (delegate != null && delegate.isFactoryForType(type)) {
-			return delegate.adapt(target, type);
-		}
-
-		return null;
-	}
-
-	/*
-	 * Code borrowed from {@link ComposedAdapterFactory}
-	 *  
-	 */
-	private Adapter adapt(Object p, Notifier target, Object type, Collection failedPackages, Class javaClass) {
-		if (p == null)
-			return null;
-
-		Adapter result = null;
-
-		Package javaPackage = javaClass.getPackage();
-		if (failedPackages.add(javaPackage)) {
-			List types = new ArrayList(2);
-			types.add(javaPackage);
-			if (type != null) {
-				types.add(type);
-			}
-
-			/* when an error occurs, remove the delegate and try again */
-			boolean attemptAdaptAgain = true;
-			while (result == null && attemptAdaptAgain) {
-				attemptAdaptAgain = false;
-
-				AdapterFactory delegateAdapterFactory = getFactoryForTypes(p, types);
-				if (delegateAdapterFactory != null) {
-					try {
-						result = delegateAdapterFactory.adapt(target, type);
-					} catch (RuntimeException re) {
-						Logger.getLogger().logError(re);
-						removeFactoryForTypes(p, types);
-						attemptAdaptAgain = true;
-					}
-				}
-			}
-		}
-
-		if (result == null) {
-			Class superclass = javaClass.getSuperclass();
-			if (superclass != null) {
-				result = adapt(p, target, type, failedPackages, javaClass.getSuperclass());
-			}
-			if (result == null) {
-				Class[] interfaces = javaClass.getInterfaces();
-				for (int i = 0; i < interfaces.length; ++i) {
-					result = adapt(p, target, type, failedPackages, interfaces[i]);
-					if (result != null) {
-						break;
-					}
-				}
-			}
-		}
-
-		return result;
-	}
-
-	public Adapter adaptNew(Notifier target, Object type) {
-
-		AdapterFactory factory = getFactoryForType(target);
-
-		if (factory != null)
-			return factory.adaptNew(target, type);
-		return null;
-	}
-
-	public void adaptAllNew(Notifier target) {
-
-		AdapterFactory factory = getFactoryForType(target);
-
-		if (factory != null)
-			factory.adaptAllNew(target);
-
-	}
-
-	public void addListener(INotifyChangedListener notifyChangedListener) {
-		changeNotifier.add(notifyChangedListener);
-	}
-
-	public void removeListener(INotifyChangedListener notifyChangedListener) {
-		changeNotifier.remove(notifyChangedListener);
-	}
-
-	public void fireNotifyChanged(Notification notification) {
-		if (changeNotifier == null || changeNotifier.isEmpty() || changeNotifier.get(0) == null)
-			return;
-		changeNotifier.fireNotifyChanged(notification);
-	}
-
-	public void dispose() {
-		Iterator iter = allFactories.iterator();
-		Object factory = null;
-		while (iter.hasNext()) {
-			factory = iter.next();
-			disposeFactory(factory);
-		}
-		for (Iterator itr = getEnablementIdentifiers().iterator(); itr.hasNext();) {
-			((IEnablementIdentifier) itr.next()).removeIdentifierListener(this);
-		}
-		if (resourceItemProviderAdapterFactory != null)
-			resourceItemProviderAdapterFactory.removeListener(this);
-	}
-
-	private void disposeFactory(Object factory) {
-		if (factory instanceof IDisposable) {
-			((IDisposable) factory).dispose();
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.edit.provider.INotifyChangedListener#notifyChanged(org.eclipse.emf.common.notify.Notification)
-	 */
-	public void notifyChanged(Notification notification) {
-		//Foward the notification on to all my listeners
-		fireNotifyChanged(notification);
-	}
-
-	/**
-	 * @param project
-	 */
-	private void removeAdapterFactories(Object project) {
-		adapterFactoriesByType.remove(project);
-		Map aMap = (Map) adapterFactoriesByPackage.remove(project);
-		if (aMap == null)
-			return;
-
-		Iterator factories = aMap.values().iterator();
-		Object adapterFactory;
-		while (factories.hasNext()) {
-			adapterFactory = factories.next();
-			allFactories.remove(adapterFactory);
-			disposeFactory(adapterFactory);
-		}
-	}
-
-	private AdapterFactory createAdapterFactory(Object project, EPackage ePackage) {
-		if (ePackage == null)
-			throw new IllegalArgumentException(EMFWorkbenchEditResourceHandler.DynamicAdapterFactory_ERROR_0);
-
-		return createAdapterFactory(project, AdapterFactoryRegistry.instance().getDescriptors(ePackage, viewID));
-
-	}
-
-	private AdapterFactory createAdapterFactory(Object project, List descriptors) {
-		if (descriptors == null || descriptors.isEmpty())
-			return null;
-
-		AdapterFactory fact = null;
-		IEnablementIdentifier identifier = null;
-		AdapterFactoryDescriptor desc = null;
-		if (descriptors.size() == 1) {
-			desc = (AdapterFactoryDescriptor) descriptors.get(0);
-			identifier = getIdentifier(project, desc);
-			addListenerIfNecessary(identifier);
-			if (project.equals(NO_PROJECT) || (identifier != null && identifier.isEnabled()))
-				return desc.createInstance();
-			return null;
-		}
-		List factories = new ArrayList(descriptors.size());
-		for (int i = 0; i < descriptors.size(); i++) {
-			desc = (AdapterFactoryDescriptor) descriptors.get(i);
-			identifier = getIdentifier(project, desc);
-			addListenerIfNecessary(identifier);
-			if (project.equals(NO_PROJECT) || (identifier != null && identifier.isEnabled())) {
-				fact = desc.createInstance();
-				if (fact != null)
-					factories.add(fact);
-			}
-		}
-		if (factories.isEmpty())
-			return null;
-
-		return new ExtendedComposedAdapterFactory(factories);
-	}
-
-	/**
-	 * @param project
-	 * @param desc
-	 * @return
-	 */
-	private IEnablementIdentifier getIdentifier(Object project, AdapterFactoryDescriptor desc) {
-		IEnablementIdentifier identifier = null;
-		if (isRespectingActivities() && project instanceof IProject)
-			identifier = IEnablementManager.INSTANCE.getIdentifier(desc.getID(), (IProject) project);
-		else if (project instanceof IProject)
-			identifier = EnablementManager.INSTANCE.getIdentifier(desc.getID(), (IProject) project);
-		return identifier;
-	}
-
-	/**
-	 * @return
-	 */
-	private boolean isRespectingActivities() {
-		return respectingActivities;
-	}
-
-	protected void addListenerIfNecessary(IEnablementIdentifier identifier) {
-		if (identifier == null)
-			return;
-		identifier.addIdentifierListener(this);
-		getEnablementIdentifiers().add(identifier);
-	}
-
-	protected boolean isListeningTo(IEnablementIdentifier identifier) {
-		return getEnablementIdentifiers().contains(identifier);
-	}
-
-	/**
-	 * @return Returns the enablementIdentifiers.
-	 */
-	protected Set getEnablementIdentifiers() {
-		if (enablementIdentifiers == null)
-			enablementIdentifiers = new HashSet();
-		return enablementIdentifiers;
-	}
-
-	private Set enablementIdentifiers;
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.frameworks.internal.enablement.IEnablementIdentifierListener#identifierChanged(org.eclipse.wst.common.frameworks.internal.enablement.EnablementIdentifierEvent)
-	 */
-	public void identifierChanged(EnablementIdentifierEvent identifierEvent) {
-		if (identifierEvent.hasEnabledChanged() || identifierEvent.hasFunctionGroupIdsChanged()) {
-			Object project = ((EnablementIdentifier) identifierEvent.getIdentifier()).getProject();
-			if (project != null) {
-				removeAdapterFactories(project);
-				/*
-				 * final Notifier notifier = (Notifier) getCachedRoots().get(project);
-				 */
-				/* force a viewer refresh */
-				notifyChanged(new NotificationImpl(Notification.ADD, null, null) {
-
-					/*
-					 * (non-Javadoc)
-					 * 
-					 * @see org.eclipse.emf.common.notify.impl.NotificationImpl#getNotifier()
-					 */
-					public Object getNotifier() {
-						return null; // notifier;
-					}
-				});
-			}
-			/* else replace entire structure */
-		}
-	}
-
-	/**
-	 * @return Returns the resourceItemProviderAdapterFactory.
-	 */
-	public ResourceItemProviderAdapterFactory getResourceItemProviderAdapterFactory() {
-		if (resourceItemProviderAdapterFactory == null) {
-			resourceItemProviderAdapterFactory = new ResourceItemProviderAdapterFactory();
-			resourceItemProviderAdapterFactory.addListener(this);
-		}
-		return resourceItemProviderAdapterFactory;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EMFWorkbenchEditPlugin.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EMFWorkbenchEditPlugin.java
deleted file mode 100644
index e409b3b..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EMFWorkbenchEditPlugin.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import java.io.FileNotFoundException;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.emf.common.util.WrappedException;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-import org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil;
-import org.eclipse.wst.common.internal.emfworkbench.PassthruResourceSet;
-import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;
-import org.osgi.framework.BundleContext;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class EMFWorkbenchEditPlugin extends Plugin {
-	public static final String ID = "org.eclipse.wst.common.emfworkbench.integration"; //$NON-NLS-1$
-
-	public static final String EDIT_MODEL_FACTORIES_EXTENSION_POINT = "editModel"; //$NON-NLS-1$
-	public static final String EDIT_MODEL_EXTENSION_REGISTRY_EXTENSION_POINT = "editModelExtension"; //$NON-NLS-1$
-	public static final String ADAPTER_FACTORY_REGISTRY_EXTENSION_POINT = "adapterFactory"; //$NON-NLS-1$
-
-
-	//The shared instance.
-	private static EMFWorkbenchEditPlugin plugin; 
-
-	/**
-	 * The constructor.
-	 */
-	public EMFWorkbenchEditPlugin() {
-		super();
-		plugin = this; 
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static EMFWorkbenchEditPlugin getDefault() {
-		return plugin;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.Plugin#startup()
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		ExtendedEcoreUtil.setFileNotFoundDetector(new ExtendedEcoreUtil.FileNotFoundDetector() {
-			public boolean isFileNotFound(WrappedException wrappedEx) {
-				return WorkbenchResourceHelperBase.isResourceNotFound(wrappedEx) || wrappedEx.exception() instanceof FileNotFoundException;
-			}
-		});
-		WorkbenchResourceHelper.initializeFileAdapterFactory();
-	}
-
-	public static ResourceSet createIsolatedResourceSet(IProject project) {
-		return new PassthruResourceSet(project);
-	}
-
-	public static ResourceSet createWorkspacePassthruResourceSet() {
-		return new PassthruResourceSet();
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModel.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModel.java
deleted file mode 100644
index d22d645..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModel.java
+++ /dev/null
@@ -1,1612 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.ListenerList;
-import org.eclipse.core.runtime.SafeRunner;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.emf.common.command.BasicCommandStack;
-import org.eclipse.emf.common.command.CommandStackListener;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.jem.internal.util.emf.workbench.nls.EMFWorkbenchResourceHandler;
-import org.eclipse.jem.util.emf.workbench.ResourceSetWorkbenchSynchronizer;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.frameworks.internal.ISaveHandler;
-import org.eclipse.wst.common.frameworks.internal.SaveFailedException;
-import org.eclipse.wst.common.frameworks.internal.SaveHandlerHeadless;
-import org.eclipse.wst.common.frameworks.internal.SaveHandlerRegister;
-import org.eclipse.wst.common.frameworks.internal.enablement.EnablementIdentifierEvent;
-import org.eclipse.wst.common.frameworks.internal.enablement.IEnablementIdentifier;
-import org.eclipse.wst.common.frameworks.internal.enablement.IEnablementIdentifierListener;
-import org.eclipse.wst.common.frameworks.internal.enablement.nonui.IWFTWrappedException;
-import org.eclipse.wst.common.frameworks.internal.operations.IOperationHandler;
-import org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResource;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedResource;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorResource;
-import org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil;
-import org.eclipse.wst.common.internal.emf.utilities.PleaseMigrateYourCodeError;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;
-import org.eclipse.wst.common.internal.emfworkbench.edit.ClientAccessRegistry;
-import org.eclipse.wst.common.internal.emfworkbench.edit.EditModelRegistry;
-import org.eclipse.wst.common.internal.emfworkbench.edit.EditModelResource;
-import org.eclipse.wst.common.internal.emfworkbench.edit.ReadOnlyClientAccessRegistry;
-import org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateInputProvider;
-import org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidator;
-import org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidatorImpl;
-import org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidatorPresenter;
-
-
-public class EditModel implements CommandStackListener, ResourceStateInputProvider, ResourceStateValidator, IEnablementIdentifierListener {
-
-	protected BasicCommandStack commandStack;
-	protected final ListenerList listeners = new ListenerList();
-
-	private Map params;
-	private final String editModelID;
-	private final boolean readOnly;
-	// These are the current resource uris we need to track
-	protected List knownResourceUris;
-	// These are the current resource extensions to track
-	protected List knownResourceExtensions;
-	// This is a subset of the known resource uris, which we have requested be autoloaded
-	protected List preloadResourceUris;
-	// This is a map of identifiers to resources that we need to listen to in order to listen for
-	// updates to the edit model resources
-	protected Map resourceIdentifiers;
-
-	protected EditModelEvent dirtyModelEvent;
-	protected boolean isNotifing = false;
-	protected boolean disposing = false;
-	private boolean disposed = false;
-	protected ResourceStateValidator stateValidator;
-	protected boolean accessAsReadForUnKnownURIs;
-	protected ResourceAdapter resourceAdapter = new ResourceAdapter();
-	protected boolean isReverting = false;
-	protected List resources;
-	private ClientAccessRegistry registry;
-	protected EMFWorkbenchContext emfContext = null;
-	protected IProject project = null;
-
-	private Reference reference;
-	private List resourcesTargetedForTermination;
-
-	protected class ResourceAdapter extends AdapterImpl {
-		public void notifyChanged(Notification notification) {
-			if (!isDisposing() && notification.getEventType() == Notification.SET && notification.getFeatureID(null) == Resource.RESOURCE__IS_LOADED) {
-				resourceIsLoadedChanged((Resource) notification.getNotifier(), notification.getOldBooleanValue(), notification.getNewBooleanValue());
-			}
-		}
-	}
-
-	public EditModel(String editModelID, EMFWorkbenchContext context, boolean readOnly) {
-		if (context == null)
-			throw new IllegalStateException("EMF context can't be null"); //$NON-NLS-1$
-		this.editModelID = editModelID;
-		this.readOnly = readOnly;
-		if (readOnly)
-			this.registry = new ReadOnlyClientAccessRegistry();
-		else
-			this.registry = new ClientAccessRegistry();
-		this.emfContext = context;
-		this.project = context.getProject();
-		initializeKnownResourceUris();
-		processLoadedResources();
-		processPreloadResources();
-	}
-
-	public EditModel(String editModelID, EMFWorkbenchContext context, boolean readOnly, boolean accessUnknownResourcesAsReadOnly) {
-		this(editModelID, context, readOnly);
-		this.accessAsReadForUnKnownURIs = accessUnknownResourcesAsReadOnly;
-	}
-
-	/**
-	 * @return editModelID
-	 */
-	public String getEditModelID() {
-		return editModelID;
-	}
-
-	public boolean isDisposing() {
-		return disposing;
-	}
-
-	
-	/**
-	 * Subclasses should not override this method. This method will be made
-	 * final in the next release. Subclasses should override doDispose() as
-	 * necessary to dispose any additional artifacts.
-	 */
-	public void dispose() {
-		try {
-			if (disposing || disposed)
-				return;
-			disposing = true;
-		
-			if (hasListeners())
-				notifyListeners(new EditModelEvent(EditModelEvent.PRE_DISPOSE, this));
-			
-			releaseResources();
-
-			if (commandStack != null)
-				commandStack.removeCommandStackListener(this);
-			if (getEmfContext() != null)
-				getEmfContext().removeEditModel(this, isReadOnly());
-			releasePreloadResources();
-			releaseIdentifiers();
-			doDispose();
-		} catch (RuntimeException re) {
-			Logger.getLogger().logError(re);
-		} finally {
-			emfContext = null;
-			resources = null;
-			project = null;
-			disposed = true;
-			disposing = false;
-		}
-	}
-
-	/**
-	 * Subclasses should override as necessary
-	 */
-	protected void doDispose() {
-	}
-
-	protected void releaseIdentifiers() {
-		if (resourceIdentifiers == null)
-			return;
-		Iterator iter = resourceIdentifiers.keySet().iterator();
-		IEnablementIdentifier identifier = null;
-		while (iter.hasNext()) {
-			identifier = (IEnablementIdentifier) iter.next();
-			identifier.removeIdentifierListener(this);
-		}
-	}
-
-	private ResourceSetWorkbenchSynchronizer getResourceSetSynchronizer() {
-		if (emfContext == null || !emfContext.hasResourceSet())
-			return null;
-		return getEmfContext().getResourceSet().getSynchronizer();
-	}
-
-	protected void releasePreloadResources() {
-		ResourceSetWorkbenchEditSynchronizer sync = (ResourceSetWorkbenchEditSynchronizer) getResourceSetSynchronizer();
-		if (sync != null) {
-			for (int i = 0; i < preloadResourceUris.size(); i++) {
-				URI uri = (URI) preloadResourceUris.get(i);
-				sync.disableAutoload(uri);
-			}
-			for (int i = 0; i < knownResourceExtensions.size(); i++) {
-				String ext = (String) knownResourceExtensions.get(i);
-				sync.disableAutoload(ext);
-			}
-		}
-	}
-
-
-	/** ** BEGIN Command Stack Manipulation *** */
-
-	/**
-	 * Return the CommandStack.
-	 */
-	protected BasicCommandStack createCommandStack() {
-		BasicCommandStack stack = new BasicCommandStack();
-		return stack;
-	}
-
-	/**
-	 * This is called with the {@linkorg.eclipse.emf.common.command.CommandStack}'s state has changed.
-	 */
-	public void commandStackChanged(java.util.EventObject event) {
-		if (dirtyModelEvent == null)
-			dirtyModelEvent = new EditModelEvent(EditModelEvent.DIRTY, this);
-		if (hasListeners())
-			notifyListeners(dirtyModelEvent);
-	}
-
-	/**
-	 * Flush the Commands from the CommandStack.
-	 */
-	protected void flushCommandStack() {
-		getCommandStack().flush();
-		getCommandStack().saveIsDone();
-	}
-
-	/**
-	 * Return the CommandStack.
-	 */
-	public BasicCommandStack getCommandStack() {
-		if (commandStack == null) {
-			commandStack = createCommandStack();
-			commandStack.addCommandStackListener(this);
-		}
-		return commandStack;
-	}
-
-	/**
-	 * Returns true if there are any listeners
-	 */
-	public boolean hasListeners() {
-		return !listeners.isEmpty();
-	}
-
-	/** ** END Command Stack Manipulation *** */
-
-	/** ** BEGIN Listeners *** */
-
-	/**
-	 * Add
-	 * 
-	 * @aListener to the list of listeners.
-	 */
-	public void addListener(EditModelListener aListener) {
-		if (aListener != null)
-			listeners.add(aListener);
-	}
-
-	/**
-	 * Notify listeners of
-	 * 
-	 * @anEvent.
-	 */
-	protected void notifyListeners(final EditModelEvent anEvent) {
-		
-		NotifyRunner notifier = new NotifyRunner(anEvent); 
-		
-		Object[] notifyList = listeners.getListeners(); 
-		for (int i = 0; i < notifyList.length; i++) {
-			notifier.setListener( (EditModelListener) notifyList[i] );
-			SafeRunner.run(notifier);
-		}
-	}
-
-	/**
-	 * Remove
-	 * 
-	 * @aListener from the list of listeners.
-	 */
-	public boolean removeListener(EditModelListener aListener) {
-		listeners.remove(aListener);
-		return true;
-	}
-
-	/** ** END Listeners *** */
-
-	protected void makeFileEditable(IFile aFile) {
-		if (aFile == null)
-			return;
-		aFile.getResourceAttributes().setReadOnly(false);
-	}
-
-	/**
-	 * @return java.util.List of IFile; any read-only files that will be touched if this edit model
-	 *         saves
-	 */
-	public List getReadOnlyAffectedFiles() {
-		Iterator affected = getAffectedFiles().iterator();
-		List result = new ArrayList();
-		while (affected.hasNext()) {
-			IFile aFile = (IFile) affected.next();
-			if (aFile.isReadOnly())
-				result.add(aFile);
-		}
-		return result;
-	}
-
-	/** ** BEGIN Save Handlers *** */
-
-	protected ISaveHandler getSaveHandler() {
-		return SaveHandlerRegister.getSaveHandler();
-	}
-
-	/**
-	 * Default is to do nothing. This method is called if a saveIfNecessary or
-	 * saveIfNecessaryWithPrompt determines not to save. This provides subclasses with an
-	 * opportunity to do some other action.
-	 */
-	protected void handleSaveIfNecessaryDidNotSave(IProgressMonitor monitor) {
-		// do nothing
-	}
-
-	/**
-	 * This will force all of the referenced Resources to be saved.
-	 */
-	public void save(Object accessorKey) {
-		save(null, accessorKey);
-	}
-
-	/**
-	 * This will force all of the referenced Resources to be saved.
-	 */
-	public void save(IProgressMonitor monitor) throws PleaseMigrateYourCodeError {
-		// save
-	}
-
-	/**
-	 * Subclasses may override {@link #primSave}
-	 */
-	public final void save(IProgressMonitor monitor, Object accessorKey) {
-		assertPermissionToSave(accessorKey);
-		getSaveHandler().access();
-		try {
-			IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-				public void run(IProgressMonitor aMonitor) {
-					primSave(aMonitor);
-				}
-			};
-			runSaveOperation(runnable, monitor);
-		} catch (SaveFailedException ex) {
-			getSaveHandler().handleSaveFailed(ex, monitor);
-		} catch (Exception ex) {
-			ex.printStackTrace();
-		} finally {
-			getSaveHandler().release();
-		}
-	}
-
-	/**
-	 * Save only resources that need to be saved (i.e., no other references).
-	 */
-	public void saveIfNecessary(Object accessorKey) {
-		saveIfNecessary(null, accessorKey);
-	}
-
-	/**
-	 * Save only resources that need to be saved (i.e., no other references).
-	 */
-	public void saveIfNecessary(IProgressMonitor monitor, Object accessorKey) {
-		if (shouldSave())
-			save(monitor, accessorKey);
-		else
-			handleSaveIfNecessaryDidNotSave(monitor);
-	}
-
-	/**
-	 * Save only if necessary. If typically a save would not occur because this edit model is
-	 * shared, the user will be prompted using the
-	 * 
-	 * @operationHandler. If the prompt returns true (the user wants to save) the entire edit model
-	 *                    will be saved.
-	 */
-	public void saveIfNecessaryWithPrompt(IOperationHandler operationHandler, Object accessorKey) {
-		saveIfNecessaryWithPrompt(null, operationHandler, accessorKey);
-	}
-
-	/**
-	 * Save only if necessary. If typically a save would not occur because this edit model is
-	 * shared, the user will be prompted using the
-	 * 
-	 * @operationHandler. If the prompt returns true (the user wants to save) the entire edit model
-	 *                    will be saved. You may pass in a boolean <code>wasDirty</code> to
-	 *                    indicate whether this edit model was dirty prior to making any changes and
-	 *                    calling this method. {@link EditModel#isDirty()}
-	 */
-	public void saveIfNecessaryWithPrompt(IOperationHandler operationHandler, boolean wasDirty, Object accessorKey) {
-		saveIfNecessaryWithPrompt(null, operationHandler, wasDirty, accessorKey);
-	}
-
-	/**
-	 * Save only if necessary. If typically a save would not occur because this edit model is
-	 * shared, the user will be prompted using the
-	 * 
-	 * @operationHandler. If the prompt returns true (the user wants to save) the entire edit model
-	 *                    will be saved.
-	 */
-	public void saveIfNecessaryWithPrompt(IProgressMonitor monitor, IOperationHandler operationHandler, Object accessorKey) {
-		saveIfNecessaryWithPrompt(monitor, operationHandler, true, accessorKey);
-	}
-
-	/**
-	 * Save only if necessary. If typically a save would not occur because this edit model is
-	 * shared, the user will be prompted using the
-	 * 
-	 * @operationHandler. If the prompt returns true (the user wants to save) the entire edit model
-	 *                    will be saved. You may pass in a boolean <code>wasDirty</code> to
-	 *                    indicate whether this edit model was dirty prior to making any changes and
-	 *                    calling this method. {@link EditModel#isDirty()}
-	 */
-	public void saveIfNecessaryWithPrompt(IProgressMonitor monitor, IOperationHandler operationHandler, boolean wasDirty, Object accessorKey) {
-
-		if (shouldSave(operationHandler, wasDirty))
-			save(monitor, accessorKey);
-		else
-			handleSaveIfNecessaryDidNotSave(monitor);
-	}
-
-	protected void assertPermissionToSave(Object accessorKey) {
-		if (registry != null)
-			registry.assertAccess(accessorKey);
-	}
-
-	protected void runSaveOperation(IWorkspaceRunnable runnable, IProgressMonitor monitor) throws SaveFailedException {
-		try {
-			ResourcesPlugin.getWorkspace().run(runnable, ResourcesPlugin.getWorkspace().getRoot(), IWorkspace.AVOID_UPDATE, monitor);
-		} catch (CoreException e) {
-			throw new SaveFailedException(e);
-		}
-	}
-
-	/**
-	 * Should the resources be saved.
-	 */
-	protected boolean shouldSave(IOperationHandler operationHandler, boolean wasDirty) {
-		return !wasDirty ? shouldSave() : shouldSave(operationHandler);
-	}
-
-	/**
-	 * Return true if the uri for
-	 * 
-	 * @aResource is one of the known resource uris.
-	 */
-	public boolean isInterrestedInResource(Resource aResource) {
-		return isInterrestedInResourceUri(aResource.getURI());
-	}
-
-	protected boolean isInterrestedInResourceUri(URI resURI) {
-		URI uri;
-		List uriStrings = getKnownResourceUris();
-		for (int i = 0; i < uriStrings.size(); i++) {
-			uri = (URI) uriStrings.get(i);
-			if (ExtendedEcoreUtil.endsWith(resURI, uri))
-				return true;
-		}
-		return false;
-	}
-
-
-	/**
-	 * Subclasses should override and add URIs (type URI) of known resources. You must add resources
-	 * that have references to other known resources first so they will be released first.
-	 */
-	protected void initializeKnownResourceUris() {
-		knownResourceUris = new ArrayList();
-		preloadResourceUris = new ArrayList();
-		EditModelResource res = null;
-		Collection editModelResources = EditModelRegistry.getInstance().getEditModelResources(getEditModelID());
-		Iterator iter = editModelResources.iterator();
-		while (iter.hasNext()) {
-			res = (EditModelResource) iter.next();
-			addEditModelResource(res);
-		}
-		Collection resourceExtensions = EditModelRegistry.getInstance().getEditModelExtensions(getEditModelID());
-		/* bug 170690 - initialize knownResourceExtensions if necessary, and change reference from iter to it */
-		if (knownResourceExtensions == null)
-		{
-			knownResourceExtensions = new ArrayList();
-		}
-		if (!resourceExtensions.isEmpty())
-		{
-			knownResourceExtensions.addAll(resourceExtensions);
-			Iterator it = resourceExtensions.iterator();
-			ResourceSetWorkbenchEditSynchronizer sync = (ResourceSetWorkbenchEditSynchronizer) getEmfContext().getResourceSet().getSynchronizer();
-			while (it.hasNext()) {
-				sync.enableAutoload(it.next().toString());
-			}
-		}
-	}
-
-	private void addEditModelResource(EditModelResource res) {
-		boolean enabled = false;
-		try {
-			if (res.isCore()) {
-				enabled = true;
-			} else {
-				IEnablementIdentifier identifier = res.getEnablementIdentifier(getProject());
-				registerInterest(identifier, res);
-				enabled = identifier.isEnabled();
-			}
-		} catch (RuntimeException re) {
-			Logger.getLogger().logWarning(re);
-		}
-		if (enabled) {
-			URI uri = res.getURI();
-			knownResourceUris.add(uri);
-			if (res.isAutoLoad()) {
-				ResourceSetWorkbenchEditSynchronizer sync = (ResourceSetWorkbenchEditSynchronizer) getEmfContext().getResourceSet().getSynchronizer();
-				sync.enableAutoload(uri);
-				preloadResourceUris.add(uri);
-			}
-		}
-	}
-
-	/**
-	 * @param res
-	 */
-	private void registerInterest(IEnablementIdentifier identifier, EditModelResource res) {
-		getEditModelResources(identifier).add(res);
-	}
-
-	private List getEditModelResources(IEnablementIdentifier identifier) {
-		if (resourceIdentifiers == null)
-			resourceIdentifiers = new HashMap();
-		List tResources = (List) resourceIdentifiers.get(identifier);
-		if (tResources == null) {
-			tResources = new ArrayList(3);
-			resourceIdentifiers.put(identifier, tResources);
-			identifier.addIdentifierListener(this);
-		}
-		return tResources;
-	}
-
-
-
-	public java.util.List getKnownResourceUris() {
-		if (knownResourceUris == null)
-			initializeKnownResourceUris();
-
-		return knownResourceUris;
-	}
-
-	public boolean isShared() {
-		return registry.size() > 1;
-	}
-
-	/**
-	 * @see ResourceStateInputProvider#cacheNonResourceValidateState(List)
-	 */
-	public void cacheNonResourceValidateState(List roNonResourceFiles) {
-		// do nothing
-	}
-
-	/**
-	 * @see ResourceStateInputProvider#getNonResourceFiles()
-	 */
-	public List getNonResourceFiles() {
-		return null;
-	}
-
-	/**
-	 * @see ResourceStateInputProvider#getNonResourceInconsistentFiles()
-	 */
-	public List getNonResourceInconsistentFiles() {
-		return null;
-	}
-
-	/**
-	 * Gets the stateValidator.
-	 * 
-	 * @return Returns a ResourceStateValidator
-	 */
-	public ResourceStateValidator getStateValidator() {
-		if (stateValidator == null)
-			stateValidator = createStateValidator();
-		return stateValidator;
-	}
-
-	/**
-	 * Method createStateValidator.
-	 * 
-	 * @return ResourceStateValidator
-	 */
-	private ResourceStateValidator createStateValidator() {
-		return new ResourceStateValidatorImpl(this);
-	}
-
-	/**
-	 * @see ResourceStateValidator#checkActivation(ResourceStateValidatorPresenter)
-	 */
-	public void checkActivation(ResourceStateValidatorPresenter presenter) throws CoreException {
-		getStateValidator().checkActivation(presenter);
-	}
-
-	/**
-	 * @see ResourceStateValidator#lostActivation(ResourceStateValidatorPresenter)
-	 */
-	public void lostActivation(ResourceStateValidatorPresenter presenter) throws CoreException {
-		getStateValidator().lostActivation(presenter);
-	}
-
-	/**
-	 * @see ResourceStateValidator#validateState(ResourceStateValidatorPresenter)
-	 */
-	public IStatus validateState(ResourceStateValidatorPresenter presenter) throws CoreException {
-		if (presenter == null)
-			return Status.OK_STATUS;
-		return getStateValidator().validateState(presenter);
-	}
-
-	/**
-	 * @see ResourceStateValidator#checkSave(ResourceStateValidatorPresenter)
-	 */
-	public boolean checkSave(ResourceStateValidatorPresenter presenter) throws CoreException {
-		return getStateValidator().checkSave(presenter);
-	}
-
-	/**
-	 * @see ResourceStateValidator#checkReadOnly()
-	 */
-	public boolean checkReadOnly() {
-		return getStateValidator().checkReadOnly();
-	}
-
-	/**
-	 * Return the ResourceSet from the Nature.
-	 * 
-	 * @return org.eclipse.emf.ecore.resource.ResourceSet
-	 */
-	public ResourceSet getResourceSet() {
-		ResourceSet resourceSet = null;
-		if (getEmfContext() != null)
-			resourceSet = getEmfContext().getResourceSet();
-		return resourceSet;
-	}
-
-	protected void resourceIsLoadedChanged(Resource aResource, boolean oldValue, boolean newValue) {
-		if (!isReverting && !disposing && hasListeners()) {
-			int eventCode = newValue ? EditModelEvent.LOADED_RESOURCE : EditModelEvent.UNLOADED_RESOURCE;
-			EditModelEvent evt = new EditModelEvent(eventCode, this);
-			evt.addResource(aResource);
-			notifyListeners(evt);
-		}
-	}
-
-	public Resource getResource(URI aUri) {
-		Resource res = getAndLoadLocalResource(aUri);
-		if (res == null)
-			res = WorkbenchResourceHelper.getOrCreateResource(aUri, getResourceSet());
-		if (res != null)
-			processResource(res);
-		return res;
-	}
-
-	protected void processResource(Resource aResource) {
-		if (aResource != null && !getResources().contains(aResource)) {
-			if (aResource instanceof ReferencedResource) {
-				access((ReferencedResource) aResource);
-				// We need a better way to pass this through the save options instead.
-				// We also need to make this dynamic based on the project target
-				((ReferencedResource) aResource).setFormat(CompatibilityXMIResource.FORMAT_MOF5);
-			} else if (aResource instanceof CompatibilityXMIResource) {
-				((CompatibilityXMIResource) aResource).setFormat(CompatibilityXMIResource.FORMAT_MOF5);
-			}
-
-			addResource(aResource);
-		}
-	}
-
-	protected void addResource(Resource aResource) {
-		getResources().add(aResource);
-		aResource.eAdapters().add(resourceAdapter);
-	}
-
-	/**
-	 * Return a Resource for
-	 * 
-	 * @aUri.
-	 */
-	// TODO The following method will only use the last segment when looking for a resource.
-	protected Resource getResource(List tResources, URI aUri) {
-		Resource resource;
-		for (int i = 0; i < tResources.size(); i++) {
-			resource = (Resource) tResources.get(i);
-			if (ExtendedEcoreUtil.endsWith(resource.getURI(), aUri))
-				return resource;
-		}
-		return null;
-	}
-
-	public Resource createResource(URI uri) {
-		Resource resource = getExistingOrCreateResource(uri);
-		processResource(resource);
-		return resource;
-	}
-
-	/**
-	 * Get a cached Resource, either local or in the ResourceSet, before creating a Resource. This
-	 * api handles the case that the Resource may be created during a demand load that failed.
-	 */
-	public Resource getExistingOrCreateResource(URI uri) {
-		Resource res = getAndLoadLocalResource(uri);
-		if (res == null)
-			res = WorkbenchResourceHelperBase.getExistingOrCreateResource(uri, getResourceSet());
-		return res;
-	}
-
-	/**
-	 * Return a Resource for
-	 * 
-	 * @aUri.
-	 */
-	protected Resource getAndLoadLocalResource(URI aUri) {
-		Resource resource = getLocalResource(aUri);
-		if (null != resource && !resource.isLoaded()) {
-			try {
-				resource.load(Collections.EMPTY_MAP); // reload it
-			} catch (IOException e) {
-				// Ignore
-			}
-		}
-		return resource;
-	}
-
-	/**
-	 * Return a Resource for
-	 * 
-	 * @aUri.
-	 */
-	protected Resource getLocalResource(URI aUri) {
-		return getResource(getResources(), aUri);
-	}
-
-	/*
-	 * Return true if this is a ReadOnly EditModel or if we should only access unknown URIs as
-	 * ReadOnly.
-	 */
-	protected boolean shouldAccessForRead(ReferencedResource aResource) {
-		return isReadOnly() || (accessAsReadForUnKnownURIs && !isInterrestedInResource(aResource));
-	}
-
-	/**
-	 * Save only resources that need to be saved (i.e., no other references).
-	 */
-	public void resourceChanged(EditModelEvent anEvent) {
-		int code = anEvent.getEventCode();
-		switch (code) {
-			case EditModelEvent.REMOVED_RESOURCE : {
-				if (!isReverting && hasResourceReference(anEvent.getChangedResources()))
-					removeResources(anEvent.getChangedResources());
-				else
-					return;
-				break;
-			}
-			case EditModelEvent.ADDED_RESOURCE :
-				if (!processResourcesIfInterrested(anEvent.getChangedResources()))
-					return;
-		}
-		if (hasListeners()) {
-			anEvent.setEditModel(this);
-			notifyListeners(anEvent);
-		}
-	}
-
-	/**
-	 * Return true if aResource is referenced by me.
-	 */
-	protected boolean hasResourceReference(Resource aResource) {
-		if (aResource != null)
-			return getResources().contains(aResource);
-		return false;
-	}
-
-	/**
-	 * Return true if any Resource in the list of
-	 * 
-	 * @resources is referenced by me.
-	 */
-	protected boolean hasResourceReference(List tResources) {
-		for (int i = 0; i < tResources.size(); i++) {
-			if (hasResourceReference((Resource) tResources.get(i)))
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Remove reference to the Resource objects in
-	 * 
-	 * @aList. This should be called when one or more Resource objects are removed from the
-	 *         ResourceSet without the reference count going to zero.
-	 */
-	protected void removeResources(List aList) {
-		Resource res;
-		for (int i = 0; i < aList.size(); i++) {
-			res = (Resource) aList.get(i);
-			if (removeResource(res) && res instanceof ReferencedResource)
-				removedResource((ReferencedResource) res);
-		}
-	}
-
-	private final void removedResource(ReferencedResource referencedResource) {
-		if (!isReadOnly() && referencedResource.wasReverted()) {
-			isReverting = true;
-			try {
-				reverted(referencedResource);
-			} finally {
-				isReverting = false;
-			}
-		}
-	}
-
-	protected boolean removeResource(URI uri) {
-		Resource res = getLocalResource(uri);
-		return removeResource(res);
-	}
-
-	/**
-	 * Remove reference to the aResource.
-	 */
-	protected boolean removeResource(Resource aResource) {
-		if (aResource != null) {
-			aResource.eAdapters().remove(resourceAdapter);
-			return getResources().remove(aResource);
-		}
-		return false;
-	}
-
-	/**
-	 * Subclasses should override to post process a removed ReferencedResource.
-	 * 
-	 * @see J2EEEditModel#revertAllResources()
-	 */
-	protected void reverted(ReferencedResource revertedResource) {
-		revertAllResources();
-	}
-
-	protected void revertAllResources() {
-		List someResources = getSortedResources();
-		for (int i = 0; i < someResources.size(); i++)
-			((Resource) someResources.get(i)).unload();
-		getResources().removeAll(someResources);
-		for (int i = 0; i < someResources.size(); i++)
-			((Resource) someResources.get(i)).eAdapters().remove(resourceAdapter);
-	}
-
-	/**
-	 * group the resources by XMI first, then XML
-	 */
-	protected List getSortedResources() {
-
-		List theResources = getResources();
-		int size = theResources.size();
-		if (size == 0)
-			return Collections.EMPTY_LIST;
-		Resource[] sorted = new Resource[size];
-		int xmlInsertPos = size - 1;
-		int xmiInsertPos = 0;
-		Resource res = null;
-		for (int i = 0; i < size; i++) {
-			res = (Resource) theResources.get(i);
-			if (res instanceof TranslatorResource)
-				sorted[xmlInsertPos--] = res;
-			else
-				sorted[xmiInsertPos++] = res;
-		}
-
-		return Arrays.asList(sorted);
-	}
-
-	/**
-	 * Process Resources that we are interrested in.
-	 */
-	protected boolean processResourcesIfInterrested(List someResources) {
-		int size = someResources.size();
-		Resource res;
-		boolean processed = false;
-		for (int i = 0; i < size; i++) {
-			res = (Resource) someResources.get(i);
-			if ((res != null) && (isInterrestedInResource(res))) {
-				processResource(res);
-				processed = true;
-			}
-		}
-		return processed;
-	}
-
-	public EMFWorkbenchContext getEmfContext() {
-		if (isDisposed())
-			throw new IllegalStateException("Edit Model already disposed"); //$NON-NLS-1$
-		if (emfContext == null)
-			throw new IllegalStateException("EMF context is null"); //$NON-NLS-1$
-		return emfContext;
-	}
-
-	public boolean isDisposed() {
-		return disposed;
-	}
-
-
-
-	public IProject getProject() {
-		return project;
-	}
-
-	/**
-	 * This method should only be called by the EMFWorkbenchContext.
-	 */
-	public void access(Object accessorKey) {
-		registry.access(accessorKey);
-	}
-
-	/**
-	 * Access
-	 * 
-	 * @aResource for read or write.
-	 */
-	protected void access(ReferencedResource aResource) {
-		if (shouldAccessForRead(aResource))
-			aResource.accessForRead();
-		else
-			aResource.accessForWrite();
-	}
-
-	/**
-	 * This method should be called from each client when they are finished working with the
-	 * EditModel.
-	 */
-	public void releaseAccess(Object accessorKey) {
-
-		registry.release(accessorKey);
-
-		if (!isDisposing()) {
-			boolean shouldDispose = false;
-			shouldDispose = registry.size() == 0;
-			if (shouldDispose) {
-				dispose();
-			}
-		}
-	}
-
-	/**
-	 * Release each of the referenced resources.
-	 */
-	protected void release(Resource aResource) {
-
-		removeResource(aResource);
-		if (aResource != null && aResource instanceof ReferencedResource)
-			release((ReferencedResource) aResource);
-	}
-
-	/**
-	 * Release each of the referenced resources.
-	 */
-	protected void release(ReferencedResource aResource) {
-		if (isReadOnly())
-			aResource.releaseFromRead();
-		else
-			aResource.releaseFromWrite();
-
-	}
-
-	/**
-	 * Release each of the referenced resources.
-	 */
-	protected void releaseResources() {
-		List tResources = getSortedResources();
-		Resource resource;
-		for (int i = 0; i < tResources.size(); i++) {
-			resource = (Resource) tResources.get(i);
-			release(resource);
-		}
-	}
-
-	public void deleteResource(Resource aResource) {
-		if (aResource == null || resources == null || !getResources().contains(aResource))
-			return;
-		getResourcesTargetedForTermination().add(aResource);
-
-	}
-
-	/**
-	 * @return
-	 */
-	protected List getResourcesTargetedForTermination() {
-		if (resourcesTargetedForTermination == null)
-			resourcesTargetedForTermination = new ArrayList(5);
-		return resourcesTargetedForTermination;
-	}
-
-
-
-	/**
-	 * Remove my reference to aResource, remove it from the ResourceSet, and delete its file from
-	 * the Workbench. This only happens if there is currently a reference to
-	 * 
-	 * @aResource.
-	 */
-	public void primDeleteResource(Resource aResource) {
-		if (primFlushResource(aResource)) {
-			try {
-				getEmfContext().deleteResource(aResource);
-			} catch (CoreException e) {
-				// what should we do here?
-			}
-			if (hasListeners()) {
-				EditModelEvent event = new EditModelEvent(EditModelEvent.REMOVED_RESOURCE, this);
-				event.addResource(aResource);
-				notifyListeners(event);
-			}
-		}
-	}
-
-	/**
-	 * Remove my reference to aResource and remove it from the ResourceSet.
-	 */
-	public void flushResource(Resource aResource) {
-		if (primFlushResource(aResource)) {
-			if (hasListeners()) {
-				EditModelEvent event = new EditModelEvent(EditModelEvent.REMOVED_RESOURCE, this);
-				event.addResource(aResource);
-				notifyListeners(event);
-			}
-		}
-	}
-
-	public Set getAffectedFiles() {
-		Set aSet = new HashSet();
-		List mofResources = getResources();
-		for (int i = 0; i < mofResources.size(); i++) {
-			Resource aResource = (Resource) mofResources.get(i);
-			IFile output = WorkbenchResourceHelper.getFile(aResource);
-			if (output != null)
-				aSet.add(output);
-		}
-		return aSet;
-	}
-
-	protected List resetKnownResourceUris() {
-
-		initializeKnownResourceUris();
-
-		return knownResourceUris;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/11/2001 4:14:26 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	public List getResources() {
-		if (resources == null)
-			resources = new ArrayList(5);
-		return resources;
-	}
-
-	public String[] getResourceURIs() {
-		return getResourceURIs(false);
-	}
-
-	public String[] getResourceURIs(boolean onlyDirty) {
-		List list = getResources();
-		int dirtyCount = 0;
-		String[] uris = new String[list.size()];
-		Resource res;
-		for (int i = 0; i < list.size(); i++) {
-			res = (Resource) list.get(i);
-			if (!onlyDirty)
-				uris[i] = res.getURI().toString();
-			else if (res.isModified()) {
-				uris[i] = res.getURI().toString();
-				dirtyCount++;
-			}
-		}
-		if (onlyDirty && dirtyCount > 0) {
-			String[] dirty = new String[dirtyCount];
-			int j = 0;
-			for (int i = 0; i < uris.length; i++) {
-				if (uris[i] != null) {
-					dirty[j] = uris[i];
-					j++;
-				}
-			}
-			uris = dirty;
-		}
-		return uris;
-	}
-
-	/**
-	 * Returns the first element in the extent of the resource; logs an error and returns null if
-	 * the extent is empty
-	 */
-	public static EObject getRoot(Resource aResource) {
-		EList extent = aResource.getContents();
-		if (extent.size() < 1)
-			return null;
-		return (EObject) extent.get(0);
-	}
-
-	/**
-	 * Handle the failure of
-	 * 
-	 * @aResource.
-	 */
-	protected void handleSaveFailed(Resource aResource, Exception e) {
-		aResource.setModified(true);
-		if (isFailedWriteFileFailure(e) && shouldSaveReadOnly(aResource))
-			saveResource(aResource);
-		else
-			primHandleSaveFailed(aResource, e);
-	}
-
-	/**
-	 * Return whether any of my resources has been modified.
-	 */
-	protected boolean isAnyResourceDirty() {
-		List list = getResources();
-		for (int i = 0; i < list.size(); i++) {
-			if (((Resource) list.get(i)).isModified())
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Return whether a save is needed on the CommandStack
-	 */
-	public boolean isDirty() {
-		return isAnyResourceDirty();
-	}
-
-	protected boolean isFailedWriteFileFailure(Exception ex) {
-		return SaveHandlerHeadless.isFailedWriteFileFailure(ex);
-	}
-
-	/**
-	 * Return true if you can only read the resources and not write.
-	 */
-	public boolean isReadOnly() {
-		return readOnly;
-	}
-
-	protected boolean isReadOnlyFailure(Exception ex) {
-		return false;
-	}
-
-	public boolean hasReadOnlyResource() {
-		try {
-			List list = getResources();
-			int size = list.size();
-			Resource res = null;
-			IFile file;
-			for (int i = 0; i < size; i++) {
-				res = (Resource) list.get(i);
-				file = WorkbenchResourceHelper.getFile(res);
-				if (file != null && file.isReadOnly())
-					return true;
-			}
-		} catch (NullPointerException e) {
-			System.out.println(e);
-		}
-		return false;
-	}
-
-	/**
-	 * @deprecated use createResource(URI) instead
-	 */
-	public Resource makeResource(String aUri) {
-		return createResource(URI.createURI(aUri));
-	}
-
-	/**
-	 * Return whether any of my resources has a reference count of one and it has been modified.
-	 */
-	public boolean needsToSave() {
-		return !isShared() && isDirty();
-	}
-
-	/**
-	 * Remove my reference to aResource and remove it from the ResourceSet. Return true if aResource
-	 * was removed.
-	 */
-	protected boolean primFlushResource(Resource aResource) {
-		if (aResource != null && hasResourceReference(aResource)) {
-			removeResource(aResource);
-			removeResourceSetResource(aResource);
-			return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Handle the failure of
-	 * 
-	 * @aResource.
-	 */
-	protected void primHandleSaveFailed(Resource aResource, Exception e) {
-		org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError(e);
-		Exception nested = null;
-		if (e instanceof IWFTWrappedException)
-			nested = ((IWFTWrappedException) e).getNestedException();
-		else
-			nested = e;
-
-		throw new SaveFailedException(EMFWorkbenchResourceHandler.getString("An_error_occurred_while_sa_ERROR_"), nested); //$NON-NLS-1$ = "An error occurred while saving."
-	}
-
-	/**
-	 * Prompt for a save.
-	 */
-	protected boolean promptToSave(IOperationHandler operationHandler) {
-		if (operationHandler == null)
-			return false;
-		return operationHandler.canContinue(EMFWorkbenchResourceHandler.getString("The_following_resources_ne_UI_"), getResourceURIs(true)); //$NON-NLS-1$ = "The following resources need to be saved but are currently shared, do you want to save now?"
-	}
-
-	/**
-	 * This will force all of the referenced Resources to be saved.
-	 */
-	public void primSave(IProgressMonitor monitor) {
-		if (isReadOnly())
-			return; // do nothing
-		deleteResourcesIfNecessary();
-		Resource resource;
-		if (getResources().isEmpty())
-			return; // nothing to save
-		List localResources = getSortedResources();
-		for (int i = 0; i < localResources.size(); i++) {
-			resource = (Resource) localResources.get(i);
-			saveResource(resource);
-		}
-		getCommandStack().saveIsDone();
-		if (hasListeners()) {
-			EditModelEvent event = new EditModelEvent(EditModelEvent.SAVE, this);
-			notifyListeners(event);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void deleteResourcesIfNecessary() {
-		if (resourcesTargetedForTermination == null || resourcesTargetedForTermination.size() == 0)
-			return;
-		Resource deadres = null;
-		for (int i = 0; i < getResourcesTargetedForTermination().size(); i++) {
-			deadres = (Resource) getResourcesTargetedForTermination().get(i);
-			primDeleteResource(deadres);
-
-			getResources().remove(deadres);
-			getResourcesTargetedForTermination().remove(deadres);
-		}
-	}
-
-
-
-	/**
-	 * Save
-	 * 
-	 * @aResource.
-	 */
-	protected void primSaveResource(Resource aResource) throws Exception {
-		if (aResource.isModified())
-			aResource.save(Collections.EMPTY_MAP);
-	}
-
-	/**
-	 * Process resources that have already been loaded.
-	 */
-	protected void processLoadedResources() {
-		List loaded = getResourceSet().getResources();
-		if (!loaded.isEmpty())
-			processResourcesIfInterrested(loaded);
-	}
-
-	private void processPreloadResources() {
-		for (int i = 0; i < preloadResourceUris.size(); i++) {
-			URI uri = (URI) preloadResourceUris.get(i);
-			getResource(uri);
-		}
-	}
-
-	/**
-	 * Remove aResource from my ResourceSet. Return true if aResource was removed.
-	 */
-	protected boolean removeResourceSetResource(Resource aResource) {
-		aResource.eSetDeliver(false);
-		aResource.unload();
-		aResource.eSetDeliver(true);
-		return getResourceSet().getResources().remove(aResource);
-	}
-
-	protected void saveResource(Resource resource) {
-		try {
-			primSaveResource(resource);
-		} catch (Exception e) {
-			handleSaveFailed(resource, e);
-		}
-	}
-
-	/**
-	 * Should the resources be saved.
-	 */
-	protected boolean shouldSave() {
-		return !isReadOnly() && !isShared();
-	}
-
-	/**
-	 * Should the resources be saved.
-	 */
-	protected boolean shouldSave(IOperationHandler operationHandler) {
-		return shouldSave() || promptToSave(operationHandler);
-	}
-
-	protected boolean shouldSaveReadOnly(Resource aResource) {
-		IFile aFile = WorkbenchResourceHelper.getFile(aResource);
-		if (aFile == null || !aFile.isReadOnly())
-			return false;
-
-		return getSaveHandler().shouldContinueAndMakeFileEditable(aFile);
-	}
-
-	/**
-	 * Force all of the known resource URIs to be loaded if they are not already.
-	 */
-	public void forceLoadKnownResources() {
-		List uris = getKnownResourceUris();
-		URI uri = null;
-		for (int i = 0; i < uris.size(); i++) {
-			uri = (URI) uris.get(i);
-			getResource(uri);
-		}
-	}
-
-	/**
-	 * This method should be called when you want to extend this edit model to handle a resource
-	 * with a URI equal to <code>aRelativeURI</code>.
-	 */
-	public void manageExtensionResourceURI(String aRelativeURI) {
-		if (aRelativeURI != null && aRelativeURI.length() > 0) {
-			URI uri = URI.createURI(aRelativeURI);
-			if (!isInterrestedInResourceUri(uri)) {
-				getKnownResourceUris().add(uri);
-				// Process the resource if it is already loaded.
-				try {
-					Resource res = getEmfContext().getResource(uri);
-					if (res != null)
-						processResource(res);
-				} catch (Exception e) {
-					// Ignore
-				}
-			}
-		}
-	}
-
-	/**
-	 * Get a cached Resource or try to load the Resource prior to creating a Resource. This api
-	 * handles the case that the Resource may be created during the load.
-	 */
-	public Resource getOrCreateResource(URI uri) {
-		return getResource(uri);
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean isAccessAsReadForUnKnownURIs() {
-		return accessAsReadForUnKnownURIs;
-	}
-
-	/**
-	 * Use this api to indicate that you want all unknown Resources to be accessed for ReadOnly.
-	 * 
-	 * @param b
-	 */
-	public void setAccessAsReadForUnKnownURIs(boolean b) {
-		accessAsReadForUnKnownURIs = b;
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer(getClass().getName());
-		buffer.append(": "); //$NON-NLS-1$
-		if (isReadOnly())
-			buffer.append(" R = "); //$NON-NLS-1$
-		else
-			buffer.append(" W = "); //$NON-NLS-1$
-		buffer.append(getRegistry().size());
-		buffer.append("[ID: \""); //$NON-NLS-1$
-		buffer.append(getEditModelID());
-		buffer.append("\" Known Resources: ["); //$NON-NLS-1$
-		List uris = getKnownResourceUris();
-		if (uris != null) {
-			int i = 0;
-			for (i = 0; i < (uris.size() - 1); i++)
-				buffer.append(uris.get(i) + ", "); //$NON-NLS-1$
-			buffer.append(uris.get(i));
-			buffer.append("]"); //$NON-NLS-1$
-		} else
-			buffer.append("none"); //$NON-NLS-1$
-
-
-		buffer.append("]"); //$NON-NLS-1$
-		return buffer.toString();
-	}
-
-	public Reference getReference() {
-		if (reference == null)
-			reference = new Reference();
-		return reference;
-	}
-
-	/**
-	 * @return
-	 */
-	protected ClientAccessRegistry getRegistry() {
-		return registry;
-	}
-
-	public class Reference {
-
-		protected String tostring = null;
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see java.lang.Object#toString()
-		 */
-		public String toString() {
-			if (tostring == null) {
-				StringBuffer result = new StringBuffer("EditModel.Reference ["); //$NON-NLS-1$
-				result.append("{"); //$NON-NLS-1$
-				result.append(getEditModelID());
-				result.append("} {"); //$NON-NLS-1$
-				result.append(getProject().getName());
-				result.append("}]"); //$NON-NLS-1$
-				tostring = result.toString();
-			}
-			return tostring;
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see java.lang.Object#hashCode()
-		 */
-		public int hashCode() {
-			return toString().hashCode();
-		}
-	}
-
-	/**
-	 * Subclasses can override - by default this will return the first root object from the first
-	 * resource referenced by the known resource URIs for this EditModel
-	 * 
-	 * @return an EObject or Null
-	 */
-	public EObject getPrimaryRootObject() {
-		Resource res = getPrimaryResource();
-		if (res == null || res.getContents().isEmpty())
-			return null;
-		return (EObject) res.getContents().get(0);
-	}
-
-	/**
-	 * Subclasses can override - by default this will return the first resource referenced by the
-	 * known resource URIs for this EditModel
-	 * 
-	 * @return
-	 */
-	public Resource getPrimaryResource() {
-		if (knownResourceUris == null)
-			getKnownResourceUris();
-		if (knownResourceUris == null || knownResourceUris.isEmpty())
-			return null;
-
-		URI uri = (URI) knownResourceUris.get(0);
-		return getResource(uri);
-	}
-
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.frameworks.internal.enablement.IEnablementIdentifierListener#identifierChanged(org.eclipse.wst.common.frameworks.internal.enablement.EnablementIdentifierEvent)
-	 */
-	public void identifierChanged(EnablementIdentifierEvent evt) {
-		if (evt.hasEnabledChanged()) {
-			EditModelEvent editModelEvent = new EditModelEvent(EditModelEvent.KNOWN_RESOURCES_ABOUT_TO_CHANGE, this);
-			notifyListeners(editModelEvent);
-			IEnablementIdentifier id = evt.getIdentifier();
-			if (id.isEnabled())
-				addKnownResources(id);
-			else
-				removeKnownResources(id);
-			editModelEvent = new EditModelEvent(EditModelEvent.KNOWN_RESOURCES_CHANGED, this);
-			notifyListeners(editModelEvent);
-		}
-	}
-
-	private void removeKnownResources(IEnablementIdentifier id) {
-		List editModelResources = getEditModelResources(id);
-		EditModelResource editModelResource = null;
-		ResourceSetWorkbenchEditSynchronizer sync = (ResourceSetWorkbenchEditSynchronizer) getResourceSetSynchronizer();
-		for (int i = 0; i < editModelResources.size(); i++) {
-			editModelResource = (EditModelResource) editModelResources.get(i);
-			if (editModelResource.isAutoLoad() && sync != null) {
-				sync.disableAutoload(editModelResource.getURI());
-				preloadResourceUris.remove(editModelResource.getURI());
-			}
-			knownResourceUris.remove(editModelResource.getURI());
-			removeResource(editModelResource.getURI());
-		}
-
-	}
-
-
-
-	private void addKnownResources(IEnablementIdentifier id) {
-		List editModelResources = getEditModelResources(id);
-		EditModelResource editModelResource = null;
-		ResourceSetWorkbenchEditSynchronizer sync = (ResourceSetWorkbenchEditSynchronizer) getResourceSetSynchronizer();
-		for (int i = 0; i < editModelResources.size(); i++) {
-			editModelResource = (EditModelResource) editModelResources.get(i);
-			if (editModelResource.isAutoLoad() && sync != null) {
-				sync.enableAutoload(editModelResource.getURI());
-				preloadResourceUris.add(editModelResource.getURI());
-				getResource(editModelResource.getURI());
-			}
-			knownResourceUris.add(editModelResource.getURI());
-
-		}
-	}
-
-
-	/**
-	 * @return Returns the params.
-	 */
-	public Map getParams() {
-		return params;
-	}
-
-	/**
-	 * @param params
-	 *            The params to set.
-	 */
-	public void setParams(Map params) {
-		this.params = params;
-	}
-	
-	public class NotifyRunner implements ISafeRunnable { 
-		
-		private final EditModelEvent event;
-		private EditModelListener listener;
-		
-		public NotifyRunner(EditModelEvent event) {
-			Assert.isNotNull(event);
-			this.event = event;
-		}
-		
-		
-		public void setListener(EditModelListener listener) {
-			this.listener = listener;
-		}
-
-		public void handleException(Throwable exception) { 
-			EMFWorkbenchEditPlugin.getDefault().getLog().log(new Status(IStatus.ERROR, EMFWorkbenchEditPlugin.ID, 0, exception.getMessage(), exception));
-			
-		}
-
-		public void run() throws Exception {
-			if(listener != null)
-				listener.editModelChanged(event); 
-		}
-		
-	};
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelCommand.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelCommand.java
deleted file mode 100644
index 00eed90..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelCommand.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import org.eclipse.emf.common.command.Command;
-
-
-
-/**
- * Insert the type's description here. Creation date: (05/22/01 8:57:00 AM)
- * 
- * @author: Administrator
- */
-public abstract class EditModelCommand extends AbstractEditModelCommand {
-	protected EditModelCommand() {
-		super();
-	}
-
-	public EditModelCommand(Command targetCommand) {
-		super(targetCommand);
-	}
-
-	public boolean canUndo() {
-		return getTarget().canUndo();
-	}
-
-	protected abstract void executeInModel(AbstractEditModelCommand cmd);
-
-	public EditModelCommand getEditModelCommand() {
-		return this;
-	}
-
-	public String getLabel() {
-		return getTarget().getLabel();
-	}
-
-	public void invertAndPush() {
-		executeInModel(this.inverted());
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelEvent.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelEvent.java
deleted file mode 100644
index 460a84a..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelEvent.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.ecore.resource.Resource;
-
-public class EditModelEvent {
-	//These are the event codes.
-
-	// Used when the edit model is saved.
-	public static final int SAVE = 1;
-	// Used when the command stack becomes dirty.
-	public static final int DIRTY = 2;
-	// Used when a referenced resource is removed from the ResourceSet.
-	public static final int REMOVED_RESOURCE = 3;
-	// Used when a referenced resource is added to the ResourceSet.
-	public static final int ADDED_RESOURCE = 4;
-	// Used when the edit model is disposed
-	public static final int PRE_DISPOSE = 5;
-	// Used when a Resource is loaded or the first object
-	// is added to the contents when created.
-	public static final int LOADED_RESOURCE = 6;
-	// Used when a Resource is unloaded.
-	public static final int UNLOADED_RESOURCE = 7;
-	// Indicates that the list of known resources managed by the edit model is about to change
-	public static final int KNOWN_RESOURCES_ABOUT_TO_CHANGE = 8;
-	// Indicates that the list of known resources managed by the edit model has changed
-	public static final int KNOWN_RESOURCES_CHANGED = 9;
-
-	private int eventCode;
-	private EditModel editModel;
-	private List changedResources;
-
-	/**
-	 * Insert the method's description here. Creation date: (4/12/2001 2:46:59 PM)
-	 */
-	public EditModelEvent(int anEventCode, EditModel model) {
-		setEventCode(anEventCode);
-		setEditModel(model);
-	}
-
-	public void addResource(Resource aResource) {
-		if (aResource != null)
-			getChangedResources().add(aResource);
-	}
-
-	public void addResources(Collection someResources) {
-		if (someResources != null)
-			getChangedResources().addAll(someResources);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/12/2001 2:46:43 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	public java.util.List getChangedResources() {
-		if (changedResources == null)
-			changedResources = new ArrayList();
-		return changedResources;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (05/21/01 9:01:08 PM)
-	 * 
-	 * @return com.ibm.etools.j2ee.workbench.EditModel
-	 */
-	public EditModel getEditModel() {
-		return editModel;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/12/2001 2:46:43 PM)
-	 * 
-	 * @return int
-	 */
-	public int getEventCode() {
-		return eventCode;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/12/2001 2:46:43 PM)
-	 * 
-	 * @param newChangedResources
-	 *            java.util.List
-	 */
-	public void setChangedResources(java.util.List newChangedResources) {
-		changedResources = newChangedResources;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (05/21/01 9:01:08 PM)
-	 * 
-	 * @param newEditModel
-	 *            com.ibm.etools.j2ee.workbench.EditModel
-	 */
-	public void setEditModel(EditModel newEditModel) {
-		editModel = newEditModel;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/12/2001 2:46:43 PM)
-	 * 
-	 * @param newEventCode
-	 *            int
-	 */
-	public void setEventCode(int newEventCode) {
-		eventCode = newEventCode;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelFactory.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelFactory.java
deleted file mode 100644
index d97bbe4..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelFactory.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-
-import java.util.Map;
-
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-
- 
-public class EditModelFactory implements IEditModelFactory {
-	protected boolean loadKnownResourcesAsReadOnly = true;
-
-	public EditModel createEditModelForRead(String editModelID, EMFWorkbenchContext context) {
-		return createEditModelForRead(editModelID, context, null);
-	}
-
-	public EditModel createEditModelForWrite(String editModelID, EMFWorkbenchContext context) {
-		return createEditModelForWrite(editModelID, context, null);
-	}
-
-	public EditModel createEditModelForRead(String editModelID, EMFWorkbenchContext context, Map params) {
-		EditModel editModel = new EditModel(editModelID, context, true);
-		editModel.setAccessAsReadForUnKnownURIs(loadKnownResourcesAsReadOnly);
-		return editModel;
-	}
-
-	public EditModel createEditModelForWrite(String editModelID, EMFWorkbenchContext context, Map params) {
-		EditModel editModel = new EditModel(editModelID, context, false);
-		editModel.setAccessAsReadForUnKnownURIs(loadKnownResourcesAsReadOnly);
-		return editModel;
-	}
-
-	public String getCacheID(String editModelID, Map params) {
-		return editModelID;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.integration.IEditModelFactory#setLoadKnownResourcesAsReadOnly(boolean)
-	 */
-	public void setLoadKnownResourcesAsReadOnly(boolean value) {
-		this.loadKnownResourcesAsReadOnly = value;
-	}
-
-	/**
-	 * @return Returns the loadKnownResourcesAsReadOnly.
-	 */
-	protected boolean isLoadKnownResourcesAsReadOnly() {
-		return loadKnownResourcesAsReadOnly;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelListener.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelListener.java
deleted file mode 100644
index aefe9e4..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelListener.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-
-/**
- * Insert the type's description here. Creation date: (4/11/2001 4:45:13 PM)
- * 
- * @author: Administrator
- */
-public interface EditModelListener {
-	/**
-	 * An event ocurred on the J2EEEditModel.
-	 */
-	void editModelChanged(EditModelEvent anEvent);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelNature.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelNature.java
deleted file mode 100644
index f80a886..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/EditModelNature.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 4, 2004
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import java.util.Map;
-
-import org.eclipse.jem.util.emf.workbench.nature.EMFNature;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public abstract class EditModelNature extends EMFNature {
-	/**
-	 *  
-	 */
-	public EditModelNature() {
-		super();
-	}
-
-	public EditModel getEditModelForRead(String editModelKey, Object accessorKey) {
-		return getEditModelForRead(editModelKey, accessorKey, null);
-	}
-
-	public EditModel getEditModelForWrite(String editModelKey, Object accessorKey) {
-		return getEditModelForWrite(editModelKey, accessorKey, null);
-	}
-
-	public EditModel getEditModelForRead(String editModelKey, Object accessorKey, Map params) {
-		EditModel result = null;
-		if (getEmfContext() != null)
-			result = getEmfContext().getEditModelForRead(editModelKey, accessorKey, params);
-		return result;
-	}
-
-	public EditModel getEditModelForWrite(String editModelKey, Object accessorKey, Map params) {
-		EditModel result = null;
-		if (getEmfContext() != null)
-			result = getEmfContext().getEditModelForWrite(editModelKey, accessorKey, params);
-		return result;
-	}
-
-	protected EMFWorkbenchContext getEmfContext() {
-		return (EMFWorkbenchContext) getEmfContextBase();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/IEditModelFactory.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/IEditModelFactory.java
deleted file mode 100644
index 873209f..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/IEditModelFactory.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import java.util.Map;
-
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-
-
-public interface IEditModelFactory {
-
-	public abstract EditModel createEditModelForRead(String editModelID, EMFWorkbenchContext context);
-
-	public abstract EditModel createEditModelForRead(String editModelID, EMFWorkbenchContext context, Map params);
-
-	public abstract EditModel createEditModelForWrite(String editModelID, EMFWorkbenchContext context);
-
-	public abstract EditModel createEditModelForWrite(String editModelID, EMFWorkbenchContext context, Map params);
-
-	public String getCacheID(String editModelID, Map params);
-
-	public void setLoadKnownResourcesAsReadOnly(boolean value);
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/LooseComposedEditModel.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/LooseComposedEditModel.java
deleted file mode 100644
index f9a5f82..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/LooseComposedEditModel.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-
-
-/**
- * @author Administrator
- */
-public class LooseComposedEditModel extends ComposedEditModel {
-
-	public LooseComposedEditModel(String editModelID, EMFWorkbenchContext context) {
-		super(editModelID, context);
-
-	}
-
-	public EditModel.Reference addChild(EditModel editModel) {
-		getChildren().add(editModel);
-		Reference ref = editModel.getReference();
-		getChildrenMap().put(ref, editModel);
-		return ref;
-	}
-
-	public void removeChild(EditModel editModel) {
-		getChildren().remove(editModel);
-		getChildrenMap().remove(editModel.getReference());
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModelModifier.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModelModifier.java
deleted file mode 100644
index c0ed86a..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModelModifier.java
+++ /dev/null
@@ -1,621 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.common.command.AbstractCommand;
-import org.eclipse.emf.common.command.Command;
-import org.eclipse.emf.common.command.CommandStack;
-import org.eclipse.emf.common.util.Enumerator;
-import org.eclipse.emf.ecore.EEnum;
-import org.eclipse.emf.ecore.EEnumLiteral;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.edit.command.AddCommand;
-import org.eclipse.emf.edit.command.RemoveCommand;
-import org.eclipse.emf.edit.command.SetCommand;
-import org.eclipse.emf.edit.domain.EditingDomain;
-import org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil;
-
-/**
- * Insert the type's description here. Creation date: (4/6/2001 3:40:35 PM)
- * 
- * @author: Administrator
- */
-public class ModelModifier {
-	private static final String SET_PATTERN = "Set {0}"; //$NON-NLS-1$
-	private static final String ADD_PATTERN = "Add {0}"; //$NON-NLS-1$
-	private static final String REMOVE_PATTERN = "Remove {0}"; //$NON-NLS-1$
-	private static final String DEFAULT_COMMAND_LABEL = "Command"; //$NON-NLS-1$
-	private EditingDomain editingDomain;
-	private List helpers;
-	private List extendedHelpers;
-	protected List additionalCommands;
-	protected int status;
-	public static final int NO_VALUE_CHANGE = 0;
-	public static final int VALUE_CHANGE = 1;
-	public static final int ERROR = 2;
-
-	/**
-	 * J2EEModelModifier constructor comment.
-	 */
-	public ModelModifier() {
-		super();
-	}
-
-	/**
-	 * J2EEModelModifier constructor comment.
-	 * 
-	 * @param aDomain
-	 *            EditingDomain
-	 */
-	public ModelModifier(EditingDomain aDomain) {
-		setEditingDomain(aDomain);
-	}
-
-	/**
-	 * Add
-	 * 
-	 * @aHelper to the list of helper that will be executed.
-	 */
-	public void addHelper(ModifierHelper aHelper) {
-		if (aHelper != null && !getHelpers().contains(aHelper))
-			getHelpers().add(aHelper);
-	}
-
-	public void addAdditionalCommand(Command aCommand) {
-		if (aCommand != null && !getAdditionalCommands().contains(aCommand))
-			additionalCommands.add(aCommand);
-	}
-
-	/**
-	 * Return true if this modifier can create a command that will perform the necessary operation.
-	 */
-	public boolean canExecuteCommand() {
-		return getEditingDomain() != null;
-	}
-
-	public int executeWithStatus() {
-		try {
-			execute();
-			return status;
-		} finally {
-			status = -1;
-		}
-	}
-
-	/**
-	 * Execute this modifier using the recording mechanism of the StructedTextUndoManager. If this
-	 * modifier cannot record, try to execute using the CommandStack (if it can execute commands).
-	 * Return true if the execution was attempted.
-	 * 
-	 * @see canExecuteCommand()
-	 * @see canRecord()
-	 * @see run()
-	 */
-	public boolean execute(ModifierHelper aHelper) {
-		addHelper(aHelper);
-		return execute();
-	}
-
-	/**
-	 * Execute this modifier using the recording mechanism of the StructedTextUndoManager. If this
-	 * modifier cannot record, try to execute using the CommandStack (if it can execute commands).
-	 * Return true if the execution was attempted.
-	 * 
-	 * @see canExecuteCommand()
-	 * @see canRecord()
-	 * @see run()
-	 */
-	public boolean execute(List someHelpers) {
-		setHelpers(someHelpers);
-		return execute();
-	}
-
-	/**
-	 * Execute this modifier by creating a Command that is executed on the CommandStack. If this
-	 * modifier cannot execute commands, the execution will not take place. Return true if the
-	 * execution was attempted.
-	 * 
-	 * @see canExecuteCommand()
-	 */
-	public boolean execute() {
-		boolean result = false;
-		if (canExecuteCommand()) {
-			try {
-				Command command = createCommand();
-				result = command != null;
-				if (result) {
-					getCommandStack().execute(command);
-				}
-			} finally {
-				release();
-			}
-		} else {
-			setStatus(ERROR);
-		}
-		return result;
-	}
-
-	protected CommandStack getCommandStack() {
-		if (getEditingDomain() != null)
-			return getEditingDomain().getCommandStack();
-		return null;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 2:53:17 PM)
-	 * 
-	 * @return EditingDomain
-	 */
-	public EditingDomain getEditingDomain() {
-		return editingDomain;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/10/2001 8:46:35 AM)
-	 * 
-	 * @return J2EEModifierHelper
-	 */
-	public ModifierHelper getFirstHelper() {
-		if (helpers != null && getHelpers().size() > 0)
-			return (ModifierHelper) getHelpers().get(0);
-		return null;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/10/2001 8:46:35 AM)
-	 * 
-	 * @return java.util.List
-	 */
-	public java.util.List getHelpers() {
-		if (helpers == null)
-			helpers = new ArrayList();
-		return helpers;
-	}
-
-	public java.util.List getAdditionalCommands() {
-		if (additionalCommands == null)
-			additionalCommands = new ArrayList();
-		return additionalCommands;
-	}
-
-	/**
-	 * Release all model artifacts.
-	 */
-	protected void release() {
-		setEditingDomain(null);
-		setHelpers(null);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 2:53:17 PM)
-	 * 
-	 * @param newEditingDomain
-	 *            EditingDomain
-	 */
-	public void setEditingDomain(EditingDomain newEditingDomain) {
-		editingDomain = newEditingDomain;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/10/2001 8:46:35 AM)
-	 * 
-	 * @param newHelpers
-	 *            java.util.List
-	 */
-	public void setHelpers(java.util.List newHelpers) {
-		helpers = newHelpers;
-	}
-
-	protected void setStatus(int statusCode) {
-		if (statusCode > status)
-			status = statusCode;
-	}
-
-	/**
-	 * Return an AddCommand that will be executed by a CommandStack.
-	 */
-	protected Command createAddCommand(ModifierHelper aHelper) {
-		Object value = getValue(aHelper);
-		Command command = null;
-		if (valueChanged(aHelper.getOwner(), aHelper.getFeature(), value, false)) {
-			command = AddCommand.create(getEditingDomain(), aHelper.getOwner(), aHelper.getFeature(), value);
-			((AbstractCommand) command).setLabel(createCommandLabel(ADD_PATTERN, aHelper.getFeature()));
-			setStatus(VALUE_CHANGE);
-		} else {
-			setStatus(NO_VALUE_CHANGE);
-		}
-		return command;
-	}
-
-	/**
-	 * Return a Command that will be executed by a CommandStack. The default is to return null.
-	 * Subclasses should override this method.
-	 */
-	public Command createCommand() {
-		Command chainedCommand = createCommand(null, getHelpers());
-		if (null == chainedCommand && additionalCommands != null && additionalCommands.isEmpty()) {
-			setStatus(ERROR);
-			return null;
-		}
-		chainedCommand = appendAdditionalCommands(chainedCommand);
-		return chainedCommand;
-	}
-
-	protected Command createCommand(Command chainedCommand, List helpersArg) {
-		if (null == extendedHelpers) {
-			extendedHelpers = new ArrayList();
-		}
-
-		if (!helpersArg.isEmpty()) {
-			Iterator it = helpersArg.iterator();
-			Command nextCommand = null;
-			while (it.hasNext()) {
-				nextCommand = createCommand((ModifierHelper) it.next());
-				if (chainedCommand == null)
-					chainedCommand = nextCommand;
-				else if (nextCommand != null)
-					chainedCommand = chainedCommand.chain(nextCommand);
-			}
-		}
-		if (!extendedHelpers.isEmpty()) {
-			List copy = new ArrayList();
-			copy.addAll(extendedHelpers);
-			extendedHelpers.clear();
-			chainedCommand = createCommand(chainedCommand, copy);
-		}
-		return chainedCommand;
-	}
-
-	protected Command appendAdditionalCommands(Command chainedCommand) {
-		if (additionalCommands != null && !additionalCommands.isEmpty()) {
-			Command command;
-			for (int i = 0; i < additionalCommands.size(); i++) {
-				command = (Command) additionalCommands.get(i);
-				if (chainedCommand == null)
-					chainedCommand = command;
-				else
-					chainedCommand = chainedCommand.chain(command);
-			}
-		}
-		return chainedCommand;
-	}
-
-	/**
-	 * Return a Command that will be executed by a CommandStack.
-	 */
-	protected Command createCommand(ModifierHelper aHelper) {
-		if (aHelper == null)
-			return null;
-		Command command1, command2;
-		ModifierHelper ownerHelper = aHelper.getOwnerHelper();
-		if (aHelper.shouldUnsetValue() && ownerHelper != null)
-			return null; //we are unsetting a value on an owner that does not exist so do not
-		// create the owner
-		command1 = createCommand(ownerHelper);
-		command2 = primCreateCommand(aHelper);
-
-		if (command1 != null) {
-			if (command2 == null)
-				command2 = command1;
-			else
-				command2 = command2.chain(command1);
-		}
-		return command2;
-	}
-
-	protected String createCommandLabel(String aPattern, EStructuralFeature feature) {
-		String replacement = feature == null ? DEFAULT_COMMAND_LABEL : feature.getName();
-		return java.text.MessageFormat.format(aPattern, new String[]{replacement});
-	}
-
-	/**
-	 * Return a Command that will be executed by a CommandStack. The default is to return null.
-	 * Subclasses should override this method.
-	 */
-	protected Command createManyCommand(ModifierHelper aHelper) {
-		if (aHelper.shouldUnsetValue())
-			return createRemoveCommand(aHelper);
-		return createAddCommand(aHelper);
-	}
-
-	protected EObject createObjectFromHelper(ModifierHelper aHelper) {
-		return aHelper.createNewObjectFromFeature();
-	}
-
-	
-	/**
-	 * Used to remove an object on unset.  Makes the object a proxy  
-	 * on execute and redo commands.  Undo will remove the proxy.
-	 */
-	public class ProxyWrappingCommand extends AbstractCommand {
-		protected Command baseCommand = null;
-		protected EObject eObject = null;
-		protected Resource resource = null;
-
-		public ProxyWrappingCommand(Command baseCommand, EObject eObject) {
-			this.baseCommand = baseCommand;
-			this.eObject = eObject;
-			this.resource = eObject.eResource();
-		}
-
-		public boolean canExecute() {
-			return baseCommand.canExecute();
-		}
-
-		public void execute() {
-			ExtendedEcoreUtil.becomeProxy(eObject, resource);
-			baseCommand.execute();
-		}
-
-		public boolean canUndo() {
-			return baseCommand.canUndo();
-		}
-
-		public void undo() {
-			baseCommand.undo();
-			ExtendedEcoreUtil.removeProxy(eObject, resource);
-		}
-
-		public void redo() {
-			ExtendedEcoreUtil.becomeProxy(eObject, resource);
-			baseCommand.redo();
-		}
-
-		public Collection getResult() {
-			return baseCommand.getResult();
-		}
-
-		public Collection getAffectedObjects() {
-			return baseCommand.getAffectedObjects();
-		}
-
-		public String getLabel() {
-			return baseCommand.getLabel();
-		}
-
-		public String getDescription() {
-			return baseCommand.getDescription();
-		}
-
-		public void dispose() {
-			super.dispose();
-			baseCommand.dispose();
-		}
-	}
-
-	/**
-	 * Return a Remove Command that will be executed by a CommandStack.
-	 */
-	protected Command createRemoveCommand(ModifierHelper aHelper) {
-		Object value = getValue(aHelper);
-		Command command = null;
-		EStructuralFeature feature = aHelper.getFeature();
-		if (valueChanged(aHelper.getOwner(), feature, value, true)) {
-			if (isValueEqual(aHelper, value)) {
-				command = RemoveCommand.create(getEditingDomain(), aHelper.getOwner(), feature, (Collection) value);
-			} else {
-				command = RemoveCommand.create(getEditingDomain(), aHelper.getOwner(), feature, value);
-			}
-			((AbstractCommand) command).setLabel(createCommandLabel(REMOVE_PATTERN, feature));
-			setStatus(VALUE_CHANGE);
-		} else {
-			setStatus(NO_VALUE_CHANGE);
-		}
-		return command;
-	}
-
-	private boolean isValueEqual(ModifierHelper aHelper, Object value) {
-		return aHelper.getOwner().eGet(aHelper.getFeature()) == value;
-	}
-
-	/**
-	 * Return a SetCommand that will be executed by a CommandStack.
-	 */
-	protected Command createSingleCommand(ModifierHelper aHelper) {
-		Object value = getValue(aHelper);
-		Command command = null;
-		if (valueChanged(aHelper.getOwner(), aHelper.getFeature(), value, aHelper.shouldUnsetValue())) {
-			command = SetCommand.create(getEditingDomain(), aHelper.getOwner(), aHelper.getFeature(), value);
-			((AbstractCommand) command).setLabel(createCommandLabel(SET_PATTERN, aHelper.getFeature()));
-			setStatus(VALUE_CHANGE);
-		} else {
-			setStatus(NO_VALUE_CHANGE);
-		}
-		return command;
-	}
-
-	protected Object createValueFromHelper(ModifierHelper aHelper) {
-		EObject newObject = createObjectFromHelper(aHelper);
-		setNewObjectAttributes(newObject, aHelper);
-		return newObject;
-	}
-
-	protected boolean enumValueChanged(EObject anObject, EStructuralFeature aFeature, Object aValue) {
-		if (!anObject.eIsSet(aFeature))
-			return true;
-		Enumerator existingEnumerator = (Enumerator) anObject.eGet(aFeature);
-		Enumerator newEnumerator = getEnumerator(aFeature, aValue);
-		return existingEnumerator != newEnumerator;
-	}
-
-	private Enumerator getEnumerator(EStructuralFeature aFeature, Object aValue) {
-		if (aValue instanceof Enumerator)
-			return (Enumerator) aValue;
-		EEnum anEnum = (EEnum) aFeature.getEType();
-		EEnumLiteral literal = null;
-		if (aValue instanceof String)
-			literal = anEnum.getEEnumLiteral((String) aValue);
-		else if (aValue instanceof Integer)
-			literal = anEnum.getEEnumLiteral(((Integer) aValue).intValue());
-		if (literal != null)
-			return literal.getInstance();
-		return null;
-	}
-
-	protected Object getValue(ModifierHelper aHelper) {
-		if (aHelper.mustCreateValue()) {
-			Object value = createValueFromHelper(aHelper);
-			aHelper.setValue(value);
-		}
-		return aHelper.getValue();
-	}
-
-	protected boolean manyValueChanged(EObject anObject, EStructuralFeature aFeature, Object aValue, boolean isUnset) {
-		List list = (List) anObject.eGet(aFeature);
-		if (isUnset)
-			return list.contains(aValue) || (list == aValue && !list.isEmpty());
-		return !list.contains(aValue);
-	}
-
-	/**
-	 * Return a Command that will be executed by a CommandStack. The default is to return null.
-	 * Subclasses should override this method.
-	 */
-	protected Command primCreateCommand(ModifierHelper aHelper) {
-		Command command = doCreateCommand(aHelper);
-		if (aHelper.shouldUnsetValue()) {
-			Object value = aHelper.getValue();
-			if (value instanceof EObject && !((EObject) value).eIsProxy()) {
-				command = new ProxyWrappingCommand(command, (EObject) value);
-			}
-		}
-		return command;
-	}
-
-	protected Command doCreateCommand(ModifierHelper aHelper) {
-		if (!aHelper.isComplete()) {
-			setStatus(ERROR);
-			return null;
-		}
-		Command command = null;
-		if (aHelper.getFeature().isMany())
-			command = createManyCommand(aHelper);
-		else
-			command = createSingleCommand(aHelper);
-
-		if (null != command) {
-			List localHelpers = ModifierHelperRegistry.getInstance().getHelpers(aHelper);
-			if (null != localHelpers) {
-				extendedHelpers.addAll(localHelpers);
-			}
-		}
-		return command;
-
-	}
-
-	/**
-	 * Run using
-	 * 
-	 * @aHelper. This will set a MOF attibute value to the owner of the helper.
-	 */
-	protected void primRun(ModifierHelper aHelper) {
-		if (aHelper.isComplete()) {
-			Object value = getValue(aHelper);
-			if (valueChanged(aHelper.getOwner(), aHelper.getFeature(), value, aHelper.shouldUnsetValue()))
-				setObjectAttribute(aHelper.getOwner(), aHelper.getFeature(), value, aHelper.shouldUnsetValue());
-		}
-	}
-
-	/**
-	 * The default is to do nothing. Subclasses should override this method if they are using
-	 * recordable commands. The implementation of this method should update the MOF model directly.
-	 * Any modification will be recorded.
-	 */
-	public void run() {
-		if (!getHelpers().isEmpty()) {
-			Iterator it = getHelpers().iterator();
-			while (it.hasNext())
-				run((ModifierHelper) it.next());
-		}
-	}
-
-	/**
-	 * Run using
-	 * 
-	 * @aHelper's ownerHelper first before running with
-	 * @aHelper.
-	 */
-	protected void run(ModifierHelper aHelper) {
-		if (aHelper != null) {
-			run(aHelper.getOwnerHelper());
-			primRun(aHelper);
-		}
-	}
-
-	protected void setNewObjectAttributes(EObject anObject, ModifierHelper aHelper) {
-		HashMap attributes = aHelper.getAttributes();
-		Iterator it = attributes.keySet().iterator();
-		EStructuralFeature feature;
-		Object value = null;
-		while (it.hasNext()) {
-			feature = (EStructuralFeature) it.next();
-			value = attributes.get(feature);
-			setObjectAttribute(anObject, feature, value, false);
-		}
-	}
-
-	protected void setObjectAttribute(EObject anObject, EStructuralFeature aFeature, Object aValue, boolean shouldUnsetValue) {
-		if (aFeature.isMany())
-			setObjectManyAttribute(anObject, aFeature, aValue, shouldUnsetValue);
-		else
-			setObjectSingleAttribute(anObject, aFeature, aValue, shouldUnsetValue);
-	}
-
-	protected void setObjectEnumAttribute(EObject anObject, EStructuralFeature aFeature, Object aValue) {
-		Enumerator enumerator = getEnumerator(aFeature, aValue);
-		anObject.eSet(aFeature, enumerator);
-	}
-
-	protected void setObjectManyAttribute(EObject anObject, EStructuralFeature aFeature, Object aValue, boolean shouldUnsetValue) {
-		List list = (List) anObject.eGet(aFeature);
-		if (shouldUnsetValue)
-			list.remove(aValue);
-		else
-			list.add(aValue);
-	}
-
-	protected void setObjectSingleAttribute(EObject anObject, EStructuralFeature aFeature, Object aValue, boolean shouldUnsetValue) {
-		if (shouldUnsetValue)
-			anObject.eUnset(aFeature);
-		else if (aFeature.getEType() instanceof EEnum)
-			setObjectEnumAttribute(anObject, aFeature, aValue);
-		else
-			anObject.eSet(aFeature, aValue);
-	}
-
-	protected boolean singleValueChanged(EObject anObject, EStructuralFeature aFeature, Object aValue, boolean isUnset) {
-		if (aFeature.getEType() instanceof EEnum)
-			return enumValueChanged(anObject, aFeature, aValue);
-
-		Object existingValue = anObject.eGet(aFeature);
-		if (existingValue == null && aValue == null)
-			return false;
-		if (existingValue != null && !existingValue.equals(aValue))
-			return true;
-		if (aValue != null && !aValue.equals(existingValue))
-			return true;
-		return false;
-	}
-
-	protected boolean valueChanged(EObject anObject, EStructuralFeature aFeature, Object aValue, boolean isUnset) {
-		if (aFeature.isMany())
-			return manyValueChanged(anObject, aFeature, aValue, isUnset);
-		return singleValueChanged(anObject, aFeature, aValue, isUnset);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelper.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelper.java
deleted file mode 100644
index ad949b3..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelper.java
+++ /dev/null
@@ -1,363 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-
-import java.util.HashMap;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.impl.EClassImpl;
-import org.eclipse.emf.edit.command.SetCommand;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.internal.emf.utilities.FeatureValueConversionException;
-import org.eclipse.wst.common.internal.emf.utilities.FeatureValueConverter;
-
-/**
- * Insert the type's description here. Creation date: (4/6/2001 3:23:36 PM)
- * 
- * @author: Administrator
- */
-public class ModifierHelper {
-
-	private EObject owner;
-	private ModifierHelper ownerHelper;
-	private OwnerProvider ownerProvider;
-	private Object value;
-	private EStructuralFeature feature;
-	private HashMap attributes;
-	private boolean shouldUnsetValue = false;
-	private String valueXSITypeName;
-	private FeatureValueConverter featureValueConverter;
-
-	public static final int ACTION_SET = 0;
-	public static final int ACTION_UNSET = 1;
-	public static final int ACTION_BOTH = 2;
-
-	/**
-	 * J2EEModifierHelper constructor comment.
-	 */
-	public ModifierHelper() {
-		super();
-	}
-
-	/**
-	 * J2EEModifierHelper constructor comment.
-	 */
-	public ModifierHelper(EObject anOwner, EStructuralFeature aFeature, Object aValue) {
-		setOwner(anOwner);
-		setFeature(aFeature);
-		setValue(aValue);
-	}
-
-	/**
-	 * J2EEModifierHelper constructor comment.
-	 */
-	public ModifierHelper(ModifierHelper anOwnerHelper, EStructuralFeature aFeature, Object aValue) {
-		setOwnerHelper(anOwnerHelper);
-		setFeature(aFeature);
-		setValue(aValue);
-	}
-
-	/**
-	 * J2EEModifierHelper constructor comment.
-	 */
-	public ModifierHelper(OwnerProvider anOwnerProvider, EStructuralFeature aFeature, Object aValue) {
-		setOwnerProvider(anOwnerProvider);
-		setFeature(aFeature);
-		setValue(aValue);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @return java.util.HashMap
-	 */
-	public void addAttribute(EStructuralFeature aFeature, Object aValue) {
-		if (aFeature != null && aValue != null)
-			getAttributes().put(aFeature, aValue);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @param newValue
-	 *            java.lang.Object
-	 */
-	protected Object convertValue(java.lang.Object newValue) {
-		return getFeatureValueConverter().convertValue(newValue, getFeature());
-	}
-
-	//Calling this will cause the value to be removed or unset from the owner.
-	public void doUnsetValue() {
-		shouldUnsetValue = true;
-		if (value != SetCommand.UNSET_VALUE && feature != null && !feature.isMany())
-			primSetValue(SetCommand.UNSET_VALUE);
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @return java.util.HashMap
-	 */
-	public java.util.HashMap getAttributes() {
-		if (attributes == null)
-			attributes = new HashMap();
-		return attributes;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @return org.eclipse.emf.ecore.EFactory
-	 */
-	protected org.eclipse.emf.ecore.EFactory getFactory() {
-		return getPackage().getEFactoryInstance();
-	}
-
-	protected EPackage getPackage() {
-		return ((EClassImpl) getFeatureType()).getEPackage();
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @return org.eclipse.emf.ecore.EStructuralFeature
-	 */
-	public org.eclipse.emf.ecore.EStructuralFeature getFeature() {
-		return feature;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @return EObject
-	 */
-	protected EObject getFeatureType() {
-		return getFeature().getEType();
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (5/10/2001 4:51:58 PM)
-	 * 
-	 * @return com.ibm.etools.j2ee.commands.FeatureValueConverter
-	 */
-	public FeatureValueConverter getFeatureValueConverter() {
-		if (featureValueConverter == null)
-			featureValueConverter = FeatureValueConverter.DEFAULT;
-		return featureValueConverter;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @return String
-	 */
-	protected String getNewValueTypeName() {
-		if (getValueXSITypeName() != null && getValueXSITypeName().length() > 0)
-			return getValueXSITypeName();
-		return (((EClass) getFeatureType()).getName());
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @return org.eclipse.emf.ecore.EObject
-	 */
-	public org.eclipse.emf.ecore.EObject getOwner() {
-		if (owner == null) {
-			OwnerProvider provider = getOwnerProvider();
-			EObject providerOwner = null;
-			if (provider != null)
-				providerOwner = provider.getOwner();
-			if (providerOwner == null && getOwnerHelper() != null)
-				providerOwner = (EObject) getOwnerHelper().getValue();
-			return providerOwner;
-		}
-		return owner;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/8/2001 2:47:54 PM)
-	 * 
-	 * @return com.ibm.etools.j2ee.commands.J2EEModifierHelper
-	 */
-	public ModifierHelper getOwnerHelper() {
-		if (ownerHelper == null) {
-			if (getOwnerProvider() != null && getOwnerProvider().getOwner() == null)
-				return getOwnerProvider().getOwnerHelper();
-		}
-		return ownerHelper;
-	}
-
-	public ModifierHelper primGetOwnerHelper() {
-		return ownerHelper;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (9/18/2001 1:31:14 PM)
-	 * 
-	 * @return com.ibm.etools.j2ee.ui.J2EEOwnerProvider
-	 */
-	public OwnerProvider getOwnerProvider() {
-		return ownerProvider;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @return java.lang.Object
-	 */
-	public java.lang.Object getValue() {
-		return value;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/10/2001 3:39:31 PM)
-	 * 
-	 * @return java.lang.String
-	 */
-	public java.lang.String getValueXSITypeName() {
-		return valueXSITypeName;
-	}
-
-	/**
-	 * This will automatically get called from the J2EEModelModifier before executing so it is not
-	 * necessary to call it directly.
-	 */
-	public boolean isComplete() {
-		boolean result = true;
-		if (getOwnerHelper() != null)
-			result = getOwnerHelper().isComplete();
-		if (!mustCreateValue())
-			result = getValue() != null || shouldUnsetValue();
-		else
-			result = getFeatureType() != null;
-		return result && getFeature() != null && (getOwner() != null || getOwnerHelper() != null);
-	}
-
-	public boolean mustCreateValue() {
-		return getValue() == null && getFeature() != null && !shouldUnsetValue();
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @param newValue
-	 *            java.lang.Object
-	 */
-	public void primSetValue(java.lang.Object newValue) {
-		value = newValue;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @param newFeature
-	 *            org.eclipse.emf.ecore.EStructuralFeature
-	 */
-	public void setFeature(org.eclipse.emf.ecore.EStructuralFeature newFeature) {
-		feature = newFeature;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (5/10/2001 4:51:58 PM)
-	 * 
-	 * @param newFeatureValueConverter
-	 *            com.ibm.etools.j2ee.commands.FeatureValueConverter
-	 */
-	public void setFeatureValueConverter(FeatureValueConverter newFeatureValueConverter) {
-		featureValueConverter = newFeatureValueConverter;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @param newOwner
-	 *            org.eclipse.emf.ecore.EObject
-	 */
-	public void setOwner(org.eclipse.emf.ecore.EObject newOwner) {
-		owner = newOwner;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/8/2001 2:47:54 PM)
-	 * 
-	 * @param newOwnerHelper
-	 *            com.ibm.etools.j2ee.commands.J2EEModifierHelper
-	 */
-	public void setOwnerHelper(ModifierHelper newOwnerHelper) {
-		ownerHelper = newOwnerHelper;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (9/18/2001 1:31:14 PM)
-	 * 
-	 * @param newOwnerProvider
-	 *            com.ibm.etools.j2ee.ui.J2EEOwnerProvider
-	 */
-	public void setOwnerProvider(OwnerProvider newOwnerProvider) {
-		ownerProvider = newOwnerProvider;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @param newValue
-	 *            java.lang.Object
-	 */
-	public void setValue(java.lang.Object newValue) {
-		try {
-			primSetValue(convertValue(newValue));
-		} catch (FeatureValueConversionException featureException) {
-			Logger.getLogger().logError(featureException);
-			primSetValue(null);
-		}
-	}
-
-	/**
-	 * Treat an empty String as a null value. Creation date: (4/6/2001 3:28:16 PM)
-	 * 
-	 * @param newValue
-	 *            java.lang.Object
-	 */
-	public void setValueFromWidget(String newValue) {
-		Object data = newValue;
-		if (newValue != null && newValue.length() == 0)
-			data = null;
-		setValue(data);
-		if (data == null)
-			doUnsetValue();
-		else
-			shouldUnsetValue = false;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/10/2001 3:39:31 PM)
-	 * 
-	 * @param newValueXSITypeName
-	 *            java.lang.String
-	 */
-	public void setValueXSITypeName(java.lang.String newValueXSITypeName) {
-		valueXSITypeName = newValueXSITypeName;
-	}
-
-	public boolean shouldUnsetValue() {
-		return shouldUnsetValue;
-	}
-
-	public EObject createNewObjectFromFeature() {
-		EClass metaClass = (EClass) getPackage().getEClassifier(getNewValueTypeName());
-		return getFactory().create(metaClass);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelperChainer.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelperChainer.java
deleted file mode 100644
index d36148d..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelperChainer.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-
-
-/**
- * @version 1.0
- * @author
- */
-public class ModifierHelperChainer {
-
-	ModifierHelper helper;
-
-	public ModifierHelperChainer(EStructuralFeature feature, EObject owner, Object value) {
-		helper = new ModifierHelper();
-
-		if (owner != null)
-			helper.setOwner(owner);
-
-		helper.setFeature(feature);
-
-		if (value != null)
-			helper.setValue(value);
-
-	}
-
-	public ModifierHelper getHelper() {
-		return helper;
-	}
-
-	public void setOwnerBasedOnType(Object owner) {
-		if (owner instanceof EObject)
-			helper.setOwner((EObject) owner);
-		else if (owner instanceof ModifierHelper)
-			helper.setOwnerHelper((ModifierHelper) owner);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelperFactory.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelperFactory.java
deleted file mode 100644
index bc41a62..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelperFactory.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 27, 2004
- *
- * To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-/**
- * @author jsholl
- * 
- * To change the template for this generated type comment go to Window - Preferences - Java - Code
- * Generation - Code and Comments
- */
-public interface ModifierHelperFactory {
-
-
-	/**
-	 * @param baseHelper
-	 * @param actionFlag
-	 * @return
-	 */
-	ModifierHelper getHelper(ModifierHelper baseHelper, int actionFlag);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelperRegistry.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelperRegistry.java
deleted file mode 100644
index b1da8ad..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ModifierHelperRegistry.java
+++ /dev/null
@@ -1,273 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 27, 2004
- * 
- * To change the template for this generated file go to Window - Preferences -
- * Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import java.util.ArrayList;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EClassifier;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-/**
- * @author jsholl
- *  
- */
-public class ModifierHelperRegistry {
-	private static final String PLUGIN_ID = "org.eclipse.wst.common.internal.emfworkbench.integration"; //$NON-NLS-1$
-	private static final String EXTENSION_POINT = "ModifierHelperFactory"; //$NON-NLS-1$
-	private static final String FACTORY_CLASS = "class"; //$NON-NLS-1$
-	private static final String PACKAGE = "package"; //$NON-NLS-1$
-	private static final String PACKAGE_URI = "uri"; //$NON-NLS-1$
-	private static final String NAME = "name"; //$NON-NLS-1$
-	private static final String TYPE = "type"; //$NON-NLS-1$
-	private static final String FEATURE = "feature"; //$NON-NLS-1$
-	private static final String FEATURE_ACTION = "action"; //$NON-NLS-1$
-	private static final String FEATURE_ACTION_SET = "set"; //$NON-NLS-1$
-	private static final String FEATURE_ACTION_UNSET = "unset"; //$NON-NLS-1$
-	private static final String FEATURE_ACTION_BOTH = "both"; //default //$NON-NLS-1$
-	private static ModifierHelperRegistry INSTANCE = null;
-	// Hashtable mapping features to a list of FactoryHolders
-	private Hashtable featureHash = new Hashtable();
-	private Hashtable factoryHash = new Hashtable();
-
-	private class FactoryHolder {
-		private int actionType;
-		private IConfigurationElement element;
-
-		public FactoryHolder(IConfigurationElement element, int actionType) {
-			this.element = element;
-			this.actionType = actionType;
-		}
-
-		public ModifierHelperFactory getFactory(int actionTypeArg) {
-			if (this.actionType == actionTypeArg || this.actionType == ModifierHelper.ACTION_BOTH) {
-				String hashKey = getFactoryHash(element);
-				ModifierHelperFactory factory = (ModifierHelperFactory) factoryHash.get(hashKey);
-				if (null == factory) {
-					try {
-						factory = (ModifierHelperFactory) element.createExecutableExtension(FACTORY_CLASS);
-						factoryHash.put(hashKey, factory);
-					} catch (CoreException e) {
-						Logger.getLogger().logError(e);
-					}
-				}
-				return factory;
-			}
-			return null;
-		}
-
-		public boolean equals(Object obj) {
-			if (super.equals(obj)) {
-				return true;
-			}
-			FactoryHolder holder = (FactoryHolder) obj;
-			return getFactoryHash(element).equals(getFactoryHash(holder.element));
-		}
-	}
-
-	private ModifierHelperRegistry() {
-		readExtensions();
-	}
-
-	private void readExtensions() {
-		IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(PLUGIN_ID, EXTENSION_POINT);
-		if (point == null)
-			return;
-		IConfigurationElement[] elements = point.getConfigurationElements();
-		for (int i = 0; i < elements.length; i++) {
-			readFactory(elements[i]);
-		}
-	}
-
-	private void readFactory(IConfigurationElement element) {
-		String factoryClassName = element.getAttribute(FACTORY_CLASS);
-		if (null == factoryClassName) {
-			logError(element, "No " + FACTORY_CLASS + " defined."); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		IConfigurationElement[] packages = element.getChildren(PACKAGE);
-		if (packages.length == 0) {
-			logError(element, "No " + PACKAGE + " defined."); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		for (int j = 0; j < packages.length; j++) {
-			readPackage(element, packages[j]);
-		}
-	}
-
-	private void readPackage(IConfigurationElement factoryElement, IConfigurationElement element) {
-		String packageURI = element.getAttribute(PACKAGE_URI);
-		if (null == packageURI) {
-			logError(element, "No " + PACKAGE_URI + " defined."); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-		EPackage ePackage = EPackage.Registry.INSTANCE.getEPackage(packageURI);
-		if (null == ePackage) {
-			logError(element, PACKAGE + " " + packageURI + " can not be found."); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-		IConfigurationElement[] types = element.getChildren(TYPE);
-		if (types.length == 0) {
-			logError(element, "No " + TYPE + " defined."); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		for (int i = 0; i < types.length; i++) {
-			readType(factoryElement, ePackage, types[i]);
-		}
-	}
-
-	private void readType(IConfigurationElement factoryElement, EPackage ePackage, IConfigurationElement element) {
-		String typeName = element.getAttribute(NAME);
-		if (null == typeName) {
-			logError(element, "No " + NAME + " defined."); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-		EClassifier eClassifier = ePackage.getEClassifier(typeName);
-		if (null == eClassifier) {
-			logError(element, TYPE + " " + typeName + " can not be found in " + PACKAGE + " " + ePackage.getName()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-			return;
-		}
-		EClass eClass = (EClass) eClassifier;
-		IConfigurationElement[] features = element.getChildren(FEATURE);
-		if (features.length == 0) {
-			logError(element, "No " + FEATURE + " defined."); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-		for (int i = 0; i < features.length; i++) {
-			readFeature(factoryElement, eClass, features[i]);
-		}
-	}
-
-	private void readFeature(IConfigurationElement factoryElement, EClass eClass, IConfigurationElement element) {
-		String featureName = element.getAttribute(NAME);
-		if (null == featureName) {
-			logError(element, "No " + NAME + " defined."); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-		String action = element.getAttribute(FEATURE_ACTION);
-		if (null == action) {
-			action = FEATURE_ACTION_BOTH;
-		}
-		int actionType = -1;
-		if (action.equalsIgnoreCase(FEATURE_ACTION_BOTH)) {
-			actionType = ModifierHelper.ACTION_BOTH;
-		} else if (action.equalsIgnoreCase(FEATURE_ACTION_SET)) {
-			actionType = ModifierHelper.ACTION_SET;
-		} else if (action.equalsIgnoreCase(FEATURE_ACTION_UNSET)) {
-			actionType = ModifierHelper.ACTION_UNSET;
-		}
-		if (actionType == -1) {
-			logError(element, "Invalid " + FEATURE_ACTION + "=" + action + " defined.  Valid values are: " + FEATURE_ACTION_BOTH + ", " + FEATURE_ACTION_SET + ", or " + FEATURE_ACTION_UNSET); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
-			return;
-		}
-		EStructuralFeature feature = null;
-		EList allFeatures = eClass.getEAllStructuralFeatures();
-		EStructuralFeature tempFeature = null;
-		Iterator iterator = allFeatures.iterator();
-		while (null == feature && iterator.hasNext()) {
-			tempFeature = (EStructuralFeature) iterator.next();
-			if (tempFeature.getName().equals(featureName)) {
-				feature = tempFeature;
-			}
-		}
-		if (feature == null) {
-			logError(element, FEATURE + " " + featureName + " can not be found in " + TYPE + " " + eClass.getName()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-			return;
-		}
-		List factoryHolderList = (List) featureHash.get(feature);
-		if (null == factoryHolderList) {
-			factoryHolderList = new ArrayList();
-			featureHash.put(feature, factoryHolderList);
-		}
-		FactoryHolder factoryHolder = new FactoryHolder(factoryElement, actionType);
-		if (factoryHolderList.contains(factoryHolder)) {
-			logError(element, "Duplicate" + FEATURE + ":" + featureName + " defined for " + FACTORY_CLASS + ":" + factoryElement.getAttribute(FACTORY_CLASS)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-			return;
-		}
-		factoryHolderList.add(factoryHolder);
-	}
-
-	private String getFactoryHash(IConfigurationElement factoryElement) {
-		return factoryElement.getDeclaringExtension().getNamespace() + factoryElement.getAttribute(FACTORY_CLASS);
-	}
-
-	public static void logError(IConfigurationElement element, String text) {
-		IExtension extension = element.getDeclaringExtension();
-		StringBuffer buf = new StringBuffer();
-		buf.append("Plugin " + extension.getNamespace() + ", extension " + extension.getExtensionPointUniqueIdentifier()); //$NON-NLS-1$ //$NON-NLS-2$
-		buf.append("\n" + text); //$NON-NLS-1$
-		Logger.getLogger().logError(buf.toString());
-	}
-
-	public static ModifierHelperRegistry getInstance() {
-		if (null == INSTANCE) {
-			INSTANCE = new ModifierHelperRegistry();
-		}
-		return INSTANCE;
-	}
-
-	/**
-	 * returns a list of ModifierHelpers
-	 * 
-	 * @param baseHelper
-	 * @param actionFlag
-	 * @return
-	 */
-	public List getHelpers(ModifierHelper baseHelper) {
-		int actionFlag = baseHelper.shouldUnsetValue() ? ModifierHelper.ACTION_UNSET : ModifierHelper.ACTION_SET;
-		EStructuralFeature feature = baseHelper.getFeature();
-		List factoryList = getFactories(feature, actionFlag);
-		if (null == factoryList) {
-			return null;
-		}
-		ArrayList helpers = new ArrayList();
-		Iterator it = factoryList.iterator();
-		ModifierHelperFactory factory = null;
-		while (it.hasNext()) {
-			factory = (ModifierHelperFactory) it.next();
-			Object helper = factory.getHelper(baseHelper, actionFlag);
-			if (null != helper) {
-				helpers.add(helper);
-			}
-		}
-		return helpers;
-	}
-
-	private List getFactories(EStructuralFeature feature, int actionFlag) {
-		List factoryHolderList = (List) featureHash.get(feature);
-		if (null == factoryHolderList) {
-			return null;
-		}
-		List factoryList = new ArrayList();
-		ModifierHelperFactory factory = null;
-		for (int i = 0; i < factoryHolderList.size(); i++) {
-			factory = ((FactoryHolder) factoryHolderList.get(i)).getFactory(actionFlag);
-			if (null != factory) {
-				factoryList.add(factory);
-			}
-		}
-		return factoryList;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/OwnerProvider.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/OwnerProvider.java
deleted file mode 100644
index e082439..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/OwnerProvider.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import org.eclipse.emf.ecore.EObject;
-
-
-/**
- * Insert the type's description here. Creation date: (6/20/2001 10:24:46 PM)
- * 
- * @author: Administrator
- */
-public interface OwnerProvider {
-	/**
-	 * Return the EObject that will serve as the owner of a given J2EEModifierHelper.
-	 */
-	EObject getOwner();
-
-	/**
-	 * Return a J2EEModifierHelper for the owner if the owner does not yet exist.
-	 */
-	ModifierHelper getOwnerHelper();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ProjectResourceSetEditImpl.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ProjectResourceSetEditImpl.java
deleted file mode 100644
index 07a326e..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ProjectResourceSetEditImpl.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 4, 2004
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.ContentHandler;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.jem.internal.util.emf.workbench.ProjectResourceSetImpl;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedResource;
-import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class ProjectResourceSetEditImpl extends ProjectResourceSetImpl {
-
-	/**
-	 * @param aProject
-	 */
-	public ProjectResourceSetEditImpl(IProject aProject) {
-		super(aProject);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jem.internal.util.emf.workbench.ProjectResourceSetImpl#createResource(org.eclipse.emf.common.util.URI)
-	 */
-	public Resource createResource(URI uri, String contentType) {
-		Resource result = super.createResource(uri, contentType);
-		if (result != null && WorkbenchResourceHelper.isReferencedResource(result))
-			WorkbenchResourceHelper.cacheSynchronizationStamp((ReferencedResource) result);
-		return result;
-	}
-
-	public Resource createResource(URI uri) {
-		return createResource(uri, ContentHandler.UNSPECIFIED_CONTENT_TYPE);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ResourceSetWorkbenchEditSynchronizer.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ResourceSetWorkbenchEditSynchronizer.java
deleted file mode 100644
index 3718afe..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/integration/ResourceSetWorkbenchEditSynchronizer.java
+++ /dev/null
@@ -1,608 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 4, 2004
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.internal.emfworkbench.integration;
-
-import java.lang.ref.WeakReference;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.jobs.ILock;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.common.util.WrappedException;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.jem.internal.util.emf.workbench.EMFWorkbenchContextFactory;
-import org.eclipse.jem.util.emf.workbench.ProjectResourceSet;
-import org.eclipse.jem.util.emf.workbench.ResourceSetWorkbenchSynchronizer;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedResource;
-import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;
-
-/**
- * @author schacher
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class ResourceSetWorkbenchEditSynchronizer extends ResourceSetWorkbenchSynchronizer implements IResourceDeltaVisitor {
-	private static final String CLASS_EXTENSION = "class"; //$NON-NLS-1$
-	private static final String JAVA_EXTENSION = "java"; //$NON-NLS-1$
-	private static final String JAVA_ARCHIVE = "jar"; //$NON-NLS-1$
-	private Set recentlySavedFiles = new HashSet();
-	private Map ignoredFilesCache = new HashMap();
-	private class SavedFileKey {
-		private WeakReference res;
-		private IFile savedFile;
-		public SavedFileKey(Resource res, IFile savedFile) {
-			super();
-			this.res = new WeakReference(res);
-			this.savedFile = savedFile;
-		}
-		public Resource getRes() {
-			return this.res == null ? null : (Resource)res.get();
-		}
-		public void setRes(Resource res) {
-			this.res = new WeakReference(res);
-		}
-		public IFile getSavedFile() {
-			return savedFile;
-		}
-		public void setSavedFile(IFile savedFile) {
-			this.savedFile = savedFile;
-		}
-		public int hashCode() {
-			final int prime = 31;
-			int result = 1;
-			result = prime * result + getOuterType().hashCode();
-			result = prime * result + ((getRes() == null) ? 0 : getRes().hashCode());
-			result = prime * result + ((savedFile == null) ? 0 : savedFile.hashCode());
-			return result;
-		}
-		public boolean equals(Object obj) {
-			if (this == obj)
-				return true;
-			if (obj == null)
-				return false;
-			if (getClass() != obj.getClass())
-				return false;
-			SavedFileKey other = (SavedFileKey) obj;
-			if (!getOuterType().equals(other.getOuterType()))
-				return false;
-			if (getRes() == null) {
-				if (other.getRes() != null)
-					return false;
-			} else if (!getRes().equals(other.getRes()))
-				return false;
-			if (savedFile == null) {
-				if (other.savedFile != null)
-					return false;
-			} else if (!savedFile.equals(other.savedFile))
-				return false;
-			return true;
-		}
-		private ResourceSetWorkbenchEditSynchronizer getOuterType() {
-			return ResourceSetWorkbenchEditSynchronizer.this;
-		}
-	}
-
-	/** The emf resources to be removed from the resource set as a result of a delta */
-	protected List deferredRemoveResources = new ArrayList();
-	protected List deferredUnloadResources = new ArrayList();
-	protected List deferredLoadResources = new ArrayList();
-
-	protected List autoloadResourcesURIs = new ArrayList();
-	protected List autoloadResourcesExts = new ArrayList();
-
-
-	/**
-	 * @param aResourceSet
-	 * @param aProject
-	 */
-	public ResourceSetWorkbenchEditSynchronizer(ResourceSet aResourceSet, IProject aProject) {
-		super(aResourceSet, aProject);
-	}
-		
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.ResourceSetWorkbenchSynchronizer#resourceChanged(org.eclipse.core.resources.IResourceChangeEvent)
-	 */
-	public void resourceChanged(IResourceChangeEvent event) {
-		super.resourceChanged(event);
-		try {
-			acceptDelta(event);
-			notifyExtendersIfNecessary();
-			processDeferredResources();
-		} catch (Exception e) {
-			e.printStackTrace();
-		} finally {
-			deferredRemoveResources.clear();
-			deferredUnloadResources.clear();
-			deferredLoadResources.clear();
-		}
-	}
-
-	protected void processDeferredRemovedResources() {
-		Resource resource = null;
-		for (int i = 0; i < deferredRemoveResources.size(); i++) {
-			resource = (Resource) deferredRemoveResources.get(i);
-			resourceSet.getResources().remove(resource);
-			resource.unload();
-		}
-	}
-
-	protected void processDeferredUnloadedResources() {
-		Resource resource = null;
-		for (int i = 0; i < deferredUnloadResources.size(); i++) {
-			resource = (Resource) deferredUnloadResources.get(i);
-			resource.unload();
-		}
-	}
-
-	private void processDeferredLoadResources() {
-		URI uri = null;
-		for (int i = 0; i < deferredLoadResources.size(); i++) {
-			uri = (URI) deferredLoadResources.get(i);
-			try {
-				resourceSet.getResource(uri, true);
-			} catch (WrappedException ex) {
-				Logger.getLogger().logError(ex);
-			}
-
-		}
-	}
-
-	private ILock lock;
-	private static final long delay = 30;
-	
-    private ILock getLock() {
-        if (lock == null)
-            lock = Platform.getJobManager().newLock();
-        return lock;
-    }
-    
-    private void releaseLock() {
-        getLock().release();
-    }
-    private boolean aquireLock() throws InterruptedException{
-    	return getLock().acquire(delay);
-    }
-    
-	protected void acceptDelta(final IResourceChangeEvent event) {
-
-		boolean hasLocked = false;
-		try {
-			hasLocked = aquireLock();
-		} catch (InterruptedException e) {
-			Logger.getLogger().write(e);
-		}		
-		
-		try{
-			final IResourceDelta delta = event.getDelta();
-	
-			if (ResourcesPlugin.getWorkspace().isTreeLocked()) {
-				primAcceptDelta(delta, event);
-			}
-			else {
-				IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-					public void run(IProgressMonitor monitor) throws CoreException {
-						primAcceptDelta(delta, event);
-					}
-				};
-				try {
-					ResourcesPlugin.getWorkspace().run(runnable, project, IWorkspace.AVOID_UPDATE, null);
-				} catch (CoreException e) {
-					// TODO Auto-generated catch block
-					e.printStackTrace();
-				}
-			}
-		}finally{
-			if( hasLocked )
-				releaseLock();
-		}
-	}
-
-	private void primAcceptDelta(IResourceDelta delta, IResourceChangeEvent event) {
-		if (delta != null) {
-			try {
-				currentProjectDelta = null;
-				delta.accept(ResourceSetWorkbenchEditSynchronizer.this);
-			} catch (Exception e) {
-				Logger.getLogger().logError(e);
-			}
-		}
-	}
-
-	/**
-	 * The project is going away so we need to cleanup ourself and the ResourceSet. TODO Need to
-	 * push up this code to ResourceSetWorkbenchSynchronizer in next release.
-	 */
-	protected void release() {
-		if (JEMUtilPlugin.isActivated()) {
-			try {
-				if (resourceSet instanceof ProjectResourceSet)
-					((ProjectResourceSet) resourceSet).release();
-			} finally {
-				EMFWorkbenchContextFactory.INSTANCE.removeCachedProject(getProject());
-				dispose();
-			}
-		}
-	}
-
-	private void processDeferredResources() {
-		processDeferredRemovedResources();
-		processDeferredUnloadedResources();
-		processDeferredLoadResources();
-	}
-
-	public boolean visit(IResourceDelta delta) {
-		IResource resource = delta.getResource();
-		// only respond to project changes
-		if (resource != null) {
-			if (resource.getType() == IResource.PROJECT) {
-				IProject p = (IProject) resource;
-				if (isInterrestedInProject(p)) {
-					currentProjectDelta = delta;
-					return true;
-				}
-				return false;
-			}
-			if (resource.getType() == IResource.FILE && isInterrestedInFile((IFile) resource)) {
-				switch (delta.getKind()) {
-					case IResourceDelta.REMOVED :
-						removedResource((IFile) resource);
-						break;
-					case IResourceDelta.ADDED :
-						addedResource((IFile) resource);
-						break;
-					case IResourceDelta.CHANGED :
-						if ((delta.getFlags() & IResourceDelta.CONTENT) != 0)
-							changedResource((IFile) resource);
-						break;
-					default :
-						if ((delta.getFlags() & IResourceDelta.MOVED_FROM) != 0 || (delta.getFlags() & IResourceDelta.MOVED_TO) != 0)
-							movedResource((IFile) resource);
-						break;
-				}
-				return false;
-			}
-		}
-		return true;
-	}
-
-	/**
-	 * Queue up the <code>Resource</code> that corresponds to <code>aFile</code>, for removal
-	 * from the cache of resources.
-	 * 
-	 * @post Return true if a <code>Resource</code> was queued up to be removed.
-	 */
-	protected boolean removedResource(IFile aFile) {
-		return processResource(aFile, true);
-	}
-
-	/**
-	 * Queue up the <code>Resource</code> that corresponds to <code>aFile</code>, for reload.
-	 * 
-	 * @post Return true if a <code>Resource</code> was queued up to be reloaded.
-	 */
-	protected boolean addedResource(IFile aFile) {
-		boolean didProcess = false;
-		List resources = getResources(aFile);
-		for (Iterator iterator = resources.iterator(); iterator.hasNext();) {
-			Resource resource = (Resource) iterator.next();
-
-			if (resource != null) {
-				if (recentlySavedFilesContains(resource)) {
-
-					/*
-					 * The IFile was just added to the workspace but we have a
-					 * changed resource in memory. Need to decide if it should
-					 * be unloaded.
-					 */
-					if (resource.isModified()) {
-						if (WorkbenchResourceHelper.isReferencedResource(resource)) {
-							ReferencedResource refRes = (ReferencedResource) resource;
-							if (refRes.shouldForceRefresh()) {
-								deferredUnloadResources.add(resource);
-								didProcess = true;
-							}
-						}
-					}
-				} else {
-					/* Unload if found and is not modified but inconsistent. */
-					if (resource.isLoaded()) {
-						if (WorkbenchResourceHelper.isReferencedResource(resource)) {
-							if (!WorkbenchResourceHelper.isConsistent((ReferencedResource) resource)) {
-								deferredUnloadResources.add(resource);
-								didProcess = true;
-							}
-						} else {
-							deferredUnloadResources.add(resource);
-							didProcess = true;
-						}
-					} else {
-						/* Process autoload resources on added file */
-						URI uri = URI.createPlatformResourceURI(aFile.getFullPath().toString());
-						if ((autoloadResourcesURIs.contains(uri)) || (autoloadResourcesExts.contains(aFile.getFileExtension()))) {
-							deferredLoadResources.add(uri);
-							didProcess = true;
-						}
-					}
-				}
-			}
-		}
-		return didProcess;
-	}
-
-	private synchronized boolean recentlySavedFilesContains(Resource resource) {
-		for (Iterator iterator = recentlySavedFiles.iterator(); iterator.hasNext();) {
-			SavedFileKey key = (SavedFileKey) iterator.next();
-			if (key.getRes() != null && (key.getRes().getURI().equals(resource.getURI()) && key.getRes().getClass().equals(resource.getClass())))
-				return true;
-			}
-		return false;
-	}
-
-	protected boolean processResource(IFile aFile, boolean isRemove) {
-		List resources = getResources(aFile);
-        for (Iterator iterator = resources.iterator(); iterator.hasNext();) {
-			Resource resource = (Resource) iterator.next();
-			if ((resource != null)) {
-				if (recentlySavedFilesContains(resource)) {
-					if (resource.isModified()) {
-						if (WorkbenchResourceHelper.isReferencedResource(resource)) {
-							ReferencedResource refRes = (ReferencedResource) resource;
-							if (!refRes.shouldForceRefresh())
-								continue; // Do not do anything
-						} else
-							continue;
-					}
-				}
-				if (isRemove)
-					deferredRemoveResources.add(resource);
-				else if (resource.isLoaded()) {
-					if (WorkbenchResourceHelper.isReferencedResource(resource)) {
-						if (!WorkbenchResourceHelper.isConsistent((ReferencedResource) resource))
-							deferredUnloadResources.add(resource);
-					} else
-						deferredUnloadResources.add(resource);
-				}
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * For now, do the same as if the <code>aFile</code> was removed.
-	 */
-	protected boolean movedResource(IFile aFile) {
-		return removedResource(aFile);
-	}
-
-	/**
-	 * The contents of <code>aFile</code> have changed in the Workbench and we may need to update
-	 * our cached resources.
-	 * 
-	 * We will process this resource to be refreshed and not removed.
-	 * 
-	 * @post Return true if a <code>Resource</code> was actually removed.
-	 */
-
-	protected boolean changedResource(IFile aFile) {
-		//Process resource as a refresh.
-		return processResource(aFile, false);
-	}
-
-	protected Resource getResource(IFile aFile) {
-		
-		return resourceSet.getResource(URI.createPlatformResourceURI(aFile.getFullPath().toString()), false);
-	}
-	
-	protected List getResources(IFile aFile) {
-
-		List resources = new ArrayList();
-		List allResources = resourceSet.getResources();
-		for (Iterator iterator = allResources.iterator(); iterator.hasNext();) {
-			Resource res = (Resource) iterator.next();
-			URI resURI = res.getURI();
-			String resURIString = "";
-			if (resURI.path() != null) {
-				IPath resURIPath;
-				if (WorkbenchResourceHelper.isPlatformResourceURI(resURI))
-					resURIPath = new Path(URI.decode(resURI.path())).removeFirstSegments(2);
-				else
-					resURIPath = new Path(URI.decode(resURI.path())).removeFirstSegments(1);
-				resURIString = resURIPath.toString();
-			}
-			if (!resURIString.equals("") && aFile.getFullPath().toString().indexOf(resURIString) != -1)
-				resources.add(res);
-		}
-		return resources;
-	}
-
-
-	/**
-	 * This method should be called prior to writing to an IFile from a MOF resource.
-	 */
-	public void preSave(IFile aFile) {
-		if (aFile != null) {
-			recentlySavedFilesAdd(aFile,null);
-			ignoredFilesCache.remove(aFile);
-		}
-	}
-	
-	/**
-	 * This method should be called prior to writing to an IFile from a MOF resource.
-	 */
-	public void preSave(IFile aFile, Resource res) {
-		if (aFile != null) {
-			recentlySavedFilesAdd(aFile, res);
-			ignoredFilesCache.remove(aFile);
-		}
-	}
-
-	private synchronized boolean recentlySavedFilesAdd(IFile file, Resource res) {
-		return recentlySavedFiles.add(new SavedFileKey(res, file));
-	}
-
-	/**
-	 * This method should be called after a preSave if the save fails
-	 */
-	public void removeFromRecentlySavedList(IFile aFile) {
-		if (aFile != null) {
-			recentlySavedFilesForceRemove(aFile);
-			ignoredFilesCache.remove(aFile);
-		}
-	}
-
-	private synchronized boolean recentlySavedFilesRemove(IFile file) {
-		
-		boolean removedFromList = false;
-		for (Iterator iterator = recentlySavedFiles.iterator(); iterator.hasNext();) {
-			SavedFileKey key = (SavedFileKey) iterator.next();
-			if (key.savedFile != null && key.savedFile.equals(file)) {
-				List resources = getResources(file);
-				if (key.getRes() == null || resources.contains(key.getRes()) ) {
-					iterator.remove();
-					removedFromList = true;
-				}
-			}
-		}
-		return removedFromList;
-	}
-	private synchronized boolean recentlySavedFilesForceRemove(IFile file) {
-		
-		boolean removedFromList = false;
-		for (Iterator iterator = recentlySavedFiles.iterator(); iterator.hasNext();) {
-			SavedFileKey key = (SavedFileKey) iterator.next();
-			if (key.savedFile != null && key.savedFile.equals(file)) {
-					iterator.remove();
-					removedFromList = true;
-			}
-		}
-		return removedFromList;
-	}
-
-	/**
-	 * This method should be called just after writing to an IFile from a MOF resource.
-	 * 
-	 * @deprecated No longer needs to be called.
-	 */
-	public void postSave(IFile aFile) {
-		//TODO remove this method
-	}
-
-	/**
-	 * Return <code>true</code> if <code>aProject</code> has the projectNatureID.
-	 */
-	protected boolean isInterrestedInProject(IProject aProject) {
-		return aProject.equals(getProject());
-	}
-
-	/**
-	 * Optimized not to be not interrested in files with an extension of .java or .class or if the
-	 * file has just been saved by our own internal mechanism.
-	 */
-	protected boolean isInterrestedInFile(IFile aFile) {
-		String extension = aFile.getFileExtension();
-		if (CLASS_EXTENSION.equals(extension) || JAVA_EXTENSION.equals(extension) || JAVA_ARCHIVE.equals(extension))
-			return false;
-		if (recentlySavedFilesRemove(aFile)) {
-				cacheIgnored(aFile);
-				return false;
-		}
-		return !hasIgnored(aFile);
-	}
-
-	/**
-	 * Return true if we have already ignored this <code>file</code> and that its modification
-	 * stamp is the same as when we processed it.
-	 * 
-	 * @param file
-	 * @return
-	 */
-	private boolean hasIgnored(IFile file) {
-		Long cachedStamp = (Long) ignoredFilesCache.get(file);
-		if (cachedStamp == null)
-			return false;
-		long stamp = WorkbenchResourceHelper.computeModificationStamp(file);
-		return cachedStamp.longValue() == stamp;
-	}
-
-	/**
-	 * Cache the modification stamp of the <code>file</code>.
-	 * 
-	 * @param file
-	 */
-	private void cacheIgnored(IFile file) {
-		long stamp = WorkbenchResourceHelper.computeModificationStamp(file);
-		ignoredFilesCache.put(file, new Long(stamp));
-	}
-
-	public void enableAutoload(URI uri) {
-		URI normalized = resourceSet.getURIConverter().normalize(uri);
-		autoloadResourcesURIs.add(normalized);
-	}
-
-	public void disableAutoload(URI uri) {
-		URI normalized = resourceSet.getURIConverter().normalize(uri);
-		autoloadResourcesURIs.remove(normalized);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.ResourceSetWorkbenchSynchronizer#initialize()
-	 */
-	protected void initialize() {
-		getWorkspace().addResourceChangeListener(this, IResourceChangeEvent.PRE_CLOSE | IResourceChangeEvent.PRE_DELETE | IResourceChangeEvent.POST_CHANGE);
-	}
-	public void enableAutoload(String extension) {
-		autoloadResourcesExts.add(extension);
-		
-	}
-	public void disableAutoload(String extension) {
-		autoloadResourcesExts.remove(extension);
-	}
-
-	public void dispose() {
-		super.dispose();
-		currentProjectDelta = null;
-		extenders = null;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/IValidateEditContext.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/IValidateEditContext.java
deleted file mode 100644
index e965900..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/IValidateEditContext.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on May 18, 2004
- */
-package org.eclipse.wst.common.internal.emfworkbench.validateedit;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-
-
-/**
- * @author jlanuti This is the abstraction layer for validate edit
- */
-public interface IValidateEditContext extends ResourceStateValidatorPresenter {
-
-	public static final String CLASS_KEY = "ValidateEditContext"; //$NON-NLS-1$
-
-	public void setEditModel(EditModel fValidator);
-
-	public IStatus validateState(EditModel fValidator);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateInputProvider.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateInputProvider.java
deleted file mode 100644
index 4b8bc60..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateInputProvider.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.validateedit;
-
-
-import java.util.List;
-
-public interface ResourceStateInputProvider {
-	/**
-	 * Return true if any of the controlled resources or files has been modified.
-	 * 
-	 * @return boolean
-	 */
-	boolean isDirty();
-
-	/**
-	 * Return a <code>List</code> of the MOF Resources that are being managed. Synchronization
-	 * checking will only work if you are using the emf.workbench plugin apis for loading resources.
-	 * This will ensure that you get an instance of a <code>ReferencedResource</code>. This
-	 * resource type is capable of caching its last known synchronization stamp that may be used to
-	 * test if the resource is consitent with the underlying IFile.
-	 * 
-	 * @return List
-	 */
-	List getResources();
-
-	/**
-	 * Return a <code>List</code> of IFiles that are not MOF Resources that are also being
-	 * modified.
-	 * 
-	 * @return List
-	 */
-	List getNonResourceFiles();
-
-	/**
-	 * Return a subset of the List from getNonResourceFiles() that are inconsistent with the
-	 * underlying java.io.File.
-	 * 
-	 * @return List
-	 * @see ResourceStateInputProvider#getNonResourceFiles()
-	 */
-	List getNonResourceInconsistentFiles();
-
-	/**
-	 * It is the responsibility of the provider to cache the synchronization stamp for the List of
-	 * <code>roNonResourceFiles</code>. This stamp will be used to determine the inconsistent
-	 * files. This is only necessary of IFiles that are not MOF resources.
-	 * 
-	 * @param roNonResourceFiles
-	 * @see ResourceStateInputProvider#getNonResourceInconsistentFiles()
-	 */
-	void cacheNonResourceValidateState(List roNonResourceFiles);
-}
-
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateValidator.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateValidator.java
deleted file mode 100644
index ef337c4..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateValidator.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.validateedit;
-
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jem.util.plugin.JEMUtilPlugin;
-
-public interface ResourceStateValidator {
-	static final IStatus OK_STATUS = new Status(IStatus.OK, JEMUtilPlugin.ID, 0, "", null); //$NON-NLS-1$
-
-	/**
-	 * This method should be called whenever a <code>presenter</code> is activated (becomes
-	 * active). This will check the timestamps of the underlying files to see if they are different
-	 * from the last cached modified value. The <code>presenter</code> should be prepared to
-	 * prompt the user if they would like to refresh with the contents on disk if we are dirty.
-	 */
-	void checkActivation(ResourceStateValidatorPresenter presenter) throws CoreException;
-
-	/**
-	 * This method should be called whenever a <code>presenter</code> looses activation. This will
-	 * check the timestamps of the underlying files to see if they are different from the last
-	 * cached modified value. The <code>presenter</code> should be prepared to prompt the user if
-	 * they would like to refresh with the contents on disk if we are dirty.
-	 */
-	void lostActivation(ResourceStateValidatorPresenter presenter) throws CoreException;
-
-	/**
-	 * This method should be called the first time the files are about to be modified after a
-	 * <code>presenter</code> becomes active. The returned IStatus may have an ERROR status which
-	 * should be presented to the user.
-	 */
-	IStatus validateState(ResourceStateValidatorPresenter presenter) throws CoreException;
-
-	/**
-	 * This method should be called prior to the <code>presenter</code> saving the modified
-	 * contents. This will check the consistency of the underlying files to ensure that they are
-	 * synchronized. If true is returned, the save can proceed.
-	 */
-	boolean checkSave(ResourceStateValidatorPresenter presenter) throws CoreException;
-
-	/**
-	 * Return true if there are any read only files.
-	 */
-	boolean checkReadOnly();
-}
-
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateValidatorImpl.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateValidatorImpl.java
deleted file mode 100644
index b00b6f9..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateValidatorImpl.java
+++ /dev/null
@@ -1,446 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.validateedit;
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedResource;
-import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;
-
-public class ResourceStateValidatorImpl implements ResourceStateValidator {
-	protected ResourceStateInputProvider provider;
-	protected Map lastNonRefreshStateMap;
-	protected boolean isCheckingConsistency;
-
-	class RefreshRunnable implements IWorkspaceRunnable {
-		CoreException thrownException;
-		List files;
-		List resources;
-
-		RefreshRunnable(List someFiles, List inconsistentResources) {
-			files = someFiles;
-			resources = inconsistentResources;
-		}
-
-		public CoreException getThrownException() {
-			return thrownException;
-		}
-
-		public void run(IProgressMonitor aMonitor) {
-			try {
-				prepareResourcesForRefresh(resources);
-				primRefreshFiles(files);
-			} catch (CoreException e) {
-				thrownException = e;
-			}
-		}
-	}
-
-	/**
-	 * Constructor for ResourceStateValidator.
-	 */
-	public ResourceStateValidatorImpl(ResourceStateInputProvider aProvider) {
-		provider = aProvider;
-	}
-
-	/**
-	 * This method should be called whenever <code>aListener</code> is activated (becomes active).
-	 * This will check the timestamps of the underlying files to see if they are different from the
-	 * last cached modified value. <code>aListener</code> should be prepared to prompt the user if
-	 * they would like to refresh with the contents on disk if we are dirty.
-	 */
-	public void checkActivation(ResourceStateValidatorPresenter presenter) throws CoreException {
-		checkConsistency(presenter);
-	}
-
-	public void lostActivation(ResourceStateValidatorPresenter presenter) throws CoreException {
-		checkConsistency(presenter);
-	}
-
-	public boolean checkSave(ResourceStateValidatorPresenter presenter) throws CoreException {
-		if (presenter == null)
-			return false;
-		if (!provider.isDirty())
-			return false;
-		List inconsistentResources = getInconsistentResources();
-		List inconsistentFiles = getFiles(inconsistentResources);
-		inconsistentFiles = addOtherInconsistentFiles(inconsistentFiles);
-		if (inconsistentFiles == null || inconsistentFiles.isEmpty())
-			return true;
-		return presenter.promptForInconsistentFileOverwrite(inconsistentFiles);
-	}
-
-	/**
-	 * @see ResourceStateValidator#checkReadOnly()
-	 */
-	public boolean checkReadOnly() {
-		boolean result = checkReadOnlyResources();
-		if (!result)
-			result = checkReadOnlyNonResourceFiles();
-		return result;
-	}
-
-	/**
-	 * Method checkReadOnlyNonResourceFiles.
-	 * 
-	 * @return boolean
-	 */
-	private boolean checkReadOnlyNonResourceFiles() {
-		List files = provider.getNonResourceFiles();
-		if (files == null || files.isEmpty())
-			return false;
-		int size = files.size();
-		IFile file = null;
-		for (int i = 0; i < size; i++) {
-			file = (IFile) files.get(i);
-			if (file.isReadOnly())
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Method checkReadOnlyResources.
-	 * 
-	 * @return boolean
-	 */
-	private boolean checkReadOnlyResources() {
-		List resources = provider.getResources();
-		if (resources == null || resources.isEmpty())
-			return false;
-		int size = resources.size();
-		Resource res = null;
-		IFile file = null;
-		for (int i = 0; i < size; i++) {
-			res = (Resource) resources.get(i);
-			file = WorkbenchResourceHelper.getFile(res);
-			if (file != null && file.isReadOnly())
-				return true;
-		}
-		return false;
-	}
-
-	protected void checkConsistency(ResourceStateValidatorPresenter presenter) throws CoreException {
-		if (isCheckingConsistency || presenter == null)
-			return;
-		isCheckingConsistency = true;
-		try {
-			List inconsistentResources = getInconsistentResources();
-			List inconsistentFiles = getFiles(inconsistentResources);
-			inconsistentFiles = addOtherInconsistentFiles(inconsistentFiles);
-			if (inconsistentFiles == null || inconsistentFiles.isEmpty())
-				return;
-			boolean shouldRefreshFiles = true;
-			//Defect 208654 & 209631 want prompt no matter what.
-			if (anyFileChangedSinceLastRefreshPrompt(inconsistentFiles)) {
-				clearLastNonRefreshStateMap();
-				shouldRefreshFiles = presenter.promptForInconsistentFileRefresh(inconsistentFiles);
-			} else
-				return;
-			if (shouldRefreshFiles)
-				refreshFiles(inconsistentFiles, inconsistentResources);
-			else
-				cacheLastNonRefreshFileStamps(inconsistentFiles);
-		} finally {
-			isCheckingConsistency = false;
-		}
-	}
-
-	/**
-	 * Method cacheLastNonRefreshFileStamps.
-	 * 
-	 * @param inconsistentFiles
-	 */
-	private void cacheLastNonRefreshFileStamps(List inconsistentFiles) {
-		if (inconsistentFiles != null && !inconsistentFiles.isEmpty()) {
-			Map map = getLastNonRefreshStateMap();
-			IFile file = null;
-			long stamp = 0;
-			for (int i = 0; i < inconsistentFiles.size(); i++) {
-				file = (IFile) inconsistentFiles.get(i);
-				stamp = WorkbenchResourceHelper.computeModificationStamp(file);
-				map.put(file, new Long(stamp));
-			}
-		}
-	}
-
-	/**
-	 * Method cacheValidateState.
-	 * 
-	 * @param result
-	 */
-	private void cacheValidateState(IStatus aStatus, List readOnlyResources, List roNonResourceFiles) {
-		if (aStatus.isOK()) {
-			if (readOnlyResources != null && !readOnlyResources.isEmpty()) {
-				ReferencedResource res = null;
-				for (int i = 0; i < readOnlyResources.size(); i++) {
-					res = (ReferencedResource) readOnlyResources.get(i);
-					WorkbenchResourceHelper.setSynhronizationStamp(res, computeModificationStamp(res));
-				}
-			}
-			provider.cacheNonResourceValidateState(roNonResourceFiles);
-		}
-	}
-
-	private void clearLastNonRefreshStateMap() {
-		if (lastNonRefreshStateMap != null)
-			lastNonRefreshStateMap.clear();
-	}
-
-	/**
-	 * Method anyFileChangedSinceLastRefreshPrompt.
-	 * 
-	 * @param inconsistentFiles
-	 * @return boolean
-	 */
-	private boolean anyFileChangedSinceLastRefreshPrompt(List inconsistentFiles) {
-		if (inconsistentFiles == null || inconsistentFiles.isEmpty())
-			return false;
-		if (lastNonRefreshStateMap == null || lastNonRefreshStateMap.isEmpty())
-			return true;
-		int size = inconsistentFiles.size();
-		IFile file = null;
-		Long stamp = null;
-		for (int i = 0; i < size; i++) {
-			file = (IFile) inconsistentFiles.get(i);
-			stamp = (Long) getLastNonRefreshStateMap().get(file);
-			if (stamp == null || (stamp.longValue() != WorkbenchResourceHelper.computeModificationStamp(file)))
-				return true;
-		}
-		return false;
-	}
-
-	protected List addOtherInconsistentFiles(List inconsistentFiles) {
-		if (inconsistentFiles == null || inconsistentFiles.isEmpty())
-			return getNonResourceInconsistentFiles();
-		List nonResFiles = getNonResourceInconsistentFiles();
-		if (nonResFiles != null)
-			inconsistentFiles.addAll(nonResFiles);
-		return inconsistentFiles;
-	}
-
-	/**
-	 * Method getNonResourceInconsistentFiles.
-	 * 
-	 * @return List
-	 */
-	private List getNonResourceInconsistentFiles() {
-		List files = provider.getNonResourceInconsistentFiles();
-		if (files != null && !files.isEmpty())
-			return files;
-		//Determine consistency based on the synchronization of the IFile
-		files = provider.getNonResourceFiles();
-		if (files == null || files.isEmpty())
-			return Collections.EMPTY_LIST;
-		List inconsistent = null;
-		int size = files.size();
-		IFile file = null;
-		for (int i = 0; i < size; i++) {
-			file = (IFile) files.get(i);
-			if (file.isAccessible() && !file.isSynchronized(IResource.DEPTH_ZERO)) {
-				if (inconsistent == null)
-					inconsistent = new ArrayList();
-				inconsistent.add(file);
-			}
-		}
-		if (inconsistent == null)
-			inconsistent = Collections.EMPTY_LIST;
-		return inconsistent;
-	}
-
-	protected List getInconsistentResources() {
-		List mofResources = provider.getResources();
-		List inconsistent = null;
-		int size = mofResources.size();
-		Resource res = null;
-		ReferencedResource refRes = null;
-		for (int i = 0; i < size; i++) {
-			res = (Resource) mofResources.get(i);
-			if (WorkbenchResourceHelper.isReferencedResource(res)) {
-				refRes = (ReferencedResource) res;
-				if (!WorkbenchResourceHelper.isConsistent(refRes) && (refRes.isLoaded() && !refRes.isNew())) {
-					if (inconsistent == null)
-						inconsistent = new ArrayList();
-					inconsistent.add(refRes);
-				}
-			}
-		}
-		if (inconsistent == null)
-			inconsistent = Collections.EMPTY_LIST;
-		return inconsistent;
-	}
-
-	protected List getFiles(List refResources) {
-		List files = new ArrayList(refResources.size());
-		IFile file = null;
-		ReferencedResource refRes = null;
-		for (int i = 0; i < refResources.size(); i++) {
-			refRes = (ReferencedResource) refResources.get(i);
-			file = WorkbenchResourceHelper.getFile(refRes);
-			if (file != null)
-				files.add(file);
-		}
-		return files;
-	}
-
-	/**
-	 * This method should be called at least the first time a ResourceStateValidatorPresenter
-	 * becomes active and is about to edit its contents. The returned IStatus may have an ERROR
-	 * status which should be presented to the user.
-	 */
-	public IStatus validateState(ResourceStateValidatorPresenter presenter) throws CoreException {
-		List roResources, nonResROFiles, roFiles = null;
-		List[] readOnly = selectReadOnlyResources(provider.getResources());
-		roResources = readOnly[0];
-		roFiles = readOnly[1];
-		nonResROFiles = selectReadOnlyFiles(provider.getNonResourceFiles());
-		if (nonResROFiles != null) {
-			if (roFiles == null)
-				roFiles = nonResROFiles;
-			else
-				roFiles.addAll(nonResROFiles);
-		}
-		if (roFiles == null || roFiles.isEmpty())
-			return OK_STATUS;
-		IFile[] files = new IFile[roFiles.size()];
-		roFiles.toArray(files);
-		Object ctx = presenter != null ? presenter.getValidateEditContext() : null;
-		IStatus result = ResourcesPlugin.getWorkspace().validateEdit(files, ctx);
-		cacheValidateState(result, roResources, nonResROFiles);
-		if (!result.isOK())
-			checkConsistency(presenter);
-		return result;
-	}
-
-	/**
-	 * Method selectReadOnlyFiles.
-	 * 
-	 * @param list
-	 * @param roFiles
-	 */
-	private List selectReadOnlyFiles(List files) {
-		if (files == null || files.isEmpty())
-			return files;
-		int size = files.size();
-		List readOnly = null;
-		IFile file = null;
-		for (int i = 0; i < size; i++) {
-			file = (IFile) files.get(i);
-			if (file.isReadOnly()) {
-				if (readOnly == null)
-					readOnly = new ArrayList(size);
-				readOnly.add(file);
-			}
-		}
-		return readOnly;
-	}
-
-	/**
-	 * Method selectReadOnlyResources.
-	 * 
-	 * @param list
-	 * @param roFiles
-	 * @return List
-	 */
-	private List[] selectReadOnlyResources(List resources) {
-		if (resources == null || resources.isEmpty())
-			return new List[]{resources, null};
-		IFile file = null;
-		int size = resources.size();
-		Resource res = null;
-		List readOnly = null;
-		List roFiles = null;
-		for (int i = 0; i < size; i++) {
-			res = (Resource) resources.get(i);
-			file = WorkbenchResourceHelper.getFile(res);
-			if (file != null && file.isReadOnly()) {
-				if (readOnly == null)
-					readOnly = new ArrayList(size);
-				readOnly.add(res);
-				if (roFiles == null)
-					roFiles = new ArrayList(size);
-				roFiles.add(file);
-			}
-		}
-		return new List[]{readOnly, roFiles};
-	}
-
-	protected long computeModificationStamp(ReferencedResource resource) {
-		return WorkbenchResourceHelper.computeModificationStamp(resource);
-	}
-
-
-	protected void refreshFiles(List someFiles, List inconsitentResources) throws CoreException {
-		RefreshRunnable runnable = new RefreshRunnable(someFiles, inconsitentResources);
-		ResourcesPlugin.getWorkspace().run(runnable, null);
-		if (runnable.getThrownException() != null)
-			throw runnable.getThrownException();
-	}
-
-	protected void primRefreshFiles(List someFiles) throws CoreException {
-		int size = someFiles.size();
-		IFile file = null;
-		for (int i = 0; i < size; i++) {
-			file = (IFile) someFiles.get(i);
-			if (!file.isSynchronized(IResource.DEPTH_ZERO))
-				file.refreshLocal(IResource.DEPTH_ONE, null);
-			else
-				refreshResource(file);
-		}
-	}
-
-	/**
-	 * We need to remove the Resource that corresponds to the <code>file</code> to force a
-	 * refresh.
-	 */
-	protected void refreshResource(IFile file) {
-		Resource res = WorkbenchResourceHelperBase.getResource(file);
-		if (res != null)
-			res.unload();
-	}
-
-	/**
-	 * Force the resources to not be dirty to ensure that they will be removed from their
-	 * ResourceSet when their file is refreshed.
-	 */
-	protected void prepareResourcesForRefresh(List refResources) {
-		ReferencedResource res = null;
-		for (int i = 0; i < refResources.size(); i++) {
-			res = (ReferencedResource) refResources.get(i);
-			res.setForceRefresh(true);
-		}
-	}
-
-	/**
-	 * Gets the lastNonRefreshStateMap.
-	 * 
-	 * @return Returns a Map
-	 */
-	protected Map getLastNonRefreshStateMap() {
-		if (lastNonRefreshStateMap == null)
-			lastNonRefreshStateMap = new HashMap();
-		return lastNonRefreshStateMap;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateValidatorPresenter.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateValidatorPresenter.java
deleted file mode 100644
index 47545d3..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ResourceStateValidatorPresenter.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/***************************************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
- * accompanying materials are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- **************************************************************************************************/
-package org.eclipse.wst.common.internal.emfworkbench.validateedit;
-
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IStatus;
-
-public interface ResourceStateValidatorPresenter {
-	/**
-	 * Present to the user that the <code>inconsistentFiles</code> will need to be refreshed in
-	 * the workbench. Return true if the refresh should occur. The List will be a list of IFiles.
-	 * 
-	 * @param inconsistentFiles
-	 * @return boolean
-	 */
-	boolean promptForInconsistentFileRefresh(List inconsistentFiles);
-
-	/**
-	 * Return the context (Shell) that would be passed to the validateEdit method. If this method
-	 * returns null, a prompt to check out code will not be presented to the user.
-	 * 
-	 * @see org.eclipse.core.resources.IWorkspace#validateEdit(org.eclipse.core.resources.IFile[],
-	 *      java.lang.Object)
-	 */
-	Object getValidateEditContext();
-
-	/**
-	 * Present a dialog to the user that indicates that the user is about to save and overwrite the
-	 * list of <code>inconsitentFiles</codes>.  Return true if
-	 * the overwrite should proceed.  The list of <code>inconsitentFiles</codes> will
-	 * be a list of IFiles. 
-	 * @param inconsistentFiles
-	 * @return boolean
-	 */
-	boolean promptForInconsistentFileOverwrite(List inconsistentFiles);
-
-	/**
-	 * This method should be called by any action that is about to edit any contents of any IFile.
-	 */
-	public IStatus validateState();
-}
-
diff --git a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ValidateEditHeadlessContext.java b/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ValidateEditHeadlessContext.java
deleted file mode 100644
index 11efe03..0000000
--- a/plugins/org.eclipse.wst.common.emfworkbench.integration/src/org/eclipse/wst/common/internal/emfworkbench/validateedit/ValidateEditHeadlessContext.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on May 18, 2004
- */
-package org.eclipse.wst.common.internal.emfworkbench.validateedit;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-
-
-/**
- * @author jlanuti Headless Validate Edit Context Implementation
- */
-public class ValidateEditHeadlessContext implements IValidateEditContext {
-
-	protected boolean fNeedsStateValidation = true;
-	protected boolean fMessageUp = false;
-	protected EditModel fValidator = null;
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.validateedit.IValidateEditContext#validateState()
-	 */
-	public IStatus validateState() {
-		// For now do nothing in headless state
-		return Status.OK_STATUS;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidatorPresenter#getValidateEditContext()
-	 */
-	public Object getValidateEditContext() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidatorPresenter#promptForInconsistentFileOverwrite(java.util.List)
-	 */
-	public boolean promptForInconsistentFileOverwrite(List inconsistentFiles) {
-		// TODO Auto-generated method stub
-		return false;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidatorPresenter#promptForInconsistentFileRefresh(java.util.List)
-	 */
-	public boolean promptForInconsistentFileRefresh(List inconsistentFiles) {
-		// TODO Auto-generated method stub
-		return false;
-	}
-
-	/**
-	 * @see IValidateEditListener#setNeedsStateValidation(boolean)
-	 */
-	public void setNeedsStateValidation(boolean needsStateValidation) {
-		fNeedsStateValidation = needsStateValidation;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.validateedit.IValidateEditContext#setEditModel(org.eclipse.wst.common.internal.emfworkbench.integration.EditModel)
-	 */
-	public void setEditModel(EditModel fValidator) {
-		this.fValidator = fValidator;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.validateedit.IValidateEditContext#validateState(org.eclipse.wst.common.internal.emfworkbench.integration.EditModel)
-	 */
-	public IStatus validateState(EditModel editModel) {
-		setEditModel(editModel);
-		return validateState();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/.classpath b/plugins/org.eclipse.wst.common.modulecore/.classpath
deleted file mode 100644
index 0c7fcda..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="modulecore-src/"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.wst.common.modulecore/.cvsignore b/plugins/org.eclipse.wst.common.modulecore/.cvsignore
deleted file mode 100644
index 117759c..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/.cvsignore
+++ /dev/null
@@ -1,8 +0,0 @@
-bin
-temp.folder
-build.xml
-modulecore.jar
-doc
-@dot
-src.zip
-javaCompiler...args
diff --git a/plugins/org.eclipse.wst.common.modulecore/.options b/plugins/org.eclipse.wst.common.modulecore/.options
deleted file mode 100644
index c56819a..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/.options
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.wst.common.modulecore/ComponentResolver=true
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/.project b/plugins/org.eclipse.wst.common.modulecore/.project
deleted file mode 100644
index 8cdcd11..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.common.modulecore</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.wst.common.modulecore/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.wst.common.modulecore/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index a2fa4f5..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Fri Dec 02 14:54:59 EST 2005
-eclipse.preferences.version=1
-encoding//schema/componentCore.xsd=UTF8
diff --git a/plugins/org.eclipse.wst.common.modulecore/.settings/org.eclipse.jdt.core.prefs b/plugins/org.eclipse.wst.common.modulecore/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 31bb1e6..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,62 +0,0 @@
-#Thu May 10 18:38:08 EDT 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nullReference=ignore
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=error
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLabel=error
-org.eclipse.jdt.core.compiler.problem.unusedLocal=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=ignore
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/org.eclipse.wst.common.modulecore/.settings/org.eclipse.jdt.ui.prefs b/plugins/org.eclipse.wst.common.modulecore/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index a18ff1d..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,4 +0,0 @@
-#Wed Mar 19 17:18:41 EDT 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.ui.javadoc=false
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\r\n * @return the ${bare_field_name}\r\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\r\n * @param ${param} the ${bare_field_name} to set\r\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\r\n * @author ${user}\r\n *\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\r\n * \r\n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Javadoc)\r\n * ${see_to_overridden}\r\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\r\n${package_declaration}\r\n\r\n${typecomment}\r\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\r\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\r\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\r\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\r\n</template><template autoinsert\="false" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">org.eclipse.wst.common.componentcore.internal.ModulecorePlugin.logError(${exception_var});</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\r\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\r\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
diff --git a/plugins/org.eclipse.wst.common.modulecore/META-INF/MANIFEST.MF b/plugins/org.eclipse.wst.common.modulecore/META-INF/MANIFEST.MF
deleted file mode 100644
index 522a71f..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,34 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Bundle-Name.0
-Bundle-Vendor: %provider
-Bundle-SymbolicName: org.eclipse.wst.common.modulecore; singleton:=true
-Bundle-Version: 1.1.206.qualifier
-Bundle-Activator: org.eclipse.wst.common.componentcore.internal.ModulecorePlugin
-Bundle-Localization: plugin
-Export-Package: org.eclipse.wst.common.componentcore,
- org.eclipse.wst.common.componentcore.datamodel,
- org.eclipse.wst.common.componentcore.datamodel.properties,
- org.eclipse.wst.common.componentcore.internal;x-internal:=true,
- org.eclipse.wst.common.componentcore.internal.builder;x-internal:=true,
- org.eclipse.wst.common.componentcore.internal.impl;x-internal:=true,
- org.eclipse.wst.common.componentcore.internal.operation;x-internal:=true,
- org.eclipse.wst.common.componentcore.internal.resources;x-internal:=true,
- org.eclipse.wst.common.componentcore.internal.util;x-internal:=true,
- org.eclipse.wst.common.componentcore.resources
-Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.common.frameworks;bundle-version="[1.1.200,2.0.0)",
- org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.emf.ecore;bundle-version="[2.4.0,3.0.0)",
- org.eclipse.wst.common.emfworkbench.integration;bundle-version="[1.1.200,2.0.0)",
- org.eclipse.wst.common.emf;bundle-version="[1.1.200,2.0.0)",
- org.eclipse.emf.ecore.xmi;bundle-version="[2.4.0,3.0.0)",
- org.eclipse.core.commands;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.emf.edit;bundle-version="[2.4.0,3.0.0)",
- org.eclipse.jem.util;bundle-version="[2.0.100,3.0.0)",
- org.eclipse.wst.common.uriresolver;bundle-version="[1.1.301,2.0.0)",
- org.eclipse.wst.common.project.facet.core;bundle-version="[1.3.0,2.0.0)",
- org.eclipse.wst.common.environment;bundle-version="[1.0.200,2.0.0)",
- org.eclipse.wst.validation;bundle-version="[1.2.0,2.0.0)"
-Eclipse-LazyStart: true
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/plugins/org.eclipse.wst.common.modulecore/about.html b/plugins/org.eclipse.wst.common.modulecore/about.html
deleted file mode 100644
index 2199df3..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June, 2008</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in 
-("Content"). Unless otherwise indicated below, the Content is provided to you 
-under the terms and conditions of the Eclipse Public License Version 1.0 
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>. 
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the 
-Content is being redistributed by another party ("Redistributor") and different 
-terms and conditions may apply to your use of any object code in the Content. 
-Check the RedistributorÂ’s license that was provided with the Content. If no such 
-license exists, contact the Redistributor. Unless otherwise indicated below, the 
-terms and conditions of the EPL still apply to any source code in the Content 
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/plugins/org.eclipse.wst.common.modulecore/build.properties b/plugins/org.eclipse.wst.common.modulecore/build.properties
deleted file mode 100644
index e225d3f..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/build.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-###############################################################################
-# Copyright (c) 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-source.. = modulecore-src/
-output.. = bin/
-bin.includes = plugin.xml,\
-               .,\
-               META-INF/,\
-               plugin.properties,\
-               about.html,\
-               schema/
-src.includes = component.xml
diff --git a/plugins/org.eclipse.wst.common.modulecore/component.xml b/plugins/org.eclipse.wst.common.modulecore/component.xml
deleted file mode 100644
index 48daa95..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/component.xml
+++ /dev/null
@@ -1 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><component  xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.wst.common.componentcore"><component-depends unrestricted="true"></component-depends><plugin id="org.eclipse.wst.common.modulecore" fragment="false"/></component>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/componentCore.xsd b/plugins/org.eclipse.wst.common.modulecore/javadoc-images/componentCore.xsd
deleted file mode 100644
index a2d8828..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/componentCore.xsd
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.eclipse.org/webtools/moduleCore" xmlns:tns="http://www.eclipse.org/webtools/moduleCore">

-	<element name="project-modules">

-		<complexType>

-			<sequence minOccurs="1" maxOccurs="unbounded">

-				<element name="wb-module">

-					<complexType>

-                        <sequence minOccurs="0" maxOccurs="1">

-                        	<element name="module-type">

-                        		<complexType>

-                        			<attribute name="module-type-id"

-                        				type="string">

-                        			</attribute>

-                        		</complexType>

-                        	</element>

-                        	<sequence minOccurs="0" maxOccurs="unbounded">

-                        		<element name="wb-resource">

-                                    <complexType>

-                                    	<attribute name="source-path"

-                                    		type="string" use="required">

-                                    	</attribute>

-                                    	<attribute name="deploy-path"

-                                    		type="string" use="required">

-                                    	</attribute>

-                                    </complexType>

-                        		</element>

-                        	</sequence>

-                        	<sequence minOccurs="0" maxOccurs="unbounded">

-                        		<element name="dependent-module">

-                                    <complexType>

-                                    	<attribute name="handle"

-                                    		type="string" use="required">

-                                    	</attribute>

-                                    	<attribute name="deploy-path"

-                                    		type="string" use="required">

-                                    	</attribute>

-                                    	<attribute name="dependency-type"

-                                    		type="string">

-                                    	</attribute>

-                                    </complexType>

-                        		</element>

-                        	</sequence>

-                        </sequence>

-                        <attribute name="deploy-name" type="string" use="required"></attribute>

-					</complexType>

-				</element>

-			</sequence>

-			<attribute name="id" type="string"></attribute>

-		</complexType>

-	</element>

-

-</schema>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/componentcore_model.jpg b/plugins/org.eclipse.wst.common.modulecore/javadoc-images/componentcore_model.jpg
deleted file mode 100644
index b48d673..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/componentcore_model.jpg
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/componentcore_package.jpg b/plugins/org.eclipse.wst.common.modulecore/javadoc-images/componentcore_package.jpg
deleted file mode 100644
index b1c04b6..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/componentcore_package.jpg
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/mapping.jpg b/plugins/org.eclipse.wst.common.modulecore/javadoc-images/mapping.jpg
deleted file mode 100644
index 6df6e50..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/mapping.jpg
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/metamodel_components.jpg b/plugins/org.eclipse.wst.common.modulecore/javadoc-images/metamodel_components.jpg
deleted file mode 100644
index 68cb831..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/metamodel_components.jpg
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/module_structural_model.jpg b/plugins/org.eclipse.wst.common.modulecore/javadoc-images/module_structural_model.jpg
deleted file mode 100644
index c2fe295..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/module_structural_model.jpg
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/modulecore.jpg b/plugins/org.eclipse.wst.common.modulecore/javadoc-images/modulecore.jpg
deleted file mode 100644
index e45a99a..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/modulecore.jpg
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/virtual_path_api.jpg b/plugins/org.eclipse.wst.common.modulecore/javadoc-images/virtual_path_api.jpg
deleted file mode 100644
index 5da3e99..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/javadoc-images/virtual_path_api.jpg
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.modulecore/model/Java.epx b/plugins/org.eclipse.wst.common.modulecore/model/Java.epx
deleted file mode 100644
index d2fd1cf..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/model/Java.epx
+++ /dev/null
@@ -1,6127 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--xtools2_universal_type_manager-->
-<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="_-ZoywJSkEdmjauSjG8qO2A" name="Java" metamodelReference="_-ZoywZSkEdmjauSjG8qO2A">
-  <eAnnotations xmi:id="_-ZoyxJSkEdmjauSjG8qO2A" source="roseProperties">
-    <details xmi:id="_-ZoyxZSkEdmjauSjG8qO2A" key="propertyId" value="809135966"/>
-  </eAnnotations>
-  <eAnnotations xmi:id="_-asi1ZSkEdmjauSjG8qO2A" source="attributes">
-    <details xmi:id="_-asi1pSkEdmjauSjG8qO2A" key="version" value="0"/>
-  </eAnnotations>
-  <eAnnotations xmi:id="_-asi15SkEdmjauSjG8qO2A" source="ePackages">
-    <contents xmi:type="ecore:EPackage" xmi:id="_-a4v8JSkEdmjauSjG8qO2A" name="Java_0" nsURI="http:///_-asi2JSkEdmjauSjG8qO2A.profile.uml2" nsPrefix="Java_0">
-      <eClassifiers xmi:type="ecore:EClass" xmi:id="_-a4v8ZSkEdmjauSjG8qO2A" name="Java__default__ModuleSpec">
-        <eAnnotations xmi:id="_-a4v8pSkEdmjauSjG8qO2A" source="stereotype" references="_-asix5SkEdmjauSjG8qO2A"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v85SkEdmjauSjG8qO2A" name="CmIdentification" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v9JSkEdmjauSjG8qO2A" name="CopyrightNotice" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EClass" xmi:id="_-a4v9ZSkEdmjauSjG8qO2A" name="Java__default__Project">
-        <eAnnotations xmi:id="_-a4v9pSkEdmjauSjG8qO2A" source="stereotype" references="_-aB0mZSkEdmjauSjG8qO2A"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v95SkEdmjauSjG8qO2A" name="UserDefineTagApply3" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v-JSkEdmjauSjG8qO2A" name="JavadocSince" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v-ZSkEdmjauSjG8qO2A" name="GlobalImports" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v-pSkEdmjauSjG8qO2A" name="GenerateDefaultReturnLine" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v-5SkEdmjauSjG8qO2A" name="InstanceVariablePrefix" lowerBound="1" defaultValueLiteral="m_">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v_JSkEdmjauSjG8qO2A" name="ShowCodegenDlg" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v_ZSkEdmjauSjG8qO2A" name="NoClassCustomDlg" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v_pSkEdmjauSjG8qO2A" name="SCCProjectName" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4v_5SkEdmjauSjG8qO2A" name="UseTabs" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wAJSkEdmjauSjG8qO2A" name="DefaultAttributeDataType" lowerBound="1" defaultValueLiteral="int">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wAZSkEdmjauSjG8qO2A" name="LocalPrefix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wApSkEdmjauSjG8qO2A" name="UserDefineJavaDocTags" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wA5SkEdmjauSjG8qO2A" name="LocalHomeSuffix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wBJSkEdmjauSjG8qO2A" name="UserDefineTagText2" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wBZSkEdmjauSjG8qO2A" name="HomeSuffix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wBpSkEdmjauSjG8qO2A" name="VAJavaWorkingFolder" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wB5SkEdmjauSjG8qO2A" name="DefaultEJBVersion" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wCJSkEdmjauSjG8qO2A" name="MaxNumChars" lowerBound="1" defaultValueLiteral="80">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wCZSkEdmjauSjG8qO2A" name="UserDefineTagName2" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wCpSkEdmjauSjG8qO2A" name="ServletDTDLocation" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wC5SkEdmjauSjG8qO2A" name="UserDefineTagApply1" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wDJSkEdmjauSjG8qO2A" name="GenerateRoseID" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wDZSkEdmjauSjG8qO2A" name="StopOnError" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wDpSkEdmjauSjG8qO2A" name="JavadocVersion" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wD5SkEdmjauSjG8qO2A" name="JavadocDefaultAuthor" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wEJSkEdmjauSjG8qO2A" name="OpenBraceMethodStyle" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wEZSkEdmjauSjG8qO2A" name="AsteriskCommentStyle" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wEpSkEdmjauSjG8qO2A" name="PrimaryKeySuffix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wE5SkEdmjauSjG8qO2A" name="Editor" lowerBound="1" eType="_-a4wO5SkEdmjauSjG8qO2A" defaultValueLiteral="BuiltIn"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wFJSkEdmjauSjG8qO2A" name="UserDefineTagApply2" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wFZSkEdmjauSjG8qO2A" name="GenerateDefaultJ2EEJavadoc" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wFpSkEdmjauSjG8qO2A" name="SpacingItems" lowerBound="1" defaultValueLiteral="3">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wF5SkEdmjauSjG8qO2A" name="EJBDTDLocation" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wGJSkEdmjauSjG8qO2A" name="CreateMissingDirectories" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wGZSkEdmjauSjG8qO2A" name="UserDefineTagText3" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wGpSkEdmjauSjG8qO2A" name="RemoteSuffix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wG5SkEdmjauSjG8qO2A" name="ReferenceClasspath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wHJSkEdmjauSjG8qO2A" name="OpenBraceClassStyle" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wHZSkEdmjauSjG8qO2A" name="LocalSuffix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wHpSkEdmjauSjG8qO2A" name="VM" lowerBound="1" eType="_-a4wQJSkEdmjauSjG8qO2A" defaultValueLiteral="Sun"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wH5SkEdmjauSjG8qO2A" name="DefaultServletVersion" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wIJSkEdmjauSjG8qO2A" name="UsePrefixes" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wIZSkEdmjauSjG8qO2A" name="BeanSuffix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wIpSkEdmjauSjG8qO2A" name="BeanPrefix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wI5SkEdmjauSjG8qO2A" name="SCCComment" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wJJSkEdmjauSjG8qO2A" name="RootDir" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wJZSkEdmjauSjG8qO2A" name="UserDefineTagText1" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wJpSkEdmjauSjG8qO2A" name="UserDefineTagName1" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wJ5SkEdmjauSjG8qO2A" name="AutoSync" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wKJSkEdmjauSjG8qO2A" name="JavadocAuthor" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wKZSkEdmjauSjG8qO2A" name="RoseDefaultCommentStyle" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wKpSkEdmjauSjG8qO2A" name="SCCProjectSourceRoot" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wK5SkEdmjauSjG8qO2A" name="JavaCommentStyle" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wLJSkEdmjauSjG8qO2A" name="DefaultOperationReturnType" lowerBound="1" defaultValueLiteral="void">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wLZSkEdmjauSjG8qO2A" name="UserDefineTagName3" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wLpSkEdmjauSjG8qO2A" name="JavadocDefaultVersion" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wL5SkEdmjauSjG8qO2A" name="NotShowRoseIDDlg" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wMJSkEdmjauSjG8qO2A" name="RemotePrefix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wMZSkEdmjauSjG8qO2A" name="UseSpaces" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wMpSkEdmjauSjG8qO2A" name="ClassVariablePrefix" lowerBound="1" defaultValueLiteral="s_">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wM5SkEdmjauSjG8qO2A" name="JavadocDefaultSince" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wNJSkEdmjauSjG8qO2A" name="SCCSelected" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wNZSkEdmjauSjG8qO2A" name="HomePrefix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wNpSkEdmjauSjG8qO2A" name="LocalHomePrefix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wN5SkEdmjauSjG8qO2A" name="ClassPath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wOJSkEdmjauSjG8qO2A" name="SourceControl" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wOZSkEdmjauSjG8qO2A" name="JavadocNumAsterisks" lowerBound="1" defaultValueLiteral="0">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wOpSkEdmjauSjG8qO2A" name="PrimaryKeyPrefix" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4wO5SkEdmjauSjG8qO2A" name="Java__default__ProjectEditorType">
-        <eLiterals xmi:id="_-a4wPJSkEdmjauSjG8qO2A" name="BuiltIn">
-          <eAnnotations xmi:id="_-a4wPZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aH685SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wPpSkEdmjauSjG8qO2A" name="WindowsShell" value="1">
-          <eAnnotations xmi:id="_-a4wP5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aH69pSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4wQJSkEdmjauSjG8qO2A" name="Java__default__ProjectVMType">
-        <eLiterals xmi:id="_-a4wQZSkEdmjauSjG8qO2A" name="Sun">
-          <eAnnotations xmi:id="_-a4wQpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aB0pJSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wQ5SkEdmjauSjG8qO2A" name="Microsoft" value="1">
-          <eAnnotations xmi:id="_-a4wRJSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aB0p5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wRZSkEdmjauSjG8qO2A" name="IBM" value="2">
-          <eAnnotations xmi:id="_-a4wRpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aB0qpSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EClass" xmi:id="_-a4wR5SkEdmjauSjG8qO2A" name="Java__default__Class">
-        <eAnnotations xmi:id="_-a4wSJSkEdmjauSjG8qO2A" source="stereotype" references="_-Z1nbZSkEdmjauSjG8qO2A"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wSZSkEdmjauSjG8qO2A" name="EJBNameInJAR" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wSpSkEdmjauSjG8qO2A" name="ServletgetInfo" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wS5SkEdmjauSjG8qO2A" name="GenerateInstanceInitializer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wTJSkEdmjauSjG8qO2A" name="Final" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wTZSkEdmjauSjG8qO2A" name="ServletIntHeader" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wTpSkEdmjauSjG8qO2A" name="GenerateStaticInitializer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wT5SkEdmjauSjG8qO2A" name="EJBCmpField" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wUJSkEdmjauSjG8qO2A" name="MethodForHeaders" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wUZSkEdmjauSjG8qO2A" name="ServletContentType" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wUpSkEdmjauSjG8qO2A" name="Static" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wU5SkEdmjauSjG8qO2A" name="MethodForRequestAttributes" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wVJSkEdmjauSjG8qO2A" name="ServletSecurityRoles" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wVZSkEdmjauSjG8qO2A" name="ServletInitParameter" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wVpSkEdmjauSjG8qO2A" name="DispatcherForward" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wV5SkEdmjauSjG8qO2A" name="ServletRequestParameterNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wWJSkEdmjauSjG8qO2A" name="ServletCookie" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wWZSkEdmjauSjG8qO2A" name="EJBReferences" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wWpSkEdmjauSjG8qO2A" name="ServletContextRef" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wW5SkEdmjauSjG8qO2A" name="GenerateDefaultConstructor" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wXJSkEdmjauSjG8qO2A" name="ServletIsSecure" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wXZSkEdmjauSjG8qO2A" name="GenerateFinalizer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wXpSkEdmjauSjG8qO2A" name="EJBSessionType" lowerBound="1" eType="_-a4wf5SkEdmjauSjG8qO2A" defaultValueLiteral=""/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wX5SkEdmjauSjG8qO2A" name="ServletInitParameterNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wYJSkEdmjauSjG8qO2A" name="DisableAutoSync" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wYZSkEdmjauSjG8qO2A" name="BMP_Extend_CMP" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wYpSkEdmjauSjG8qO2A" name="EJBTransactionType" lowerBound="1" eType="_-a4whpSkEdmjauSjG8qO2A" defaultValueLiteral="Container"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wY5SkEdmjauSjG8qO2A" name="DispatcherInclude" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wZJSkEdmjauSjG8qO2A" name="ServletXMLFilePath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wZZSkEdmjauSjG8qO2A" name="ServletHeader" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wZpSkEdmjauSjG8qO2A" name="ServletDateHeader" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wZ5SkEdmjauSjG8qO2A" name="Strictfp" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4waJSkEdmjauSjG8qO2A" name="EJBSessionSync" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4waZSkEdmjauSjG8qO2A" name="EJBSecurityRoles" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wapSkEdmjauSjG8qO2A" name="IsSingleThread" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wa5SkEdmjauSjG8qO2A" name="ServletRequestAttributesNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wbJSkEdmjauSjG8qO2A" name="ServletRequestDispatcherPath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wbZSkEdmjauSjG8qO2A" name="ServletHeaderNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wbpSkEdmjauSjG8qO2A" name="MethodForCookie" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wb5SkEdmjauSjG8qO2A" name="EJBVersion" lowerBound="1" eType="_-a4wi5SkEdmjauSjG8qO2A" defaultValueLiteral="2.0"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wcJSkEdmjauSjG8qO2A" name="EJBPersistenceType" lowerBound="1" eType="_-a4wkJSkEdmjauSjG8qO2A" defaultValueLiteral=""/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wcZSkEdmjauSjG8qO2A" name="ConstructorIs" lowerBound="1" eType="_-a4wl5SkEdmjauSjG8qO2A" defaultValueLiteral="public"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wcpSkEdmjauSjG8qO2A" name="ReadOnly" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wc5SkEdmjauSjG8qO2A" name="Generate_XML_DD" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wdJSkEdmjauSjG8qO2A" name="ServletName" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wdZSkEdmjauSjG8qO2A" name="EJBXMLFilePath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wdpSkEdmjauSjG8qO2A" name="EJBCnxFactory" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wd5SkEdmjauSjG8qO2A" name="ServletRequestDispatcher" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4weJSkEdmjauSjG8qO2A" name="EJBReentrant" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4weZSkEdmjauSjG8qO2A" name="MethodForRequestParameters" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wepSkEdmjauSjG8qO2A" name="EJBEnvironmentProperties" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4we5SkEdmjauSjG8qO2A" name="GenerateCode" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wfJSkEdmjauSjG8qO2A" name="ServletRequestParameter" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wfZSkEdmjauSjG8qO2A" name="GenerateHTML" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wfpSkEdmjauSjG8qO2A" name="ServletRequestAttribute" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4wf5SkEdmjauSjG8qO2A" name="Java__default__ClassEJBSessionType_Set">
-        <eLiterals xmi:id="_-a4wgJSkEdmjauSjG8qO2A" name="">
-          <eAnnotations xmi:id="_-a4wgZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7tw5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wgpSkEdmjauSjG8qO2A" name="Stateless" value="1">
-          <eAnnotations xmi:id="_-a4wg5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7txpSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4whJSkEdmjauSjG8qO2A" name="Stateful" value="2">
-          <eAnnotations xmi:id="_-a4whZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7tyZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4whpSkEdmjauSjG8qO2A" name="Java__default__ClassEJBTransactionType_Set">
-        <eLiterals xmi:id="_-a4wh5SkEdmjauSjG8qO2A" name="Container">
-          <eAnnotations xmi:id="_-a4wiJSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7t5JSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wiZSkEdmjauSjG8qO2A" name="Bean" value="1">
-          <eAnnotations xmi:id="_-a4wipSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7t55SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4wi5SkEdmjauSjG8qO2A" name="Java__default__ClassEJBVersion_Set">
-        <eLiterals xmi:id="_-a4wjJSkEdmjauSjG8qO2A" name="2.0">
-          <eAnnotations xmi:id="_-a4wjZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7t65SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wjpSkEdmjauSjG8qO2A" name="1.x" value="1">
-          <eAnnotations xmi:id="_-a4wj5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7t7pSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4wkJSkEdmjauSjG8qO2A" name="Java__default__ClassEJBPersistenceType_Set">
-        <eLiterals xmi:id="_-a4wkZSkEdmjauSjG8qO2A" name="">
-          <eAnnotations xmi:id="_-a4wkpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7tzZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wk5SkEdmjauSjG8qO2A" name="Bean" value="1">
-          <eAnnotations xmi:id="_-a4wlJSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7t0JSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wlZSkEdmjauSjG8qO2A" name="Container" value="2">
-          <eAnnotations xmi:id="_-a4wlpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7t05SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4wl5SkEdmjauSjG8qO2A" name="Java__default__ClassCtor_Set">
-        <eLiterals xmi:id="_-a4wmJSkEdmjauSjG8qO2A" name="public">
-          <eAnnotations xmi:id="_-a4wmZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7t15SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wmpSkEdmjauSjG8qO2A" name="protected" value="1">
-          <eAnnotations xmi:id="_-a4wm5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7t2pSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wnJSkEdmjauSjG8qO2A" name="private" value="2">
-          <eAnnotations xmi:id="_-a4wnZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7t3ZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4wnpSkEdmjauSjG8qO2A" name="package" value="3">
-          <eAnnotations xmi:id="_-a4wn5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Z7t4JSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EClass" xmi:id="_-a4woJSkEdmjauSjG8qO2A" name="Java__default__ModuleBody">
-        <eAnnotations xmi:id="_-a4woZSkEdmjauSjG8qO2A" source="stereotype" references="_-ZoyxpSkEdmjauSjG8qO2A"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wopSkEdmjauSjG8qO2A" name="CmIdentification" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wo5SkEdmjauSjG8qO2A" name="CopyrightNotice" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EClass" xmi:id="_-a4wpJSkEdmjauSjG8qO2A" name="Java__default__Operation">
-        <eAnnotations xmi:id="_-a4wpZSkEdmjauSjG8qO2A" source="stereotype" references="_-aaO7pSkEdmjauSjG8qO2A"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wppSkEdmjauSjG8qO2A" name="ReplaceExistingCode" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wp5SkEdmjauSjG8qO2A" name="Final" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wqJSkEdmjauSjG8qO2A" name="GenerateFullyQualifiedReturn" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wqZSkEdmjauSjG8qO2A" name="Strictfp" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wqpSkEdmjauSjG8qO2A" name="Native" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wq5SkEdmjauSjG8qO2A" name="Abstract" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wrJSkEdmjauSjG8qO2A" name="Synchronized" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wrZSkEdmjauSjG8qO2A" name="Static" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EClass" xmi:id="_-a4wrpSkEdmjauSjG8qO2A" name="Java__Default_EJB__Class">
-        <eAnnotations xmi:id="_-a4wr5SkEdmjauSjG8qO2A" source="stereotype" references="_-aOBo5SkEdmjauSjG8qO2A"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wsJSkEdmjauSjG8qO2A" name="EJBNameInJAR" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wsZSkEdmjauSjG8qO2A" name="GenerateInstanceInitializer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wspSkEdmjauSjG8qO2A" name="ServletgetInfo" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4ws5SkEdmjauSjG8qO2A" name="Final" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wtJSkEdmjauSjG8qO2A" name="ServletIntHeader" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wtZSkEdmjauSjG8qO2A" name="GenerateStaticInitializer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wtpSkEdmjauSjG8qO2A" name="EJBCmpField" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wt5SkEdmjauSjG8qO2A" name="MethodForHeaders" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wuJSkEdmjauSjG8qO2A" name="ServletContentType" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wuZSkEdmjauSjG8qO2A" name="Static" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wupSkEdmjauSjG8qO2A" name="MethodForRequestAttributes" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wu5SkEdmjauSjG8qO2A" name="ServletSecurityRoles" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wvJSkEdmjauSjG8qO2A" name="ServletInitParameter" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wvZSkEdmjauSjG8qO2A" name="DispatcherForward" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wvpSkEdmjauSjG8qO2A" name="ServletRequestParameterNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wv5SkEdmjauSjG8qO2A" name="ServletCookie" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wwJSkEdmjauSjG8qO2A" name="EJBReferences" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wwZSkEdmjauSjG8qO2A" name="ServletContextRef" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wwpSkEdmjauSjG8qO2A" name="GenerateDefaultConstructor" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4ww5SkEdmjauSjG8qO2A" name="ServletIsSecure" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wxJSkEdmjauSjG8qO2A" name="GenerateFinalizer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wxZSkEdmjauSjG8qO2A" name="EJBSessionType" lowerBound="1" eType="_-a4w5pSkEdmjauSjG8qO2A" defaultValueLiteral=""/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wxpSkEdmjauSjG8qO2A" name="DisableAutoSync" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wx5SkEdmjauSjG8qO2A" name="ServletInitParameterNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wyJSkEdmjauSjG8qO2A" name="BMP_Extend_CMP" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wyZSkEdmjauSjG8qO2A" name="EJBTransactionType" lowerBound="1" eType="_-a4w7ZSkEdmjauSjG8qO2A" defaultValueLiteral="Container"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wypSkEdmjauSjG8qO2A" name="DispatcherInclude" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wy5SkEdmjauSjG8qO2A" name="ServletXMLFilePath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wzJSkEdmjauSjG8qO2A" name="ServletHeader" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wzZSkEdmjauSjG8qO2A" name="ServletDateHeader" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wzpSkEdmjauSjG8qO2A" name="Strictfp" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4wz5SkEdmjauSjG8qO2A" name="EJBSessionSync" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w0JSkEdmjauSjG8qO2A" name="EJBSecurityRoles" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w0ZSkEdmjauSjG8qO2A" name="IsSingleThread" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w0pSkEdmjauSjG8qO2A" name="ServletRequestDispatcherPath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w05SkEdmjauSjG8qO2A" name="ServletRequestAttributesNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w1JSkEdmjauSjG8qO2A" name="ServletHeaderNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w1ZSkEdmjauSjG8qO2A" name="MethodForCookie" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w1pSkEdmjauSjG8qO2A" name="EJBVersion" lowerBound="1" eType="_-a4w8pSkEdmjauSjG8qO2A" defaultValueLiteral="2.0"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w15SkEdmjauSjG8qO2A" name="EJBPersistenceType" lowerBound="1" eType="_-a4w95SkEdmjauSjG8qO2A" defaultValueLiteral=""/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w2JSkEdmjauSjG8qO2A" name="ConstructorIs" lowerBound="1" eType="_-a4w_pSkEdmjauSjG8qO2A" defaultValueLiteral="public"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w2ZSkEdmjauSjG8qO2A" name="ReadOnly" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w2pSkEdmjauSjG8qO2A" name="Generate_XML_DD" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w25SkEdmjauSjG8qO2A" name="ServletName" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w3JSkEdmjauSjG8qO2A" name="EJBXMLFilePath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w3ZSkEdmjauSjG8qO2A" name="EJBCnxFactory" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w3pSkEdmjauSjG8qO2A" name="ServletRequestDispatcher" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w35SkEdmjauSjG8qO2A" name="EJBReentrant" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w4JSkEdmjauSjG8qO2A" name="MethodForRequestParameters" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w4ZSkEdmjauSjG8qO2A" name="EJBEnvironmentProperties" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w4pSkEdmjauSjG8qO2A" name="GenerateCode" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w45SkEdmjauSjG8qO2A" name="ServletRequestParameter" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w5JSkEdmjauSjG8qO2A" name="GenerateHTML" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4w5ZSkEdmjauSjG8qO2A" name="ServletRequestAttribute" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4w5pSkEdmjauSjG8qO2A" name="Java__Default_EJB__ClassEJBSessionType_Set">
-        <eLiterals xmi:id="_-a4w55SkEdmjauSjG8qO2A" name="">
-          <eAnnotations xmi:id="_-a4w6JSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOBwpSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4w6ZSkEdmjauSjG8qO2A" name="Stateless" value="1">
-          <eAnnotations xmi:id="_-a4w6pSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOBxZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4w65SkEdmjauSjG8qO2A" name="Stateful" value="2">
-          <eAnnotations xmi:id="_-a4w7JSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOByJSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4w7ZSkEdmjauSjG8qO2A" name="Java__Default_EJB__ClassEJBTransactionType_Set">
-        <eLiterals xmi:id="_-a4w7pSkEdmjauSjG8qO2A" name="Container">
-          <eAnnotations xmi:id="_-a4w75SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOB45SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4w8JSkEdmjauSjG8qO2A" name="Bean" value="1">
-          <eAnnotations xmi:id="_-a4w8ZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOB5pSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4w8pSkEdmjauSjG8qO2A" name="Java__Default_EJB__ClassEJBVersion_Set">
-        <eLiterals xmi:id="_-a4w85SkEdmjauSjG8qO2A" name="2.0">
-          <eAnnotations xmi:id="_-a4w9JSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOB6pSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4w9ZSkEdmjauSjG8qO2A" name="1.x" value="1">
-          <eAnnotations xmi:id="_-a4w9pSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOB7ZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4w95SkEdmjauSjG8qO2A" name="Java__Default_EJB__ClassEJBPersistenceType_Set">
-        <eLiterals xmi:id="_-a4w-JSkEdmjauSjG8qO2A" name="">
-          <eAnnotations xmi:id="_-a4w-ZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOB2ZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4w-pSkEdmjauSjG8qO2A" name="Bean" value="1">
-          <eAnnotations xmi:id="_-a4w-5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOB3JSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4w_JSkEdmjauSjG8qO2A" name="Container" value="2">
-          <eAnnotations xmi:id="_-a4w_ZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOB35SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4w_pSkEdmjauSjG8qO2A" name="Java__Default_EJB__ClassCtor_Set">
-        <eLiterals xmi:id="_-a4w_5SkEdmjauSjG8qO2A" name="public">
-          <eAnnotations xmi:id="_-a4xAJSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOBzJSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xAZSkEdmjauSjG8qO2A" name="protected" value="1">
-          <eAnnotations xmi:id="_-a4xApSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOBz5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xA5SkEdmjauSjG8qO2A" name="private" value="2">
-          <eAnnotations xmi:id="_-a4xBJSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOB0pSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xBZSkEdmjauSjG8qO2A" name="package" value="3">
-          <eAnnotations xmi:id="_-a4xBpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aOB1ZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EClass" xmi:id="_-a4xB5SkEdmjauSjG8qO2A" name="Java__Http_Servlet__Class">
-        <eAnnotations xmi:id="_-a4xCJSkEdmjauSjG8qO2A" source="stereotype" references="_-agVhpSkEdmjauSjG8qO2A"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xCZSkEdmjauSjG8qO2A" name="EJBNameInJAR" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xCpSkEdmjauSjG8qO2A" name="GenerateInstanceInitializer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xC5SkEdmjauSjG8qO2A" name="ServletgetInfo" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xDJSkEdmjauSjG8qO2A" name="Final" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xDZSkEdmjauSjG8qO2A" name="ServletIntHeader" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xDpSkEdmjauSjG8qO2A" name="GenerateStaticInitializer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xD5SkEdmjauSjG8qO2A" name="EJBCmpField" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xEJSkEdmjauSjG8qO2A" name="ServletContentType" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xEZSkEdmjauSjG8qO2A" name="MethodForHeaders" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xEpSkEdmjauSjG8qO2A" name="Static" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xE5SkEdmjauSjG8qO2A" name="MethodForRequestAttributes" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xFJSkEdmjauSjG8qO2A" name="ServletSecurityRoles" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xFZSkEdmjauSjG8qO2A" name="ServletInitParameter" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xFpSkEdmjauSjG8qO2A" name="DispatcherForward" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xF5SkEdmjauSjG8qO2A" name="ServletRequestParameterNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xGJSkEdmjauSjG8qO2A" name="ServletCookie" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xGZSkEdmjauSjG8qO2A" name="EJBReferences" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xGpSkEdmjauSjG8qO2A" name="ServletContextRef" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xG5SkEdmjauSjG8qO2A" name="GenerateDefaultConstructor" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xHJSkEdmjauSjG8qO2A" name="ServletIsSecure" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xHZSkEdmjauSjG8qO2A" name="GenerateFinalizer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xHpSkEdmjauSjG8qO2A" name="EJBSessionType" lowerBound="1" eType="_-a4xP5SkEdmjauSjG8qO2A" defaultValueLiteral=""/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xH5SkEdmjauSjG8qO2A" name="DisableAutoSync" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xIJSkEdmjauSjG8qO2A" name="ServletInitParameterNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xIZSkEdmjauSjG8qO2A" name="BMP_Extend_CMP" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xIpSkEdmjauSjG8qO2A" name="EJBTransactionType" lowerBound="1" eType="_-a4xRpSkEdmjauSjG8qO2A" defaultValueLiteral="Container"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xI5SkEdmjauSjG8qO2A" name="DispatcherInclude" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xJJSkEdmjauSjG8qO2A" name="ServletHeader" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xJZSkEdmjauSjG8qO2A" name="ServletXMLFilePath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xJpSkEdmjauSjG8qO2A" name="ServletDateHeader" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xJ5SkEdmjauSjG8qO2A" name="Strictfp" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xKJSkEdmjauSjG8qO2A" name="EJBSessionSync" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xKZSkEdmjauSjG8qO2A" name="EJBSecurityRoles" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xKpSkEdmjauSjG8qO2A" name="IsSingleThread" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xK5SkEdmjauSjG8qO2A" name="ServletRequestAttributesNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xLJSkEdmjauSjG8qO2A" name="ServletRequestDispatcherPath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xLZSkEdmjauSjG8qO2A" name="ServletHeaderNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xLpSkEdmjauSjG8qO2A" name="MethodForCookie" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xL5SkEdmjauSjG8qO2A" name="EJBVersion" lowerBound="1" eType="_-a4xS5SkEdmjauSjG8qO2A" defaultValueLiteral="2.0"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xMJSkEdmjauSjG8qO2A" name="EJBPersistenceType" lowerBound="1" eType="_-a4xUJSkEdmjauSjG8qO2A" defaultValueLiteral=""/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xMZSkEdmjauSjG8qO2A" name="ConstructorIs" lowerBound="1" eType="_-a4xV5SkEdmjauSjG8qO2A" defaultValueLiteral="public"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xMpSkEdmjauSjG8qO2A" name="ReadOnly" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xM5SkEdmjauSjG8qO2A" name="Generate_XML_DD" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xNJSkEdmjauSjG8qO2A" name="ServletName" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xNZSkEdmjauSjG8qO2A" name="EJBXMLFilePath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xNpSkEdmjauSjG8qO2A" name="EJBCnxFactory" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xN5SkEdmjauSjG8qO2A" name="ServletRequestDispatcher" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xOJSkEdmjauSjG8qO2A" name="EJBReentrant" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xOZSkEdmjauSjG8qO2A" name="MethodForRequestParameters" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xOpSkEdmjauSjG8qO2A" name="EJBEnvironmentProperties" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xO5SkEdmjauSjG8qO2A" name="GenerateCode" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xPJSkEdmjauSjG8qO2A" name="ServletRequestParameter" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xPZSkEdmjauSjG8qO2A" name="GenerateHTML" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xPpSkEdmjauSjG8qO2A" name="ServletRequestAttribute" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xP5SkEdmjauSjG8qO2A" name="Java__Http_Servlet__ClassEJBSessionType_Set">
-        <eLiterals xmi:id="_-a4xQJSkEdmjauSjG8qO2A" name="">
-          <eAnnotations xmi:id="_-a4xQZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVpZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xQpSkEdmjauSjG8qO2A" name="Stateless" value="1">
-          <eAnnotations xmi:id="_-a4xQ5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVqJSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xRJSkEdmjauSjG8qO2A" name="Stateful" value="2">
-          <eAnnotations xmi:id="_-a4xRZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVq5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xRpSkEdmjauSjG8qO2A" name="Java__Http_Servlet__ClassEJBTransactionType_Set">
-        <eLiterals xmi:id="_-a4xR5SkEdmjauSjG8qO2A" name="Container">
-          <eAnnotations xmi:id="_-a4xSJSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVxpSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xSZSkEdmjauSjG8qO2A" name="Bean" value="1">
-          <eAnnotations xmi:id="_-a4xSpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVyZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xS5SkEdmjauSjG8qO2A" name="Java__Http_Servlet__ClassEJBVersion_Set">
-        <eLiterals xmi:id="_-a4xTJSkEdmjauSjG8qO2A" name="2.0">
-          <eAnnotations xmi:id="_-a4xTZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVzZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xTpSkEdmjauSjG8qO2A" name="1.x" value="1">
-          <eAnnotations xmi:id="_-a4xT5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agV0JSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xUJSkEdmjauSjG8qO2A" name="Java__Http_Servlet__ClassEJBPersistenceType_Set">
-        <eLiterals xmi:id="_-a4xUZSkEdmjauSjG8qO2A" name="">
-          <eAnnotations xmi:id="_-a4xUpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVr5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xU5SkEdmjauSjG8qO2A" name="Bean" value="1">
-          <eAnnotations xmi:id="_-a4xVJSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVspSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xVZSkEdmjauSjG8qO2A" name="Container" value="2">
-          <eAnnotations xmi:id="_-a4xVpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVtZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xV5SkEdmjauSjG8qO2A" name="Java__Http_Servlet__ClassCtor_Set">
-        <eLiterals xmi:id="_-a4xWJSkEdmjauSjG8qO2A" name="public">
-          <eAnnotations xmi:id="_-a4xWZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVuZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xWpSkEdmjauSjG8qO2A" name="protected" value="1">
-          <eAnnotations xmi:id="_-a4xW5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVvJSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xXJSkEdmjauSjG8qO2A" name="private" value="2">
-          <eAnnotations xmi:id="_-a4xXZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVv5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xXpSkEdmjauSjG8qO2A" name="package" value="3">
-          <eAnnotations xmi:id="_-a4xX5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-agVwpSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EClass" xmi:id="_-a4xYJSkEdmjauSjG8qO2A" name="Java__default__Role">
-        <eAnnotations xmi:id="_-a4xYZSkEdmjauSjG8qO2A" source="stereotype" references="_-aaPCJSkEdmjauSjG8qO2A"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xYpSkEdmjauSjG8qO2A" name="ReadWrite" lowerBound="1" eType="_-a4xbJSkEdmjauSjG8qO2A" defaultValueLiteral="Read &amp; Write"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xY5SkEdmjauSjG8qO2A" name="InitialValue" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xZJSkEdmjauSjG8qO2A" name="PropertyType" lowerBound="1" eType="_-a4xc5SkEdmjauSjG8qO2A" defaultValueLiteral="Not A Property"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xZZSkEdmjauSjG8qO2A" name="GenerateFullyQualifiedTypes" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xZpSkEdmjauSjG8qO2A" name="Final" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xZ5SkEdmjauSjG8qO2A" name="Transient" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xaJSkEdmjauSjG8qO2A" name="Volatile" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xaZSkEdmjauSjG8qO2A" name="IsNavigable" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xapSkEdmjauSjG8qO2A" name="IndividualChangeMgt" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xa5SkEdmjauSjG8qO2A" name="ContainerClass" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xbJSkEdmjauSjG8qO2A" name="Java__default__RoleReadWrite_Set">
-        <eLiterals xmi:id="_-a4xbZSkEdmjauSjG8qO2A" name="Read &amp; Write">
-          <eAnnotations xmi:id="_-a4xbpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aaPE5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xb5SkEdmjauSjG8qO2A" name="Read Only" value="1">
-          <eAnnotations xmi:id="_-a4xcJSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aaPFpSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xcZSkEdmjauSjG8qO2A" name="Write Only" value="2">
-          <eAnnotations xmi:id="_-a4xcpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aaPGZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xc5SkEdmjauSjG8qO2A" name="Java__default__RoleBeanProperty_Set">
-        <eLiterals xmi:id="_-a4xdJSkEdmjauSjG8qO2A" name="Not A Property">
-          <eAnnotations xmi:id="_-a4xdZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aaPHZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xdpSkEdmjauSjG8qO2A" name="Simple" value="1">
-          <eAnnotations xmi:id="_-a4xd5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aaPIJSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xeJSkEdmjauSjG8qO2A" name="Bound" value="2">
-          <eAnnotations xmi:id="_-a4xeZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aaPI5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xepSkEdmjauSjG8qO2A" name="Constrained" value="3">
-          <eAnnotations xmi:id="_-a4xe5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-aaPJpSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EClass" xmi:id="_-a4xfJSkEdmjauSjG8qO2A" name="Java__Default_Servlet__Class">
-        <eAnnotations xmi:id="_-a4xfZSkEdmjauSjG8qO2A" source="stereotype" references="_-Zu5lJSkEdmjauSjG8qO2A"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xfpSkEdmjauSjG8qO2A" name="EJBNameInJAR" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xf5SkEdmjauSjG8qO2A" name="GenerateInstanceInitializer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xgJSkEdmjauSjG8qO2A" name="ServletgetInfo" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xgZSkEdmjauSjG8qO2A" name="Final" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xgpSkEdmjauSjG8qO2A" name="ServletIntHeader" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xg5SkEdmjauSjG8qO2A" name="GenerateStaticInitializer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xhJSkEdmjauSjG8qO2A" name="EJBCmpField" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xhZSkEdmjauSjG8qO2A" name="MethodForHeaders" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xhpSkEdmjauSjG8qO2A" name="ServletContentType" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xh5SkEdmjauSjG8qO2A" name="Static" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xiJSkEdmjauSjG8qO2A" name="MethodForRequestAttributes" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xiZSkEdmjauSjG8qO2A" name="ServletSecurityRoles" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xipSkEdmjauSjG8qO2A" name="ServletInitParameter" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xi5SkEdmjauSjG8qO2A" name="DispatcherForward" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xjJSkEdmjauSjG8qO2A" name="ServletRequestParameterNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xjZSkEdmjauSjG8qO2A" name="ServletCookie" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xjpSkEdmjauSjG8qO2A" name="EJBReferences" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xj5SkEdmjauSjG8qO2A" name="ServletContextRef" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xkJSkEdmjauSjG8qO2A" name="GenerateDefaultConstructor" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xkZSkEdmjauSjG8qO2A" name="ServletIsSecure" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xkpSkEdmjauSjG8qO2A" name="GenerateFinalizer" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xk5SkEdmjauSjG8qO2A" name="EJBSessionType" lowerBound="1" eType="_-a4xtJSkEdmjauSjG8qO2A" defaultValueLiteral=""/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xlJSkEdmjauSjG8qO2A" name="DisableAutoSync" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xlZSkEdmjauSjG8qO2A" name="ServletInitParameterNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xlpSkEdmjauSjG8qO2A" name="BMP_Extend_CMP" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xl5SkEdmjauSjG8qO2A" name="EJBTransactionType" lowerBound="1" eType="_-a4xu5SkEdmjauSjG8qO2A" defaultValueLiteral="Container"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xmJSkEdmjauSjG8qO2A" name="DispatcherInclude" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xmZSkEdmjauSjG8qO2A" name="ServletXMLFilePath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xmpSkEdmjauSjG8qO2A" name="ServletHeader" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xm5SkEdmjauSjG8qO2A" name="ServletDateHeader" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xnJSkEdmjauSjG8qO2A" name="Strictfp" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xnZSkEdmjauSjG8qO2A" name="EJBSessionSync" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xnpSkEdmjauSjG8qO2A" name="EJBSecurityRoles" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xn5SkEdmjauSjG8qO2A" name="IsSingleThread" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xoJSkEdmjauSjG8qO2A" name="ServletRequestAttributesNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xoZSkEdmjauSjG8qO2A" name="ServletRequestDispatcherPath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xopSkEdmjauSjG8qO2A" name="ServletHeaderNames" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xo5SkEdmjauSjG8qO2A" name="MethodForCookie" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xpJSkEdmjauSjG8qO2A" name="EJBVersion" lowerBound="1" eType="_-a4xwJSkEdmjauSjG8qO2A" defaultValueLiteral="2.0"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xpZSkEdmjauSjG8qO2A" name="EJBPersistenceType" lowerBound="1" eType="_-a4xxZSkEdmjauSjG8qO2A" defaultValueLiteral=""/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xppSkEdmjauSjG8qO2A" name="ConstructorIs" lowerBound="1" eType="_-a4xzJSkEdmjauSjG8qO2A" defaultValueLiteral="public"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xp5SkEdmjauSjG8qO2A" name="ReadOnly" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xqJSkEdmjauSjG8qO2A" name="Generate_XML_DD" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xqZSkEdmjauSjG8qO2A" name="ServletName" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xqpSkEdmjauSjG8qO2A" name="EJBXMLFilePath" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xq5SkEdmjauSjG8qO2A" name="EJBCnxFactory" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xrJSkEdmjauSjG8qO2A" name="ServletRequestDispatcher" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xrZSkEdmjauSjG8qO2A" name="EJBReentrant" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xrpSkEdmjauSjG8qO2A" name="MethodForRequestParameters" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xr5SkEdmjauSjG8qO2A" name="EJBEnvironmentProperties" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xsJSkEdmjauSjG8qO2A" name="GenerateCode" lowerBound="1" defaultValueLiteral="true">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xsZSkEdmjauSjG8qO2A" name="ServletRequestParameter" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xspSkEdmjauSjG8qO2A" name="GenerateHTML" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4xs5SkEdmjauSjG8qO2A" name="ServletRequestAttribute" lowerBound="1" defaultValueLiteral="">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-        </eStructuralFeatures>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xtJSkEdmjauSjG8qO2A" name="Java__Default_Servlet__ClassEJBSessionType_Set">
-        <eLiterals xmi:id="_-a4xtZSkEdmjauSjG8qO2A" name="">
-          <eAnnotations xmi:id="_-a4xtpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5s5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xt5SkEdmjauSjG8qO2A" name="Stateless" value="1">
-          <eAnnotations xmi:id="_-a4xuJSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5tpSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xuZSkEdmjauSjG8qO2A" name="Stateful" value="2">
-          <eAnnotations xmi:id="_-a4xupSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5uZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xu5SkEdmjauSjG8qO2A" name="Java__Default_Servlet__ClassEJBTransactionType_Set">
-        <eLiterals xmi:id="_-a4xvJSkEdmjauSjG8qO2A" name="Container">
-          <eAnnotations xmi:id="_-a4xvZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu51JSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xvpSkEdmjauSjG8qO2A" name="Bean" value="1">
-          <eAnnotations xmi:id="_-a4xv5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu515SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xwJSkEdmjauSjG8qO2A" name="Java__Default_Servlet__ClassEJBVersion_Set">
-        <eLiterals xmi:id="_-a4xwZSkEdmjauSjG8qO2A" name="2.0">
-          <eAnnotations xmi:id="_-a4xwpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu525SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xw5SkEdmjauSjG8qO2A" name="1.x" value="1">
-          <eAnnotations xmi:id="_-a4xxJSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu53pSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xxZSkEdmjauSjG8qO2A" name="Java__Default_Servlet__ClassEJBPersistenceType_Set">
-        <eLiterals xmi:id="_-a4xxpSkEdmjauSjG8qO2A" name="">
-          <eAnnotations xmi:id="_-a4xx5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5vZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xyJSkEdmjauSjG8qO2A" name="Bean" value="1">
-          <eAnnotations xmi:id="_-a4xyZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5wJSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xypSkEdmjauSjG8qO2A" name="Container" value="2">
-          <eAnnotations xmi:id="_-a4xy5SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5w5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4xzJSkEdmjauSjG8qO2A" name="Java__Default_Servlet__ClassCtor_Set">
-        <eLiterals xmi:id="_-a4xzZSkEdmjauSjG8qO2A" name="public">
-          <eAnnotations xmi:id="_-a4xzpSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5x5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4xz5SkEdmjauSjG8qO2A" name="protected" value="1">
-          <eAnnotations xmi:id="_-a4x0JSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5ypSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4x0ZSkEdmjauSjG8qO2A" name="private" value="2">
-          <eAnnotations xmi:id="_-a4x0pSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5zZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4x05SkEdmjauSjG8qO2A" name="package" value="3">
-          <eAnnotations xmi:id="_-a4x1JSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu50JSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EClass" xmi:id="_-a4x1ZSkEdmjauSjG8qO2A" name="Java__default__Attribute">
-        <eAnnotations xmi:id="_-a4x1pSkEdmjauSjG8qO2A" source="stereotype" references="_-Zu5YZSkEdmjauSjG8qO2A"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4x15SkEdmjauSjG8qO2A" name="ReadWrite" lowerBound="1" eType="_-a4x3pSkEdmjauSjG8qO2A" defaultValueLiteral="Read &amp; Write"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4x2JSkEdmjauSjG8qO2A" name="PropertyType" lowerBound="1" eType="_-a4x5ZSkEdmjauSjG8qO2A" defaultValueLiteral="Not A Property"/>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4x2ZSkEdmjauSjG8qO2A" name="GenerateFullyQualifiedTypes" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4x2pSkEdmjauSjG8qO2A" name="Final" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4x25SkEdmjauSjG8qO2A" name="Transient" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4x3JSkEdmjauSjG8qO2A" name="Volatile" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-        <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-a4x3ZSkEdmjauSjG8qO2A" name="IndividualChangeMgt" lowerBound="1" defaultValueLiteral="false">
-          <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-        </eStructuralFeatures>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4x3pSkEdmjauSjG8qO2A" name="Java__default__AttributeReadWrite_Set">
-        <eLiterals xmi:id="_-a4x35SkEdmjauSjG8qO2A" name="Read &amp; Write">
-          <eAnnotations xmi:id="_-a4x4JSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5cJSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4x4ZSkEdmjauSjG8qO2A" name="Read Only" value="1">
-          <eAnnotations xmi:id="_-a4x4pSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5c5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4x45SkEdmjauSjG8qO2A" name="Write Only" value="2">
-          <eAnnotations xmi:id="_-a4x5JSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5dpSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-      <eClassifiers xmi:type="ecore:EEnum" xmi:id="_-a4x5ZSkEdmjauSjG8qO2A" name="Java__default__AttributeBeanProperty_Set">
-        <eLiterals xmi:id="_-a4x5pSkEdmjauSjG8qO2A" name="Not A Property">
-          <eAnnotations xmi:id="_-a4x55SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5epSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4x6JSkEdmjauSjG8qO2A" name="Simple" value="1">
-          <eAnnotations xmi:id="_-a4x6ZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5fZSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4x6pSkEdmjauSjG8qO2A" name="Bound" value="2">
-          <eAnnotations xmi:id="_-a4x65SkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5gJSkEdmjauSjG8qO2A"/>
-        </eLiterals>
-        <eLiterals xmi:id="_-a4x7JSkEdmjauSjG8qO2A" name="Constrained" value="3">
-          <eAnnotations xmi:id="_-a4x7ZSkEdmjauSjG8qO2A" source="enumerationLiteral" references="_-Zu5g5SkEdmjauSjG8qO2A"/>
-        </eLiterals>
-      </eClassifiers>
-    </contents>
-  </eAnnotations>
-  <eAnnotations xmi:id="_-bjeq5SkEdmjauSjG8qO2A" source="uml2.versions">
-    <details xmi:id="_-bjerJSkEdmjauSjG8qO2A" key="0" value="1.0"/>
-  </eAnnotations>
-  <packageImport xmi:id="_-ZoywZSkEdmjauSjG8qO2A" visibility="private">
-    <eAnnotations xmi:id="_-bE9MJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bE9MZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Model" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m8qbA686EdiEh75YJ_3n8g"/>
-  </packageImport>
-  <packageImport xmi:id="_-ZoywpSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bE9MpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bE9M5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Model" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_EfRZoK86EdieaYgxtVWN8Q"/>
-  </packageImport>
-  <packageImport xmi:id="_-Zoyw5SkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bE9NJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bE9NZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Model" href="pathmap://UML2_LIBRARIES/JavaPrimitiveTypes.library.uml2#_RjmyoK86EdieaYgxtVWN8Q"/>
-  </packageImport>
-  <ownedMember xmi:type="uml:Stereotype" xmi:id="_-ZoyxpSkEdmjauSjG8qO2A" name="default__ModuleBody">
-    <eAnnotations xmi:id="_-Zoyx5SkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-ZoyyJSkEdmjauSjG8qO2A" key="categoryName" value="Java"/>
-      <details xmi:id="_-ZoyyZSkEdmjauSjG8qO2A" key="suppressed" value="true"/>
-      <details xmi:id="_-bE9NpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_-ZoyypSkEdmjauSjG8qO2A" source="keywords">
-      <details xmi:id="_-Zoyy5SkEdmjauSjG8qO2A" key="taggedValueSet"/>
-    </eAnnotations>
-    <ownedAttribute xmi:id="_-Zoyz5SkEdmjauSjG8qO2A" name="base$Component" association="_-ZoyzJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bE9N5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9OJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9VJjK86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zoy0JSkEdmjauSjG8qO2A" name="CmIdentification">
-      <eAnnotations xmi:id="_-bE9OZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9OpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Zoy0ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9O5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9PJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zoy0pSkEdmjauSjG8qO2A" name="CopyrightNotice">
-      <eAnnotations xmi:id="_-bE9PZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9PpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Zu5YJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9P5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9QJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-ZoyzJSkEdmjauSjG8qO2A" name="Component_default__ModuleBody" memberEnd="_-ZoyzZSkEdmjauSjG8qO2A _-Zoyz5SkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bE9QZSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bE9QpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-ZoyzZSkEdmjauSjG8qO2A" name="extension$default__ModuleBody" type="_-ZoyxpSkEdmjauSjG8qO2A" association="_-ZoyzJSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bE9Q5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9RJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-ZoyzpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9RZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9RpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Stereotype" xmi:id="_-Zu5YZSkEdmjauSjG8qO2A" name="default__Attribute">
-    <eAnnotations xmi:id="_-Zu5YpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-Zu5Y5SkEdmjauSjG8qO2A" key="categoryName" value="Java"/>
-      <details xmi:id="_-Zu5ZJSkEdmjauSjG8qO2A" key="suppressed" value="true"/>
-      <details xmi:id="_-bE9R5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_-Zu5ZZSkEdmjauSjG8qO2A" source="keywords">
-      <details xmi:id="_-Zu5ZpSkEdmjauSjG8qO2A" key="taggedValueSet"/>
-    </eAnnotations>
-    <ownedAttribute xmi:id="_-Zu5apSkEdmjauSjG8qO2A" name="base$EnumerationLiteral" association="_-Zu5Z5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bE9SJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9SZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9bRga86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5bpSkEdmjauSjG8qO2A" name="base$Property" association="_-Zu5a5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bE9SpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9S5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9C1la86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5hpSkEdmjauSjG8qO2A" name="ReadWrite" type="_-Zu5b5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bE9TJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9TZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-Zu5h5SkEdmjauSjG8qO2A" instance="_-Zu5cJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9TpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9T5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5iJSkEdmjauSjG8qO2A" name="PropertyType" type="_-Zu5eZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bE9UJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9UZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-Zu5iZSkEdmjauSjG8qO2A" instance="_-Zu5epSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9UpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9U5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5ipSkEdmjauSjG8qO2A" name="GenerateFullyQualifiedTypes">
-      <eAnnotations xmi:id="_-bE9VJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9VZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Zu5i5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9VpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9V5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5jJSkEdmjauSjG8qO2A" name="Final">
-      <eAnnotations xmi:id="_-bE9WJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9WZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Zu5jZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9WpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9W5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5jpSkEdmjauSjG8qO2A" name="Transient">
-      <eAnnotations xmi:id="_-bE9XJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9XZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Zu5j5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9XpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9X5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5kJSkEdmjauSjG8qO2A" name="Volatile">
-      <eAnnotations xmi:id="_-bE9YJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9YZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Zu5kZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9YpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9Y5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5kpSkEdmjauSjG8qO2A" name="IndividualChangeMgt">
-      <eAnnotations xmi:id="_-bE9ZJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9ZZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Zu5k5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9ZpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9Z5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Zu5Z5SkEdmjauSjG8qO2A" name="EnumerationLiteral_default__Attribute" memberEnd="_-Zu5aJSkEdmjauSjG8qO2A _-Zu5apSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bE9aJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bE9aZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Zu5aJSkEdmjauSjG8qO2A" name="extension$default__Attribute" type="_-Zu5YZSkEdmjauSjG8qO2A" association="_-Zu5Z5SkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bE9apSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9a5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Zu5aZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9bJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9bZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Zu5a5SkEdmjauSjG8qO2A" name="Property_default__Attribute" memberEnd="_-Zu5bJSkEdmjauSjG8qO2A _-Zu5bpSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bE9bpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bE9b5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Zu5bJSkEdmjauSjG8qO2A" name="extension$default__Attribute" type="_-Zu5YZSkEdmjauSjG8qO2A" association="_-Zu5a5SkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bE9cJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9cZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Zu5bZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bE9cpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bE9c5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Zu5b5SkEdmjauSjG8qO2A" name="default__AttributeReadWrite_Set">
-    <eAnnotations xmi:id="_-bE9dJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bE9dZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Zu5cJSkEdmjauSjG8qO2A" name="Read &amp; Write">
-      <eAnnotations xmi:id="_-Zu5cZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5cpSkEdmjauSjG8qO2A" key="cardinal" value="81"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bE9dpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bE9d5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5c5SkEdmjauSjG8qO2A" name="Read Only">
-      <eAnnotations xmi:id="_-Zu5dJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5dZSkEdmjauSjG8qO2A" key="cardinal" value="82"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bE9eJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD0JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5dpSkEdmjauSjG8qO2A" name="Write Only">
-      <eAnnotations xmi:id="_-Zu5d5SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5eJSkEdmjauSjG8qO2A" key="cardinal" value="83"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLD0ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD0pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Zu5eZSkEdmjauSjG8qO2A" name="default__AttributeBeanProperty_Set">
-    <eAnnotations xmi:id="_-bLD05SkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLD1JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Zu5epSkEdmjauSjG8qO2A" name="Not A Property">
-      <eAnnotations xmi:id="_-Zu5e5SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5fJSkEdmjauSjG8qO2A" key="cardinal" value="71"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLD1ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD1pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5fZSkEdmjauSjG8qO2A" name="Simple">
-      <eAnnotations xmi:id="_-Zu5fpSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5f5SkEdmjauSjG8qO2A" key="cardinal" value="72"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLD15SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD2JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5gJSkEdmjauSjG8qO2A" name="Bound">
-      <eAnnotations xmi:id="_-Zu5gZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5gpSkEdmjauSjG8qO2A" key="cardinal" value="73"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLD2ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD2pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5g5SkEdmjauSjG8qO2A" name="Constrained">
-      <eAnnotations xmi:id="_-Zu5hJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5hZSkEdmjauSjG8qO2A" key="cardinal" value="74"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLD25SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD3JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Stereotype" xmi:id="_-Zu5lJSkEdmjauSjG8qO2A" name="Default_Servlet__Class">
-    <eAnnotations xmi:id="_-Zu5lZSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-Zu5lpSkEdmjauSjG8qO2A" key="categoryName" value="Java"/>
-      <details xmi:id="_-Zu5l5SkEdmjauSjG8qO2A" key="suppressed" value="true"/>
-      <details xmi:id="_-bLD3ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_-Zu5mJSkEdmjauSjG8qO2A" source="keywords">
-      <details xmi:id="_-Zu5mZSkEdmjauSjG8qO2A" key="taggedValueSet"/>
-    </eAnnotations>
-    <ownedAttribute xmi:id="_-Zu5nZSkEdmjauSjG8qO2A" name="base$Actor" association="_-Zu5mpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLD3pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD35SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9ndca86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5oZSkEdmjauSjG8qO2A" name="base$Class" association="_-Zu5npSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLD4JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD4ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m88uxq86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5pZSkEdmjauSjG8qO2A" name="base$Enumeration" association="_-Zu5opSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLD4pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD45SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9bRea86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5qZSkEdmjauSjG8qO2A" name="base$Interface" association="_-Zu5ppSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLD5JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD5ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9VJoq86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5rZSkEdmjauSjG8qO2A" name="base$Signal" association="_-Zu5qpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLD5pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD55SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9VJza86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu5sZSkEdmjauSjG8qO2A" name="base$PrimitiveType" association="_-Zu5rpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLD6JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD6ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9bRsa86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu54ZSkEdmjauSjG8qO2A" name="EJBNameInJAR">
-      <eAnnotations xmi:id="_-bLD6pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD65SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Zu54pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLD7JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLD7ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu545SkEdmjauSjG8qO2A" name="GenerateInstanceInitializer">
-      <eAnnotations xmi:id="_-bLD7pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD75SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Zu55JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLD8JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLD8ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu55ZSkEdmjauSjG8qO2A" name="ServletgetInfo">
-      <eAnnotations xmi:id="_-bLD8pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD85SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Zu55pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLD9JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLD9ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu555SkEdmjauSjG8qO2A" name="Final">
-      <eAnnotations xmi:id="_-bLD9pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD95SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Zu56JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLD-JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLD-ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu56ZSkEdmjauSjG8qO2A" name="ServletIntHeader">
-      <eAnnotations xmi:id="_-bLD-pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD-5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Zu56pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLD_JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLD_ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu565SkEdmjauSjG8qO2A" name="GenerateStaticInitializer">
-      <eAnnotations xmi:id="_-bLD_pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLD_5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Zu57JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEAJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEAZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu57ZSkEdmjauSjG8qO2A" name="EJBCmpField">
-      <eAnnotations xmi:id="_-bLEApSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEA5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Zu57pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEBJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEBZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Zu575SkEdmjauSjG8qO2A" name="MethodForHeaders">
-      <eAnnotations xmi:id="_-bLEBpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEB5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nEJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLECJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLECZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nEZSkEdmjauSjG8qO2A" name="ServletContentType">
-      <eAnnotations xmi:id="_-bLECpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEC5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nEpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEDJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEDZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nE5SkEdmjauSjG8qO2A" name="Static">
-      <eAnnotations xmi:id="_-bLEDpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLED5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nFJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEEJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEEZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nFZSkEdmjauSjG8qO2A" name="MethodForRequestAttributes">
-      <eAnnotations xmi:id="_-bLEEpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEE5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nFpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEFJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEFZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nF5SkEdmjauSjG8qO2A" name="ServletSecurityRoles">
-      <eAnnotations xmi:id="_-bLEFpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEF5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nGJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEGJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEGZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nGZSkEdmjauSjG8qO2A" name="ServletInitParameter">
-      <eAnnotations xmi:id="_-bLEGpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEG5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nGpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEHJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEHZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nG5SkEdmjauSjG8qO2A" name="DispatcherForward">
-      <eAnnotations xmi:id="_-bLEHpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEH5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nHJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEIJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEIZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nHZSkEdmjauSjG8qO2A" name="ServletRequestParameterNames">
-      <eAnnotations xmi:id="_-bLEIpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEI5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nHpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEJJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEJZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nH5SkEdmjauSjG8qO2A" name="ServletCookie">
-      <eAnnotations xmi:id="_-bLEJpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEJ5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nIJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEKJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEKZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nIZSkEdmjauSjG8qO2A" name="EJBReferences">
-      <eAnnotations xmi:id="_-bLEKpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEK5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nIpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLELJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLELZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nI5SkEdmjauSjG8qO2A" name="ServletContextRef">
-      <eAnnotations xmi:id="_-bLELpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEL5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nJJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEMJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEMZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nJZSkEdmjauSjG8qO2A" name="GenerateDefaultConstructor">
-      <eAnnotations xmi:id="_-bLEMpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEM5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nJpSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bLENJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLENZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nJ5SkEdmjauSjG8qO2A" name="ServletIsSecure">
-      <eAnnotations xmi:id="_-bLENpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEN5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nKJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEOJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEOZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nKZSkEdmjauSjG8qO2A" name="GenerateFinalizer">
-      <eAnnotations xmi:id="_-bLEOpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEO5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nKpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEPJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEPZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nK5SkEdmjauSjG8qO2A" name="EJBSessionType" type="_-Zu5spSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLEPpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEP5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-Z1nLJSkEdmjauSjG8qO2A" instance="_-Zu5s5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEQJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEQZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nLZSkEdmjauSjG8qO2A" name="DisableAutoSync">
-      <eAnnotations xmi:id="_-bLEQpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEQ5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nLpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLERJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLERZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nL5SkEdmjauSjG8qO2A" name="ServletInitParameterNames">
-      <eAnnotations xmi:id="_-bLERpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLER5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nMJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLESJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLESZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nMZSkEdmjauSjG8qO2A" name="BMP_Extend_CMP">
-      <eAnnotations xmi:id="_-bLESpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLES5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nMpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLETJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLETZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nM5SkEdmjauSjG8qO2A" name="EJBTransactionType" type="_-Zu505SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLETpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLET5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-Z1nNJSkEdmjauSjG8qO2A" instance="_-Zu51JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEUJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEUZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nNZSkEdmjauSjG8qO2A" name="DispatcherInclude">
-      <eAnnotations xmi:id="_-bLEUpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEU5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nNpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEVJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEVZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nN5SkEdmjauSjG8qO2A" name="ServletXMLFilePath">
-      <eAnnotations xmi:id="_-bLEVpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEV5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nOJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEWJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEWZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nOZSkEdmjauSjG8qO2A" name="ServletHeader">
-      <eAnnotations xmi:id="_-bLEWpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEW5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nOpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEXJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEXZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nO5SkEdmjauSjG8qO2A" name="ServletDateHeader">
-      <eAnnotations xmi:id="_-bLEXpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEX5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nPJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEYJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEYZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nPZSkEdmjauSjG8qO2A" name="Strictfp">
-      <eAnnotations xmi:id="_-bLEYpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEY5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nPpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEZJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEZZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nP5SkEdmjauSjG8qO2A" name="EJBSessionSync">
-      <eAnnotations xmi:id="_-bLEZpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEZ5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nQJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEaJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEaZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nQZSkEdmjauSjG8qO2A" name="EJBSecurityRoles">
-      <eAnnotations xmi:id="_-bLEapSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEa5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nQpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEbJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEbZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nQ5SkEdmjauSjG8qO2A" name="IsSingleThread">
-      <eAnnotations xmi:id="_-bLEbpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEb5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nRJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEcJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEcZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nRZSkEdmjauSjG8qO2A" name="ServletRequestAttributesNames">
-      <eAnnotations xmi:id="_-bLEcpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEc5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nRpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEdJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEdZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nR5SkEdmjauSjG8qO2A" name="ServletRequestDispatcherPath">
-      <eAnnotations xmi:id="_-bLEdpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEd5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nSJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEeJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEeZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nSZSkEdmjauSjG8qO2A" name="ServletHeaderNames">
-      <eAnnotations xmi:id="_-bLEepSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEe5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nSpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEfJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEfZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nS5SkEdmjauSjG8qO2A" name="MethodForCookie">
-      <eAnnotations xmi:id="_-bLEfpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEf5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nTJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEgJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEgZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nTZSkEdmjauSjG8qO2A" name="EJBVersion" type="_-Zu52pSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLEgpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEg5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-Z1nTpSkEdmjauSjG8qO2A" instance="_-Zu525SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEhJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEhZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nT5SkEdmjauSjG8qO2A" name="EJBPersistenceType" type="_-Zu5vJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLEhpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEh5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-Z1nUJSkEdmjauSjG8qO2A" instance="_-Zu5vZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEiJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEiZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nUZSkEdmjauSjG8qO2A" name="ConstructorIs" type="_-Zu5xpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLEipSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEi5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-Z1nUpSkEdmjauSjG8qO2A" instance="_-Zu5x5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEjJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEjZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nU5SkEdmjauSjG8qO2A" name="ReadOnly">
-      <eAnnotations xmi:id="_-bLEjpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEj5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nVJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEkJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEkZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nVZSkEdmjauSjG8qO2A" name="Generate_XML_DD">
-      <eAnnotations xmi:id="_-bLEkpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEk5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nVpSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bLElJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLElZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nV5SkEdmjauSjG8qO2A" name="ServletName">
-      <eAnnotations xmi:id="_-bLElpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEl5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nWJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEmJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEmZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nWZSkEdmjauSjG8qO2A" name="EJBXMLFilePath">
-      <eAnnotations xmi:id="_-bLEmpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEm5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nWpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEnJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEnZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nW5SkEdmjauSjG8qO2A" name="EJBCnxFactory">
-      <eAnnotations xmi:id="_-bLEnpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEn5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nXJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEoJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEoZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nXZSkEdmjauSjG8qO2A" name="ServletRequestDispatcher">
-      <eAnnotations xmi:id="_-bLEopSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEo5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nXpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEpJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEpZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nX5SkEdmjauSjG8qO2A" name="EJBReentrant">
-      <eAnnotations xmi:id="_-bLEppSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEp5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nYJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEqJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEqZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nYZSkEdmjauSjG8qO2A" name="MethodForRequestParameters">
-      <eAnnotations xmi:id="_-bLEqpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEq5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nYpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLErJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLErZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nY5SkEdmjauSjG8qO2A" name="EJBEnvironmentProperties">
-      <eAnnotations xmi:id="_-bLErpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEr5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nZJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEsJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEsZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nZZSkEdmjauSjG8qO2A" name="GenerateCode">
-      <eAnnotations xmi:id="_-bLEspSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEs5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1nZpSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bLEtJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEtZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1nZ5SkEdmjauSjG8qO2A" name="ServletRequestParameter">
-      <eAnnotations xmi:id="_-bLEtpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEt5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1naJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEuJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEuZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1naZSkEdmjauSjG8qO2A" name="GenerateHTML">
-      <eAnnotations xmi:id="_-bLEupSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEu5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z1napSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEvJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEvZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z1na5SkEdmjauSjG8qO2A" name="ServletRequestAttribute">
-      <eAnnotations xmi:id="_-bLEvpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEv5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z1nbJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEwJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEwZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Zu5mpSkEdmjauSjG8qO2A" name="Actor_Default_Servlet__Class" memberEnd="_-Zu5m5SkEdmjauSjG8qO2A _-Zu5nZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bLEwpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLEw5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Zu5m5SkEdmjauSjG8qO2A" name="extension$Default_Servlet__Class" type="_-Zu5lJSkEdmjauSjG8qO2A" association="_-Zu5mpSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bLExJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLExZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Zu5nJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLExpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEx5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Zu5npSkEdmjauSjG8qO2A" name="Class_Default_Servlet__Class" memberEnd="_-Zu5n5SkEdmjauSjG8qO2A _-Zu5oZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bLEyJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLEyZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Zu5n5SkEdmjauSjG8qO2A" name="extension$Default_Servlet__Class" type="_-Zu5lJSkEdmjauSjG8qO2A" association="_-Zu5npSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bLEypSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLEy5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Zu5oJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLEzJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLEzZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Zu5opSkEdmjauSjG8qO2A" name="Enumeration_Default_Servlet__Class" memberEnd="_-Zu5o5SkEdmjauSjG8qO2A _-Zu5pZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bLEzpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLEz5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Zu5o5SkEdmjauSjG8qO2A" name="extension$Default_Servlet__Class" type="_-Zu5lJSkEdmjauSjG8qO2A" association="_-Zu5opSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bLE0JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE0ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Zu5pJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLE0pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLE05SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Zu5ppSkEdmjauSjG8qO2A" name="Interface_Default_Servlet__Class" memberEnd="_-Zu5p5SkEdmjauSjG8qO2A _-Zu5qZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bLE1JSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLE1ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Zu5p5SkEdmjauSjG8qO2A" name="extension$Default_Servlet__Class" type="_-Zu5lJSkEdmjauSjG8qO2A" association="_-Zu5ppSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bLE1pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE15SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Zu5qJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLE2JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLE2ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Zu5qpSkEdmjauSjG8qO2A" name="Signal_Default_Servlet__Class" memberEnd="_-Zu5q5SkEdmjauSjG8qO2A _-Zu5rZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bLE2pSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLE25SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Zu5q5SkEdmjauSjG8qO2A" name="extension$Default_Servlet__Class" type="_-Zu5lJSkEdmjauSjG8qO2A" association="_-Zu5qpSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bLE3JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE3ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Zu5rJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLE3pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLE35SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Zu5rpSkEdmjauSjG8qO2A" name="PrimitiveType_Default_Servlet__Class" memberEnd="_-Zu5r5SkEdmjauSjG8qO2A _-Zu5sZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bLE4JSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLE4ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Zu5r5SkEdmjauSjG8qO2A" name="extension$Default_Servlet__Class" type="_-Zu5lJSkEdmjauSjG8qO2A" association="_-Zu5rpSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bLE4pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE45SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Zu5sJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLE5JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLE5ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Zu5spSkEdmjauSjG8qO2A" name="Default_Servlet__ClassEJBSessionType_Set">
-    <eAnnotations xmi:id="_-bLE5pSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLE55SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Zu5s5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-Zu5tJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5tZSkEdmjauSjG8qO2A" key="cardinal" value="200"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLE6JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE6ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5tpSkEdmjauSjG8qO2A" name="Stateless">
-      <eAnnotations xmi:id="_-Zu5t5SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5uJSkEdmjauSjG8qO2A" key="cardinal" value="201"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLE6pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE65SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5uZSkEdmjauSjG8qO2A" name="Stateful">
-      <eAnnotations xmi:id="_-Zu5upSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5u5SkEdmjauSjG8qO2A" key="cardinal" value="202"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLE7JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE7ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Zu5vJSkEdmjauSjG8qO2A" name="Default_Servlet__ClassEJBPersistenceType_Set">
-    <eAnnotations xmi:id="_-bLE7pSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLE75SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Zu5vZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-Zu5vpSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5v5SkEdmjauSjG8qO2A" key="cardinal" value="220"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLE8JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE8ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5wJSkEdmjauSjG8qO2A" name="Bean">
-      <eAnnotations xmi:id="_-Zu5wZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5wpSkEdmjauSjG8qO2A" key="cardinal" value="221"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLE8pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE85SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5w5SkEdmjauSjG8qO2A" name="Container">
-      <eAnnotations xmi:id="_-Zu5xJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5xZSkEdmjauSjG8qO2A" key="cardinal" value="222"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLE9JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE9ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Zu5xpSkEdmjauSjG8qO2A" name="Default_Servlet__ClassCtor_Set">
-    <eAnnotations xmi:id="_-bLE9pSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLE95SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Zu5x5SkEdmjauSjG8qO2A" name="public">
-      <eAnnotations xmi:id="_-Zu5yJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5yZSkEdmjauSjG8qO2A" key="cardinal" value="62"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLE-JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE-ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5ypSkEdmjauSjG8qO2A" name="protected">
-      <eAnnotations xmi:id="_-Zu5y5SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5zJSkEdmjauSjG8qO2A" key="cardinal" value="63"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLE-pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE-5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu5zZSkEdmjauSjG8qO2A" name="private">
-      <eAnnotations xmi:id="_-Zu5zpSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu5z5SkEdmjauSjG8qO2A" key="cardinal" value="64"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLE_JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE_ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu50JSkEdmjauSjG8qO2A" name="package">
-      <eAnnotations xmi:id="_-Zu50ZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu50pSkEdmjauSjG8qO2A" key="cardinal" value="65"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLE_pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLE_5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Zu505SkEdmjauSjG8qO2A" name="Default_Servlet__ClassEJBTransactionType_Set">
-    <eAnnotations xmi:id="_-bLFAJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLFAZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Zu51JSkEdmjauSjG8qO2A" name="Container">
-      <eAnnotations xmi:id="_-Zu51ZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu51pSkEdmjauSjG8qO2A" key="cardinal" value="211"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLFApSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFA5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu515SkEdmjauSjG8qO2A" name="Bean">
-      <eAnnotations xmi:id="_-Zu52JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu52ZSkEdmjauSjG8qO2A" key="cardinal" value="212"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLFBJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFBZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Zu52pSkEdmjauSjG8qO2A" name="Default_Servlet__ClassEJBVersion_Set">
-    <eAnnotations xmi:id="_-bLFBpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bLFB5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Zu525SkEdmjauSjG8qO2A" name="2.0">
-      <eAnnotations xmi:id="_-Zu53JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu53ZSkEdmjauSjG8qO2A" key="cardinal" value="230"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLFCJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFCZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Zu53pSkEdmjauSjG8qO2A" name="1.x">
-      <eAnnotations xmi:id="_-Zu535SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Zu54JSkEdmjauSjG8qO2A" key="cardinal" value="231"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bLFCpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFC5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Stereotype" xmi:id="_-Z1nbZSkEdmjauSjG8qO2A" name="default__Class">
-    <eAnnotations xmi:id="_-Z1nbpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-Z1nb5SkEdmjauSjG8qO2A" key="categoryName" value="Java"/>
-      <details xmi:id="_-Z1ncJSkEdmjauSjG8qO2A" key="suppressed" value="true"/>
-      <details xmi:id="_-bLFDJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_-Z1ncZSkEdmjauSjG8qO2A" source="keywords">
-      <details xmi:id="_-Z1ncpSkEdmjauSjG8qO2A" key="taggedValueSet"/>
-    </eAnnotations>
-    <ownedAttribute xmi:id="_-Z1ndpSkEdmjauSjG8qO2A" name="base$Actor" association="_-Z1nc5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLFDZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFDpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9ndca86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7tsZSkEdmjauSjG8qO2A" name="base$Class" association="_-Z1nd5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLFD5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFEJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m88uxq86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7ttZSkEdmjauSjG8qO2A" name="base$Enumeration" association="_-Z7tspSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLFEZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFEpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9bRea86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7tuZSkEdmjauSjG8qO2A" name="base$Interface" association="_-Z7ttpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLFE5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFFJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9VJoq86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7tvZSkEdmjauSjG8qO2A" name="base$Signal" association="_-Z7tupSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLFFZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFFpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9VJza86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7twZSkEdmjauSjG8qO2A" name="base$PrimitiveType" association="_-Z7tvpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLFF5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFGJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9bRsa86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7t8ZSkEdmjauSjG8qO2A" name="EJBNameInJAR">
-      <eAnnotations xmi:id="_-bLFGZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFGpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z7t8pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFG5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFHJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7t85SkEdmjauSjG8qO2A" name="ServletgetInfo">
-      <eAnnotations xmi:id="_-bLFHZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFHpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z7t9JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFH5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFIJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7t9ZSkEdmjauSjG8qO2A" name="GenerateInstanceInitializer">
-      <eAnnotations xmi:id="_-bLFIZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFIpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z7t9pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFI5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFJJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7t95SkEdmjauSjG8qO2A" name="Final">
-      <eAnnotations xmi:id="_-bLFJZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFJpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z7t-JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFJ5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFKJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7t-ZSkEdmjauSjG8qO2A" name="ServletIntHeader">
-      <eAnnotations xmi:id="_-bLFKZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFKpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z7t-pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFK5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFLJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7t-5SkEdmjauSjG8qO2A" name="GenerateStaticInitializer">
-      <eAnnotations xmi:id="_-bLFLZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFLpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z7t_JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFL5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFMJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7t_ZSkEdmjauSjG8qO2A" name="EJBCmpField">
-      <eAnnotations xmi:id="_-bLFMZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFMpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z7t_pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFM5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFNJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7t_5SkEdmjauSjG8qO2A" name="MethodForHeaders">
-      <eAnnotations xmi:id="_-bLFNZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFNpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z7uAJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFN5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFOJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7uAZSkEdmjauSjG8qO2A" name="ServletContentType">
-      <eAnnotations xmi:id="_-bLFOZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFOpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z7uApSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFO5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFPJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7uA5SkEdmjauSjG8qO2A" name="Static">
-      <eAnnotations xmi:id="_-bLFPZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFPpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z7uBJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFP5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFQJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7uBZSkEdmjauSjG8qO2A" name="MethodForRequestAttributes">
-      <eAnnotations xmi:id="_-bLFQZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFQpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z7uBpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFQ5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFRJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7uB5SkEdmjauSjG8qO2A" name="ServletSecurityRoles">
-      <eAnnotations xmi:id="_-bLFRZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFRpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z7uCJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFR5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFSJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7uCZSkEdmjauSjG8qO2A" name="ServletInitParameter">
-      <eAnnotations xmi:id="_-bLFSZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFSpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z7uCpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFS5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFTJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7uC5SkEdmjauSjG8qO2A" name="DispatcherForward">
-      <eAnnotations xmi:id="_-bLFTZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFTpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z7uDJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFT5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFUJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7uDZSkEdmjauSjG8qO2A" name="ServletRequestParameterNames">
-      <eAnnotations xmi:id="_-bLFUZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFUpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z7uDpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFU5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFVJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7uD5SkEdmjauSjG8qO2A" name="ServletCookie">
-      <eAnnotations xmi:id="_-bLFVZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFVpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-Z7uEJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFV5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFWJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7uEZSkEdmjauSjG8qO2A" name="EJBReferences">
-      <eAnnotations xmi:id="_-bLFWZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFWpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-Z7uEpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFW5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFXJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-Z7uE5SkEdmjauSjG8qO2A" name="ServletContextRef">
-      <eAnnotations xmi:id="_-bLFXZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFXpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0UJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFX5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFYJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0UZSkEdmjauSjG8qO2A" name="GenerateDefaultConstructor">
-      <eAnnotations xmi:id="_-bLFYZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFYpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0UpSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bLFY5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFZJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0U5SkEdmjauSjG8qO2A" name="ServletIsSecure">
-      <eAnnotations xmi:id="_-bLFZZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFZpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0VJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFZ5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFaJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0VZSkEdmjauSjG8qO2A" name="GenerateFinalizer">
-      <eAnnotations xmi:id="_-bLFaZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFapSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0VpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFa5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFbJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0V5SkEdmjauSjG8qO2A" name="EJBSessionType" type="_-Z7twpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLFbZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFbpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aB0WJSkEdmjauSjG8qO2A" instance="_-Z7tw5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFb5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFcJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0WZSkEdmjauSjG8qO2A" name="ServletInitParameterNames">
-      <eAnnotations xmi:id="_-bLFcZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFcpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0WpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFc5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFdJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0W5SkEdmjauSjG8qO2A" name="DisableAutoSync">
-      <eAnnotations xmi:id="_-bLFdZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFdpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0XJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFd5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFeJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0XZSkEdmjauSjG8qO2A" name="BMP_Extend_CMP">
-      <eAnnotations xmi:id="_-bLFeZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFepSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0XpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFe5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFfJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0X5SkEdmjauSjG8qO2A" name="EJBTransactionType" type="_-Z7t45SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bLFfZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFfpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aB0YJSkEdmjauSjG8qO2A" instance="_-Z7t5JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bLFf5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bLFgJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0YZSkEdmjauSjG8qO2A" name="DispatcherInclude">
-      <eAnnotations xmi:id="_-bLFgZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bLFgpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0YpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKcJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKcZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0Y5SkEdmjauSjG8qO2A" name="ServletXMLFilePath">
-      <eAnnotations xmi:id="_-bRKcpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKc5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0ZJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKdJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKdZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0ZZSkEdmjauSjG8qO2A" name="ServletHeader">
-      <eAnnotations xmi:id="_-bRKdpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKd5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0ZpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKeJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKeZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0Z5SkEdmjauSjG8qO2A" name="ServletDateHeader">
-      <eAnnotations xmi:id="_-bRKepSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKe5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0aJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKfJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKfZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0aZSkEdmjauSjG8qO2A" name="Strictfp">
-      <eAnnotations xmi:id="_-bRKfpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKf5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0apSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKgJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKgZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0a5SkEdmjauSjG8qO2A" name="EJBSessionSync">
-      <eAnnotations xmi:id="_-bRKgpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKg5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0bJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKhJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKhZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0bZSkEdmjauSjG8qO2A" name="EJBSecurityRoles">
-      <eAnnotations xmi:id="_-bRKhpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKh5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0bpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKiJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKiZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0b5SkEdmjauSjG8qO2A" name="IsSingleThread">
-      <eAnnotations xmi:id="_-bRKipSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKi5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0cJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKjJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKjZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0cZSkEdmjauSjG8qO2A" name="ServletRequestAttributesNames">
-      <eAnnotations xmi:id="_-bRKjpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKj5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0cpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKkJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKkZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0c5SkEdmjauSjG8qO2A" name="ServletRequestDispatcherPath">
-      <eAnnotations xmi:id="_-bRKkpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKk5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0dJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKlJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKlZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0dZSkEdmjauSjG8qO2A" name="ServletHeaderNames">
-      <eAnnotations xmi:id="_-bRKlpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKl5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0dpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKmJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKmZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0d5SkEdmjauSjG8qO2A" name="MethodForCookie">
-      <eAnnotations xmi:id="_-bRKmpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKm5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0eJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKnJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKnZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0eZSkEdmjauSjG8qO2A" name="EJBVersion" type="_-Z7t6pSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bRKnpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKn5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aB0epSkEdmjauSjG8qO2A" instance="_-Z7t65SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKoJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKoZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0e5SkEdmjauSjG8qO2A" name="EJBPersistenceType" type="_-Z7tzJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bRKopSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKo5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aB0fJSkEdmjauSjG8qO2A" instance="_-Z7tzZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKpJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKpZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0fZSkEdmjauSjG8qO2A" name="ConstructorIs" type="_-Z7t1pSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bRKppSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKp5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aB0fpSkEdmjauSjG8qO2A" instance="_-Z7t15SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKqJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKqZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0f5SkEdmjauSjG8qO2A" name="ReadOnly">
-      <eAnnotations xmi:id="_-bRKqpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKq5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0gJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKrJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKrZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0gZSkEdmjauSjG8qO2A" name="Generate_XML_DD">
-      <eAnnotations xmi:id="_-bRKrpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKr5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0gpSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bRKsJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKsZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0g5SkEdmjauSjG8qO2A" name="ServletName">
-      <eAnnotations xmi:id="_-bRKspSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKs5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0hJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKtJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKtZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0hZSkEdmjauSjG8qO2A" name="EJBXMLFilePath">
-      <eAnnotations xmi:id="_-bRKtpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKt5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0hpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKuJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKuZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0h5SkEdmjauSjG8qO2A" name="EJBCnxFactory">
-      <eAnnotations xmi:id="_-bRKupSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKu5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0iJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKvJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKvZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0iZSkEdmjauSjG8qO2A" name="ServletRequestDispatcher">
-      <eAnnotations xmi:id="_-bRKvpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKv5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0ipSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKwJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKwZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0i5SkEdmjauSjG8qO2A" name="EJBReentrant">
-      <eAnnotations xmi:id="_-bRKwpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKw5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0jJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKxJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKxZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0jZSkEdmjauSjG8qO2A" name="MethodForRequestParameters">
-      <eAnnotations xmi:id="_-bRKxpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKx5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0jpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKyJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKyZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0j5SkEdmjauSjG8qO2A" name="EJBEnvironmentProperties">
-      <eAnnotations xmi:id="_-bRKypSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKy5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0kJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRKzJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRKzZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0kZSkEdmjauSjG8qO2A" name="GenerateCode">
-      <eAnnotations xmi:id="_-bRKzpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRKz5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0kpSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bRK0JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRK0ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0k5SkEdmjauSjG8qO2A" name="ServletRequestParameter">
-      <eAnnotations xmi:id="_-bRK0pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRK05SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0lJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRK1JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRK1ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0lZSkEdmjauSjG8qO2A" name="GenerateHTML">
-      <eAnnotations xmi:id="_-bRK1pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRK15SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aB0lpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRK2JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRK2ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aB0l5SkEdmjauSjG8qO2A" name="ServletRequestAttribute">
-      <eAnnotations xmi:id="_-bRK2pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRK25SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aB0mJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRK3JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRK3ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Z1nc5SkEdmjauSjG8qO2A" name="Actor_default__Class" memberEnd="_-Z1ndJSkEdmjauSjG8qO2A _-Z1ndpSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bRK3pSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRK35SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Z1ndJSkEdmjauSjG8qO2A" name="extension$default__Class" type="_-Z1nbZSkEdmjauSjG8qO2A" association="_-Z1nc5SkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bRK4JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRK4ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Z1ndZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRK4pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRK45SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Z1nd5SkEdmjauSjG8qO2A" name="Class_default__Class" memberEnd="_-Z1neJSkEdmjauSjG8qO2A _-Z7tsZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bRK5JSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRK5ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Z1neJSkEdmjauSjG8qO2A" name="extension$default__Class" type="_-Z1nbZSkEdmjauSjG8qO2A" association="_-Z1nd5SkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bRK5pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRK55SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Z7tsJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRK6JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRK6ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Z7tspSkEdmjauSjG8qO2A" name="Enumeration_default__Class" memberEnd="_-Z7ts5SkEdmjauSjG8qO2A _-Z7ttZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bRK6pSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRK65SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Z7ts5SkEdmjauSjG8qO2A" name="extension$default__Class" type="_-Z1nbZSkEdmjauSjG8qO2A" association="_-Z7tspSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bRK7JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRK7ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Z7ttJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRK7pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRK75SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Z7ttpSkEdmjauSjG8qO2A" name="Interface_default__Class" memberEnd="_-Z7tt5SkEdmjauSjG8qO2A _-Z7tuZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bRK8JSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRK8ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Z7tt5SkEdmjauSjG8qO2A" name="extension$default__Class" type="_-Z1nbZSkEdmjauSjG8qO2A" association="_-Z7ttpSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bRK8pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRK85SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Z7tuJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRK9JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRK9ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Z7tupSkEdmjauSjG8qO2A" name="Signal_default__Class" memberEnd="_-Z7tu5SkEdmjauSjG8qO2A _-Z7tvZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bRK9pSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRK95SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Z7tu5SkEdmjauSjG8qO2A" name="extension$default__Class" type="_-Z1nbZSkEdmjauSjG8qO2A" association="_-Z7tupSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bRK-JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRK-ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Z7tvJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRK-pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRK-5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-Z7tvpSkEdmjauSjG8qO2A" name="PrimitiveType_default__Class" memberEnd="_-Z7tv5SkEdmjauSjG8qO2A _-Z7twZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bRK_JSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRK_ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-Z7tv5SkEdmjauSjG8qO2A" name="extension$default__Class" type="_-Z1nbZSkEdmjauSjG8qO2A" association="_-Z7tvpSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bRK_pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRK_5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-Z7twJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLAJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLAZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Z7twpSkEdmjauSjG8qO2A" name="default__ClassEJBSessionType_Set">
-    <eAnnotations xmi:id="_-bRLApSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRLA5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Z7tw5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-Z7txJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7txZSkEdmjauSjG8qO2A" key="cardinal" value="200"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLBJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLBZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Z7txpSkEdmjauSjG8qO2A" name="Stateless">
-      <eAnnotations xmi:id="_-Z7tx5SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7tyJSkEdmjauSjG8qO2A" key="cardinal" value="201"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLBpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLB5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Z7tyZSkEdmjauSjG8qO2A" name="Stateful">
-      <eAnnotations xmi:id="_-Z7typSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7ty5SkEdmjauSjG8qO2A" key="cardinal" value="202"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLCJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLCZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Z7tzJSkEdmjauSjG8qO2A" name="default__ClassEJBPersistenceType_Set">
-    <eAnnotations xmi:id="_-bRLCpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRLC5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Z7tzZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-Z7tzpSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7tz5SkEdmjauSjG8qO2A" key="cardinal" value="220"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLDJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLDZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Z7t0JSkEdmjauSjG8qO2A" name="Bean">
-      <eAnnotations xmi:id="_-Z7t0ZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7t0pSkEdmjauSjG8qO2A" key="cardinal" value="221"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLDpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLD5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Z7t05SkEdmjauSjG8qO2A" name="Container">
-      <eAnnotations xmi:id="_-Z7t1JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7t1ZSkEdmjauSjG8qO2A" key="cardinal" value="222"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLEJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLEZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Z7t1pSkEdmjauSjG8qO2A" name="default__ClassCtor_Set">
-    <eAnnotations xmi:id="_-bRLEpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRLE5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Z7t15SkEdmjauSjG8qO2A" name="public">
-      <eAnnotations xmi:id="_-Z7t2JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7t2ZSkEdmjauSjG8qO2A" key="cardinal" value="62"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLFJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLFZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Z7t2pSkEdmjauSjG8qO2A" name="protected">
-      <eAnnotations xmi:id="_-Z7t25SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7t3JSkEdmjauSjG8qO2A" key="cardinal" value="63"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLFpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLF5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Z7t3ZSkEdmjauSjG8qO2A" name="private">
-      <eAnnotations xmi:id="_-Z7t3pSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7t35SkEdmjauSjG8qO2A" key="cardinal" value="64"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLGJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLGZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Z7t4JSkEdmjauSjG8qO2A" name="package">
-      <eAnnotations xmi:id="_-Z7t4ZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7t4pSkEdmjauSjG8qO2A" key="cardinal" value="65"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLGpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLG5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Z7t45SkEdmjauSjG8qO2A" name="default__ClassEJBTransactionType_Set">
-    <eAnnotations xmi:id="_-bRLHJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRLHZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Z7t5JSkEdmjauSjG8qO2A" name="Container">
-      <eAnnotations xmi:id="_-Z7t5ZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7t5pSkEdmjauSjG8qO2A" key="cardinal" value="211"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLHpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLH5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Z7t55SkEdmjauSjG8qO2A" name="Bean">
-      <eAnnotations xmi:id="_-Z7t6JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7t6ZSkEdmjauSjG8qO2A" key="cardinal" value="212"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLIJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLIZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-Z7t6pSkEdmjauSjG8qO2A" name="default__ClassEJBVersion_Set">
-    <eAnnotations xmi:id="_-bRLIpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bRLI5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-Z7t65SkEdmjauSjG8qO2A" name="2.0">
-      <eAnnotations xmi:id="_-Z7t7JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7t7ZSkEdmjauSjG8qO2A" key="cardinal" value="230"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLJJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLJZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-Z7t7pSkEdmjauSjG8qO2A" name="1.x">
-      <eAnnotations xmi:id="_-Z7t75SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-Z7t8JSkEdmjauSjG8qO2A" key="cardinal" value="231"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bRLJpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLJ5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Stereotype" xmi:id="_-aB0mZSkEdmjauSjG8qO2A" name="default__Project">
-    <eAnnotations xmi:id="_-aB0mpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-aB0m5SkEdmjauSjG8qO2A" key="categoryName" value="Java"/>
-      <details xmi:id="_-aB0nJSkEdmjauSjG8qO2A" key="suppressed" value="true"/>
-      <details xmi:id="_-bRLKJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_-aB0nZSkEdmjauSjG8qO2A" source="keywords">
-      <details xmi:id="_-aB0npSkEdmjauSjG8qO2A" key="taggedValueSet"/>
-    </eAnnotations>
-    <ownedAttribute xmi:id="_-aB0opSkEdmjauSjG8qO2A" name="base$Model" association="_-aB0n5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bRLKZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLKpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9ndba86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH6-ZSkEdmjauSjG8qO2A" name="UserDefineTagApply3">
-      <eAnnotations xmi:id="_-bRLK5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLLJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH6-pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLLZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLLpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH6-5SkEdmjauSjG8qO2A" name="JavadocSince">
-      <eAnnotations xmi:id="_-bRLL5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLMJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH6_JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLMZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLMpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH6_ZSkEdmjauSjG8qO2A" name="GlobalImports">
-      <eAnnotations xmi:id="_-bRLM5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLNJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH6_pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLNZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLNpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH6_5SkEdmjauSjG8qO2A" name="GenerateDefaultReturnLine">
-      <eAnnotations xmi:id="_-bRLN5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLOJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7AJSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bRLOZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLOpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7AZSkEdmjauSjG8qO2A" name="InstanceVariablePrefix">
-      <eAnnotations xmi:id="_-bRLO5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLPJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7ApSkEdmjauSjG8qO2A" value="m_">
-        <eAnnotations xmi:id="_-bRLPZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLPpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7A5SkEdmjauSjG8qO2A" name="ShowCodegenDlg">
-      <eAnnotations xmi:id="_-bRLP5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLQJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7BJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLQZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLQpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7BZSkEdmjauSjG8qO2A" name="NoClassCustomDlg">
-      <eAnnotations xmi:id="_-bRLQ5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLRJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7BpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLRZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLRpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7B5SkEdmjauSjG8qO2A" name="SCCProjectName">
-      <eAnnotations xmi:id="_-bRLR5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLSJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7CJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLSZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLSpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7CZSkEdmjauSjG8qO2A" name="UseTabs">
-      <eAnnotations xmi:id="_-bRLS5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLTJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7CpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLTZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLTpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7C5SkEdmjauSjG8qO2A" name="DefaultAttributeDataType">
-      <eAnnotations xmi:id="_-bRLT5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLUJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7DJSkEdmjauSjG8qO2A" value="int">
-        <eAnnotations xmi:id="_-bRLUZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLUpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7DZSkEdmjauSjG8qO2A" name="LocalPrefix">
-      <eAnnotations xmi:id="_-bRLU5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLVJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7DpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLVZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLVpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7D5SkEdmjauSjG8qO2A" name="UserDefineJavaDocTags">
-      <eAnnotations xmi:id="_-bRLV5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLWJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7EJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLWZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLWpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7EZSkEdmjauSjG8qO2A" name="LocalHomeSuffix">
-      <eAnnotations xmi:id="_-bRLW5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLXJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7EpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLXZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLXpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7E5SkEdmjauSjG8qO2A" name="UserDefineTagText2">
-      <eAnnotations xmi:id="_-bRLX5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLYJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7FJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLYZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLYpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7FZSkEdmjauSjG8qO2A" name="HomeSuffix">
-      <eAnnotations xmi:id="_-bRLY5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLZJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7FpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLZZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLZpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7F5SkEdmjauSjG8qO2A" name="VAJavaWorkingFolder">
-      <eAnnotations xmi:id="_-bRLZ5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLaJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7GJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLaZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLapSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7GZSkEdmjauSjG8qO2A" name="DefaultEJBVersion">
-      <eAnnotations xmi:id="_-bRLa5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLbJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7GpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLbZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLbpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7G5SkEdmjauSjG8qO2A" name="MaxNumChars">
-      <eAnnotations xmi:id="_-bRLb5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLcJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8K86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_-aH7HJSkEdmjauSjG8qO2A" value="80">
-        <eAnnotations xmi:id="_-bRLcZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLcpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7HZSkEdmjauSjG8qO2A" name="UserDefineTagName2">
-      <eAnnotations xmi:id="_-bRLc5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLdJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7HpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLdZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLdpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7H5SkEdmjauSjG8qO2A" name="ServletDTDLocation">
-      <eAnnotations xmi:id="_-bRLd5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLeJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7IJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLeZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLepSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7IZSkEdmjauSjG8qO2A" name="UserDefineTagApply1">
-      <eAnnotations xmi:id="_-bRLe5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLfJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7IpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLfZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLfpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7I5SkEdmjauSjG8qO2A" name="GenerateRoseID">
-      <eAnnotations xmi:id="_-bRLf5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLgJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7JJSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bRLgZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLgpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7JZSkEdmjauSjG8qO2A" name="StopOnError">
-      <eAnnotations xmi:id="_-bRLg5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLhJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7JpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLhZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLhpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7J5SkEdmjauSjG8qO2A" name="JavadocVersion">
-      <eAnnotations xmi:id="_-bRLh5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLiJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7KJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLiZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLipSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7KZSkEdmjauSjG8qO2A" name="JavadocDefaultAuthor">
-      <eAnnotations xmi:id="_-bRLi5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLjJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7KpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLjZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLjpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7K5SkEdmjauSjG8qO2A" name="OpenBraceMethodStyle">
-      <eAnnotations xmi:id="_-bRLj5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLkJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7LJSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bRLkZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLkpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7LZSkEdmjauSjG8qO2A" name="AsteriskCommentStyle">
-      <eAnnotations xmi:id="_-bRLk5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLlJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7LpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLlZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLlpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7L5SkEdmjauSjG8qO2A" name="PrimaryKeySuffix">
-      <eAnnotations xmi:id="_-bRLl5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLmJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7MJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLmZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLmpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7MZSkEdmjauSjG8qO2A" name="Editor" type="_-aH68pSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bRLm5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLnJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aH7MpSkEdmjauSjG8qO2A" instance="_-aH685SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLnZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLnpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7M5SkEdmjauSjG8qO2A" name="UserDefineTagApply2">
-      <eAnnotations xmi:id="_-bRLn5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLoJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7NJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLoZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLopSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7NZSkEdmjauSjG8qO2A" name="GenerateDefaultJ2EEJavadoc">
-      <eAnnotations xmi:id="_-bRLo5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLpJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7NpSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bRLpZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLppSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7N5SkEdmjauSjG8qO2A" name="SpacingItems">
-      <eAnnotations xmi:id="_-bRLp5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLqJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8K86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_-aH7OJSkEdmjauSjG8qO2A" value="3">
-        <eAnnotations xmi:id="_-bRLqZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLqpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7OZSkEdmjauSjG8qO2A" name="EJBDTDLocation">
-      <eAnnotations xmi:id="_-bRLq5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLrJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7OpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLrZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLrpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7O5SkEdmjauSjG8qO2A" name="CreateMissingDirectories">
-      <eAnnotations xmi:id="_-bRLr5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLsJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7PJSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bRLsZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLspSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7PZSkEdmjauSjG8qO2A" name="UserDefineTagText3">
-      <eAnnotations xmi:id="_-bRLs5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLtJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7PpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLtZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLtpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7P5SkEdmjauSjG8qO2A" name="RemoteSuffix">
-      <eAnnotations xmi:id="_-bRLt5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLuJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7QJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLuZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLupSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7QZSkEdmjauSjG8qO2A" name="ReferenceClasspath">
-      <eAnnotations xmi:id="_-bRLu5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLvJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7QpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLvZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLvpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7Q5SkEdmjauSjG8qO2A" name="OpenBraceClassStyle">
-      <eAnnotations xmi:id="_-bRLv5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLwJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7RJSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bRLwZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLwpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7RZSkEdmjauSjG8qO2A" name="LocalSuffix">
-      <eAnnotations xmi:id="_-bRLw5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLxJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7RpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLxZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLxpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7R5SkEdmjauSjG8qO2A" name="VM" type="_-aB0o5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bRLx5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLyJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aH7SJSkEdmjauSjG8qO2A" instance="_-aB0pJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLyZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLypSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7SZSkEdmjauSjG8qO2A" name="DefaultServletVersion">
-      <eAnnotations xmi:id="_-bRLy5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRLzJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7SpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRLzZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRLzpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7S5SkEdmjauSjG8qO2A" name="UsePrefixes">
-      <eAnnotations xmi:id="_-bRLz5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL0JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7TJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL0ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL0pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7TZSkEdmjauSjG8qO2A" name="BeanSuffix">
-      <eAnnotations xmi:id="_-bRL05SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL1JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7TpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL1ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL1pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7T5SkEdmjauSjG8qO2A" name="BeanPrefix">
-      <eAnnotations xmi:id="_-bRL15SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL2JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7UJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL2ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL2pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7UZSkEdmjauSjG8qO2A" name="SCCComment">
-      <eAnnotations xmi:id="_-bRL25SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL3JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7UpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL3ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL3pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7U5SkEdmjauSjG8qO2A" name="RootDir">
-      <eAnnotations xmi:id="_-bRL35SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL4JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7VJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL4ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL4pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7VZSkEdmjauSjG8qO2A" name="UserDefineTagText1">
-      <eAnnotations xmi:id="_-bRL45SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL5JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7VpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL5ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL5pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7V5SkEdmjauSjG8qO2A" name="UserDefineTagName1">
-      <eAnnotations xmi:id="_-bRL55SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL6JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7WJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL6ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL6pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7WZSkEdmjauSjG8qO2A" name="AutoSync">
-      <eAnnotations xmi:id="_-bRL65SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL7JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7WpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL7ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL7pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7W5SkEdmjauSjG8qO2A" name="JavadocAuthor">
-      <eAnnotations xmi:id="_-bRL75SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL8JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7XJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL8ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL8pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7XZSkEdmjauSjG8qO2A" name="RoseDefaultCommentStyle">
-      <eAnnotations xmi:id="_-bRL85SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL9JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7XpSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bRL9ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL9pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7X5SkEdmjauSjG8qO2A" name="SCCProjectSourceRoot">
-      <eAnnotations xmi:id="_-bRL95SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL-JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7YJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL-ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL-pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7YZSkEdmjauSjG8qO2A" name="JavaCommentStyle">
-      <eAnnotations xmi:id="_-bRL-5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bRL_JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7YpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bRL_ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bRL_pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7Y5SkEdmjauSjG8qO2A" name="DefaultOperationReturnType">
-      <eAnnotations xmi:id="_-bRL_5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXREJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7ZJSkEdmjauSjG8qO2A" value="void">
-        <eAnnotations xmi:id="_-bXREZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXREpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7ZZSkEdmjauSjG8qO2A" name="UserDefineTagName3">
-      <eAnnotations xmi:id="_-bXRE5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRFJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7ZpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRFZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRFpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7Z5SkEdmjauSjG8qO2A" name="JavadocDefaultVersion">
-      <eAnnotations xmi:id="_-bXRF5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRGJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7aJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRGZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRGpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7aZSkEdmjauSjG8qO2A" name="NotShowRoseIDDlg">
-      <eAnnotations xmi:id="_-bXRG5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRHJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aH7apSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRHZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRHpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7a5SkEdmjauSjG8qO2A" name="RemotePrefix">
-      <eAnnotations xmi:id="_-bXRH5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRIJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aH7bJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRIZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRIpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aH7bZSkEdmjauSjG8qO2A" name="UseSpaces">
-      <eAnnotations xmi:id="_-bXRI5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRJJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOBkJSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bXRJZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRJpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBkZSkEdmjauSjG8qO2A" name="ClassVariablePrefix">
-      <eAnnotations xmi:id="_-bXRJ5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRKJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOBkpSkEdmjauSjG8qO2A" value="s_">
-        <eAnnotations xmi:id="_-bXRKZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRKpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBk5SkEdmjauSjG8qO2A" name="JavadocDefaultSince">
-      <eAnnotations xmi:id="_-bXRK5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRLJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOBlJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRLZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRLpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBlZSkEdmjauSjG8qO2A" name="SCCSelected">
-      <eAnnotations xmi:id="_-bXRL5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRMJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOBlpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRMZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRMpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBl5SkEdmjauSjG8qO2A" name="HomePrefix">
-      <eAnnotations xmi:id="_-bXRM5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRNJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOBmJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRNZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRNpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBmZSkEdmjauSjG8qO2A" name="LocalHomePrefix">
-      <eAnnotations xmi:id="_-bXRN5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXROJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOBmpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXROZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXROpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBm5SkEdmjauSjG8qO2A" name="ClassPath">
-      <eAnnotations xmi:id="_-bXRO5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRPJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOBnJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRPZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRPpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBnZSkEdmjauSjG8qO2A" name="SourceControl">
-      <eAnnotations xmi:id="_-bXRP5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRQJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOBnpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRQZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRQpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBn5SkEdmjauSjG8qO2A" name="JavadocNumAsterisks">
-      <eAnnotations xmi:id="_-bXRQ5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRRJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8K86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_-aOBoJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRRZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRRpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBoZSkEdmjauSjG8qO2A" name="PrimaryKeyPrefix">
-      <eAnnotations xmi:id="_-bXRR5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRSJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOBopSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRSZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRSpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-aB0n5SkEdmjauSjG8qO2A" name="Model_default__Project" memberEnd="_-aB0oJSkEdmjauSjG8qO2A _-aB0opSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bXRS5SkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXRTJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-aB0oJSkEdmjauSjG8qO2A" name="extension$default__Project" type="_-aB0mZSkEdmjauSjG8qO2A" association="_-aB0n5SkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bXRTZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRTpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-aB0oZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRT5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRUJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-aB0o5SkEdmjauSjG8qO2A" name="default__ProjectVMType">
-    <eAnnotations xmi:id="_-bXRUZSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXRUpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-aB0pJSkEdmjauSjG8qO2A" name="Sun">
-      <eAnnotations xmi:id="_-aB0pZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aB0ppSkEdmjauSjG8qO2A" key="cardinal" value="200"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXRU5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRVJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aB0p5SkEdmjauSjG8qO2A" name="Microsoft">
-      <eAnnotations xmi:id="_-aB0qJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aB0qZSkEdmjauSjG8qO2A" key="cardinal" value="201"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXRVZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRVpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aB0qpSkEdmjauSjG8qO2A" name="IBM">
-      <eAnnotations xmi:id="_-aH68JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aH68ZSkEdmjauSjG8qO2A" key="cardinal" value="202"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXRV5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRWJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-aH68pSkEdmjauSjG8qO2A" name="default__ProjectEditorType">
-    <eAnnotations xmi:id="_-bXRWZSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXRWpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-aH685SkEdmjauSjG8qO2A" name="BuiltIn">
-      <eAnnotations xmi:id="_-aH69JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aH69ZSkEdmjauSjG8qO2A" key="cardinal" value="100"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXRW5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRXJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aH69pSkEdmjauSjG8qO2A" name="WindowsShell">
-      <eAnnotations xmi:id="_-aH695SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aH6-JSkEdmjauSjG8qO2A" key="cardinal" value="101"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXRXZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRXpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Stereotype" xmi:id="_-aOBo5SkEdmjauSjG8qO2A" name="Default_EJB__Class">
-    <eAnnotations xmi:id="_-aOBpJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-aOBpZSkEdmjauSjG8qO2A" key="categoryName" value="Java"/>
-      <details xmi:id="_-aOBppSkEdmjauSjG8qO2A" key="suppressed" value="true"/>
-      <details xmi:id="_-bXRX5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_-aOBp5SkEdmjauSjG8qO2A" source="keywords">
-      <details xmi:id="_-aOBqJSkEdmjauSjG8qO2A" key="taggedValueSet"/>
-    </eAnnotations>
-    <ownedAttribute xmi:id="_-aOBrJSkEdmjauSjG8qO2A" name="base$Actor" association="_-aOBqZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXRYJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRYZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9ndca86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBsJSkEdmjauSjG8qO2A" name="base$Class" association="_-aOBrZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXRYpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRY5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m88uxq86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBtJSkEdmjauSjG8qO2A" name="base$Enumeration" association="_-aOBsZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXRZJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRZZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9bRea86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBuJSkEdmjauSjG8qO2A" name="base$Interface" association="_-aOBtZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXRZpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRZ5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9VJoq86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBvJSkEdmjauSjG8qO2A" name="base$Signal" association="_-aOBuZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXRaJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRaZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9VJza86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOBwJSkEdmjauSjG8qO2A" name="base$PrimitiveType" association="_-aOBvZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXRapSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRa5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9bRsa86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOB8JSkEdmjauSjG8qO2A" name="EJBNameInJAR">
-      <eAnnotations xmi:id="_-bXRbJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRbZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOB8ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRbpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRb5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOB8pSkEdmjauSjG8qO2A" name="GenerateInstanceInitializer">
-      <eAnnotations xmi:id="_-bXRcJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRcZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOB85SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRcpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRc5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOB9JSkEdmjauSjG8qO2A" name="ServletgetInfo">
-      <eAnnotations xmi:id="_-bXRdJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRdZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOB9ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRdpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRd5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOB9pSkEdmjauSjG8qO2A" name="Final">
-      <eAnnotations xmi:id="_-bXReJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXReZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOB95SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRepSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRe5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOB-JSkEdmjauSjG8qO2A" name="ServletIntHeader">
-      <eAnnotations xmi:id="_-bXRfJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRfZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOB-ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRfpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRf5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOB-pSkEdmjauSjG8qO2A" name="GenerateStaticInitializer">
-      <eAnnotations xmi:id="_-bXRgJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRgZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOB-5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRgpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRg5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOB_JSkEdmjauSjG8qO2A" name="EJBCmpField">
-      <eAnnotations xmi:id="_-bXRhJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRhZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOB_ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRhpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRh5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOB_pSkEdmjauSjG8qO2A" name="MethodForHeaders">
-      <eAnnotations xmi:id="_-bXRiJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRiZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOB_5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRipSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRi5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCAJSkEdmjauSjG8qO2A" name="ServletContentType">
-      <eAnnotations xmi:id="_-bXRjJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRjZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOCAZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRjpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRj5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCApSkEdmjauSjG8qO2A" name="Static">
-      <eAnnotations xmi:id="_-bXRkJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRkZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOCA5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRkpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRk5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCBJSkEdmjauSjG8qO2A" name="MethodForRequestAttributes">
-      <eAnnotations xmi:id="_-bXRlJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRlZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOCBZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRlpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRl5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCBpSkEdmjauSjG8qO2A" name="ServletSecurityRoles">
-      <eAnnotations xmi:id="_-bXRmJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRmZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOCB5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRmpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRm5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCCJSkEdmjauSjG8qO2A" name="ServletInitParameter">
-      <eAnnotations xmi:id="_-bXRnJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRnZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOCCZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRnpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRn5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCCpSkEdmjauSjG8qO2A" name="DispatcherForward">
-      <eAnnotations xmi:id="_-bXRoJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRoZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOCC5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRopSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRo5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCDJSkEdmjauSjG8qO2A" name="ServletRequestParameterNames">
-      <eAnnotations xmi:id="_-bXRpJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRpZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOCDZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRppSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRp5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCDpSkEdmjauSjG8qO2A" name="ServletCookie">
-      <eAnnotations xmi:id="_-bXRqJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRqZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOCD5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRqpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRq5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCEJSkEdmjauSjG8qO2A" name="EJBReferences">
-      <eAnnotations xmi:id="_-bXRrJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRrZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aOCEZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRrpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRr5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCEpSkEdmjauSjG8qO2A" name="ServletContextRef">
-      <eAnnotations xmi:id="_-bXRsJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRsZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOCE5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRspSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRs5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCFJSkEdmjauSjG8qO2A" name="GenerateDefaultConstructor">
-      <eAnnotations xmi:id="_-bXRtJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRtZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOCFZSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bXRtpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRt5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCFpSkEdmjauSjG8qO2A" name="ServletIsSecure">
-      <eAnnotations xmi:id="_-bXRuJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRuZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOCF5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRupSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRu5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCGJSkEdmjauSjG8qO2A" name="GenerateFinalizer">
-      <eAnnotations xmi:id="_-bXRvJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRvZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOCGZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRvpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRv5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCGpSkEdmjauSjG8qO2A" name="EJBSessionType" type="_-aOBwZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXRwJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRwZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aOCG5SkEdmjauSjG8qO2A" instance="_-aOBwpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRwpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRw5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aOCHJSkEdmjauSjG8qO2A" name="DisableAutoSync">
-      <eAnnotations xmi:id="_-bXRxJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRxZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aOCHZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRxpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRx5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUIMJSkEdmjauSjG8qO2A" name="ServletInitParameterNames">
-      <eAnnotations xmi:id="_-bXRyJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRyZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aUIMZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRypSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRy5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUIMpSkEdmjauSjG8qO2A" name="BMP_Extend_CMP">
-      <eAnnotations xmi:id="_-bXRzJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXRzZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aUIM5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXRzpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXRz5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUINJSkEdmjauSjG8qO2A" name="EJBTransactionType" type="_-aOB4pSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXR0JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR0ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aUINZSkEdmjauSjG8qO2A" instance="_-aOB45SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR0pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR05SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUINpSkEdmjauSjG8qO2A" name="DispatcherInclude">
-      <eAnnotations xmi:id="_-bXR1JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR1ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aUIN5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR1pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR15SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUIOJSkEdmjauSjG8qO2A" name="ServletXMLFilePath">
-      <eAnnotations xmi:id="_-bXR2JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR2ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aUIOZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR2pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR25SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUIOpSkEdmjauSjG8qO2A" name="ServletHeader">
-      <eAnnotations xmi:id="_-bXR3JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR3ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aUIO5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR3pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR35SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUIPJSkEdmjauSjG8qO2A" name="ServletDateHeader">
-      <eAnnotations xmi:id="_-bXR4JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR4ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aUIPZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR4pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR45SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUIPpSkEdmjauSjG8qO2A" name="Strictfp">
-      <eAnnotations xmi:id="_-bXR5JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR5ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aUIP5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR5pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR55SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUIQJSkEdmjauSjG8qO2A" name="EJBSessionSync">
-      <eAnnotations xmi:id="_-bXR6JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR6ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aUIQZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR6pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR65SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUIQpSkEdmjauSjG8qO2A" name="EJBSecurityRoles">
-      <eAnnotations xmi:id="_-bXR7JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR7ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aUIQ5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR7pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR75SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUIRJSkEdmjauSjG8qO2A" name="IsSingleThread">
-      <eAnnotations xmi:id="_-bXR8JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR8ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aUIRZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR8pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR85SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUIRpSkEdmjauSjG8qO2A" name="ServletRequestDispatcherPath">
-      <eAnnotations xmi:id="_-bXR9JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR9ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aUIR5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR9pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR95SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUISJSkEdmjauSjG8qO2A" name="ServletRequestAttributesNames">
-      <eAnnotations xmi:id="_-bXR-JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR-ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aUISZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR-pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR-5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUISpSkEdmjauSjG8qO2A" name="ServletHeaderNames">
-      <eAnnotations xmi:id="_-bXR_JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXR_ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aUIS5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXR_pSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXR_5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUITJSkEdmjauSjG8qO2A" name="MethodForCookie">
-      <eAnnotations xmi:id="_-bXSAJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSAZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aUITZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSApSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSA5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aUITpSkEdmjauSjG8qO2A" name="EJBVersion" type="_-aOB6ZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXSBJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSBZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aUIT5SkEdmjauSjG8qO2A" instance="_-aOB6pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSBpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSB5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO0JSkEdmjauSjG8qO2A" name="EJBPersistenceType" type="_-aOB2JSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXSCJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSCZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aaO0ZSkEdmjauSjG8qO2A" instance="_-aOB2ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSCpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSC5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO0pSkEdmjauSjG8qO2A" name="ConstructorIs" type="_-aOBy5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bXSDJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSDZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-aaO05SkEdmjauSjG8qO2A" instance="_-aOBzJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSDpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSD5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO1JSkEdmjauSjG8qO2A" name="ReadOnly">
-      <eAnnotations xmi:id="_-bXSEJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSEZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaO1ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSEpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSE5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO1pSkEdmjauSjG8qO2A" name="Generate_XML_DD">
-      <eAnnotations xmi:id="_-bXSFJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSFZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaO15SkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bXSFpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSF5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO2JSkEdmjauSjG8qO2A" name="ServletName">
-      <eAnnotations xmi:id="_-bXSGJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSGZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aaO2ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSGpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSG5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO2pSkEdmjauSjG8qO2A" name="EJBXMLFilePath">
-      <eAnnotations xmi:id="_-bXSHJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSHZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aaO25SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSHpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSH5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO3JSkEdmjauSjG8qO2A" name="EJBCnxFactory">
-      <eAnnotations xmi:id="_-bXSIJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSIZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aaO3ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSIpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSI5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO3pSkEdmjauSjG8qO2A" name="ServletRequestDispatcher">
-      <eAnnotations xmi:id="_-bXSJJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSJZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaO35SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSJpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSJ5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO4JSkEdmjauSjG8qO2A" name="EJBReentrant">
-      <eAnnotations xmi:id="_-bXSKJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSKZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaO4ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSKpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSK5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO4pSkEdmjauSjG8qO2A" name="MethodForRequestParameters">
-      <eAnnotations xmi:id="_-bXSLJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSLZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aaO45SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSLpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSL5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO5JSkEdmjauSjG8qO2A" name="EJBEnvironmentProperties">
-      <eAnnotations xmi:id="_-bXSMJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSMZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aaO5ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSMpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSM5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO5pSkEdmjauSjG8qO2A" name="GenerateCode">
-      <eAnnotations xmi:id="_-bXSNJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSNZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaO55SkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bXSNpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSN5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO6JSkEdmjauSjG8qO2A" name="ServletRequestParameter">
-      <eAnnotations xmi:id="_-bXSOJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSOZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aaO6ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSOpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSO5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO6pSkEdmjauSjG8qO2A" name="GenerateHTML">
-      <eAnnotations xmi:id="_-bXSPJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSPZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaO65SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSPpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSP5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO7JSkEdmjauSjG8qO2A" name="ServletRequestAttribute">
-      <eAnnotations xmi:id="_-bXSQJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSQZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-aaO7ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSQpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSQ5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-aOBqZSkEdmjauSjG8qO2A" name="Actor_Default_EJB__Class" memberEnd="_-aOBqpSkEdmjauSjG8qO2A _-aOBrJSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bXSRJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXSRZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-aOBqpSkEdmjauSjG8qO2A" name="extension$Default_EJB__Class" type="_-aOBo5SkEdmjauSjG8qO2A" association="_-aOBqZSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bXSRpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSR5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-aOBq5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSSJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSSZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-aOBrZSkEdmjauSjG8qO2A" name="Class_Default_EJB__Class" memberEnd="_-aOBrpSkEdmjauSjG8qO2A _-aOBsJSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bXSSpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXSS5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-aOBrpSkEdmjauSjG8qO2A" name="extension$Default_EJB__Class" type="_-aOBo5SkEdmjauSjG8qO2A" association="_-aOBrZSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bXSTJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSTZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-aOBr5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSTpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXST5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-aOBsZSkEdmjauSjG8qO2A" name="Enumeration_Default_EJB__Class" memberEnd="_-aOBspSkEdmjauSjG8qO2A _-aOBtJSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bXSUJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXSUZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-aOBspSkEdmjauSjG8qO2A" name="extension$Default_EJB__Class" type="_-aOBo5SkEdmjauSjG8qO2A" association="_-aOBsZSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bXSUpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSU5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-aOBs5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSVJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSVZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-aOBtZSkEdmjauSjG8qO2A" name="Interface_Default_EJB__Class" memberEnd="_-aOBtpSkEdmjauSjG8qO2A _-aOBuJSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bXSVpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXSV5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-aOBtpSkEdmjauSjG8qO2A" name="extension$Default_EJB__Class" type="_-aOBo5SkEdmjauSjG8qO2A" association="_-aOBtZSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bXSWJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSWZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-aOBt5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSWpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSW5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-aOBuZSkEdmjauSjG8qO2A" name="Signal_Default_EJB__Class" memberEnd="_-aOBupSkEdmjauSjG8qO2A _-aOBvJSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bXSXJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXSXZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-aOBupSkEdmjauSjG8qO2A" name="extension$Default_EJB__Class" type="_-aOBo5SkEdmjauSjG8qO2A" association="_-aOBuZSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bXSXpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSX5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-aOBu5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSYJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSYZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-aOBvZSkEdmjauSjG8qO2A" name="PrimitiveType_Default_EJB__Class" memberEnd="_-aOBvpSkEdmjauSjG8qO2A _-aOBwJSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bXSYpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXSY5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-aOBvpSkEdmjauSjG8qO2A" name="extension$Default_EJB__Class" type="_-aOBo5SkEdmjauSjG8qO2A" association="_-aOBvZSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bXSZJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSZZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-aOBv5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bXSZpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bXSZ5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-aOBwZSkEdmjauSjG8qO2A" name="Default_EJB__ClassEJBSessionType_Set">
-    <eAnnotations xmi:id="_-bXSaJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXSaZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-aOBwpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-aOBw5SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOBxJSkEdmjauSjG8qO2A" key="cardinal" value="200"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXSapSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSa5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aOBxZSkEdmjauSjG8qO2A" name="Stateless">
-      <eAnnotations xmi:id="_-aOBxpSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOBx5SkEdmjauSjG8qO2A" key="cardinal" value="201"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXSbJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSbZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aOByJSkEdmjauSjG8qO2A" name="Stateful">
-      <eAnnotations xmi:id="_-aOByZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOBypSkEdmjauSjG8qO2A" key="cardinal" value="202"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXSbpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSb5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-aOBy5SkEdmjauSjG8qO2A" name="Default_EJB__ClassCtor_Set">
-    <eAnnotations xmi:id="_-bXScJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXScZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-aOBzJSkEdmjauSjG8qO2A" name="public">
-      <eAnnotations xmi:id="_-aOBzZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOBzpSkEdmjauSjG8qO2A" key="cardinal" value="62"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXScpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSc5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aOBz5SkEdmjauSjG8qO2A" name="protected">
-      <eAnnotations xmi:id="_-aOB0JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOB0ZSkEdmjauSjG8qO2A" key="cardinal" value="63"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXSdJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSdZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aOB0pSkEdmjauSjG8qO2A" name="private">
-      <eAnnotations xmi:id="_-aOB05SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOB1JSkEdmjauSjG8qO2A" key="cardinal" value="64"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXSdpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSd5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aOB1ZSkEdmjauSjG8qO2A" name="package">
-      <eAnnotations xmi:id="_-aOB1pSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOB15SkEdmjauSjG8qO2A" key="cardinal" value="65"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bXSeJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bXSeZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-aOB2JSkEdmjauSjG8qO2A" name="Default_EJB__ClassEJBPersistenceType_Set">
-    <eAnnotations xmi:id="_-bXSepSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bXSe5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-aOB2ZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-aOB2pSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOB25SkEdmjauSjG8qO2A" key="cardinal" value="220"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdXsJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXsZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aOB3JSkEdmjauSjG8qO2A" name="Bean">
-      <eAnnotations xmi:id="_-aOB3ZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOB3pSkEdmjauSjG8qO2A" key="cardinal" value="221"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdXspSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXs5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aOB35SkEdmjauSjG8qO2A" name="Container">
-      <eAnnotations xmi:id="_-aOB4JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOB4ZSkEdmjauSjG8qO2A" key="cardinal" value="222"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdXtJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXtZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-aOB4pSkEdmjauSjG8qO2A" name="Default_EJB__ClassEJBTransactionType_Set">
-    <eAnnotations xmi:id="_-bdXtpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bdXt5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-aOB45SkEdmjauSjG8qO2A" name="Container">
-      <eAnnotations xmi:id="_-aOB5JSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOB5ZSkEdmjauSjG8qO2A" key="cardinal" value="211"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdXuJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXuZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aOB5pSkEdmjauSjG8qO2A" name="Bean">
-      <eAnnotations xmi:id="_-aOB55SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOB6JSkEdmjauSjG8qO2A" key="cardinal" value="212"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdXupSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXu5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-aOB6ZSkEdmjauSjG8qO2A" name="Default_EJB__ClassEJBVersion_Set">
-    <eAnnotations xmi:id="_-bdXvJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bdXvZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-aOB6pSkEdmjauSjG8qO2A" name="2.0">
-      <eAnnotations xmi:id="_-aOB65SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOB7JSkEdmjauSjG8qO2A" key="cardinal" value="230"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdXvpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXv5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aOB7ZSkEdmjauSjG8qO2A" name="1.x">
-      <eAnnotations xmi:id="_-aOB7pSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aOB75SkEdmjauSjG8qO2A" key="cardinal" value="231"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdXwJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXwZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Stereotype" xmi:id="_-aaO7pSkEdmjauSjG8qO2A" name="default__Operation">
-    <eAnnotations xmi:id="_-aaO75SkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-aaO8JSkEdmjauSjG8qO2A" key="categoryName" value="Java"/>
-      <details xmi:id="_-aaO8ZSkEdmjauSjG8qO2A" key="suppressed" value="true"/>
-      <details xmi:id="_-bdXwpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_-aaO8pSkEdmjauSjG8qO2A" source="keywords">
-      <details xmi:id="_-aaO85SkEdmjauSjG8qO2A" key="taggedValueSet"/>
-    </eAnnotations>
-    <ownedAttribute xmi:id="_-aaO95SkEdmjauSjG8qO2A" name="base$Operation" association="_-aaO9JSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdXw5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXxJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9C2ja86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO-JSkEdmjauSjG8qO2A" name="ReplaceExistingCode">
-      <eAnnotations xmi:id="_-bdXxZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXxpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaO-ZSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bdXx5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdXyJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO-pSkEdmjauSjG8qO2A" name="Final">
-      <eAnnotations xmi:id="_-bdXyZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXypSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaO-5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdXy5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdXzJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO_JSkEdmjauSjG8qO2A" name="GenerateFullyQualifiedReturn">
-      <eAnnotations xmi:id="_-bdXzZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdXzpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaO_ZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdXz5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX0JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaO_pSkEdmjauSjG8qO2A" name="Strictfp">
-      <eAnnotations xmi:id="_-bdX0ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX0pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaO_5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdX05SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX1JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaPAJSkEdmjauSjG8qO2A" name="Native">
-      <eAnnotations xmi:id="_-bdX1ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX1pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaPAZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdX15SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX2JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaPApSkEdmjauSjG8qO2A" name="Abstract">
-      <eAnnotations xmi:id="_-bdX2ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX2pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaPA5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdX25SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX3JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaPBJSkEdmjauSjG8qO2A" name="Synchronized">
-      <eAnnotations xmi:id="_-bdX3ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX3pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaPBZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdX35SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX4JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-aaPBpSkEdmjauSjG8qO2A" name="Static">
-      <eAnnotations xmi:id="_-bdX4ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX4pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-aaPB5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdX45SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX5JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-aaO9JSkEdmjauSjG8qO2A" name="Operation_default__Operation" memberEnd="_-aaO9ZSkEdmjauSjG8qO2A _-aaO95SkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bdX5ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bdX5pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-aaO9ZSkEdmjauSjG8qO2A" name="extension$default__Operation" type="_-aaO7pSkEdmjauSjG8qO2A" association="_-aaO9JSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bdX55SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX6JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-aaO9pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdX6ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX6pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Stereotype" xmi:id="_-aaPCJSkEdmjauSjG8qO2A" name="default__Role">
-    <eAnnotations xmi:id="_-aaPCZSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-aaPCpSkEdmjauSjG8qO2A" key="categoryName" value="Java"/>
-      <details xmi:id="_-aaPC5SkEdmjauSjG8qO2A" key="suppressed" value="true"/>
-      <details xmi:id="_-bdX65SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_-aaPDJSkEdmjauSjG8qO2A" source="keywords">
-      <details xmi:id="_-aaPDZSkEdmjauSjG8qO2A" key="taggedValueSet"/>
-    </eAnnotations>
-    <ownedAttribute xmi:id="_-aaPEZSkEdmjauSjG8qO2A" name="base$Property" association="_-aaPDpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdX7JSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX7ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9C1la86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVcpSkEdmjauSjG8qO2A" name="ReadWrite" type="_-aaPEpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdX7pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX75SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-agVc5SkEdmjauSjG8qO2A" instance="_-aaPE5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdX8JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX8ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVdJSkEdmjauSjG8qO2A" name="InitialValue">
-      <eAnnotations xmi:id="_-bdX8pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX85SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-agVdZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdX9JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX9ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVdpSkEdmjauSjG8qO2A" name="PropertyType" type="_-aaPHJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdX9pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX95SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-agVd5SkEdmjauSjG8qO2A" instance="_-aaPHZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdX-JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX-ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVeJSkEdmjauSjG8qO2A" name="GenerateFullyQualifiedTypes">
-      <eAnnotations xmi:id="_-bdX-pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX-5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agVeZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdX_JSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdX_ZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVepSkEdmjauSjG8qO2A" name="Final">
-      <eAnnotations xmi:id="_-bdX_pSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdX_5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agVe5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYAJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYAZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVfJSkEdmjauSjG8qO2A" name="Transient">
-      <eAnnotations xmi:id="_-bdYApSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYA5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agVfZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYBJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYBZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVfpSkEdmjauSjG8qO2A" name="Volatile">
-      <eAnnotations xmi:id="_-bdYBpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYB5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agVf5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYCJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYCZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVgJSkEdmjauSjG8qO2A" name="IsNavigable">
-      <eAnnotations xmi:id="_-bdYCpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYC5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agVgZSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bdYDJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYDZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVgpSkEdmjauSjG8qO2A" name="IndividualChangeMgt">
-      <eAnnotations xmi:id="_-bdYDpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYD5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agVg5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYEJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYEZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVhJSkEdmjauSjG8qO2A" name="ContainerClass">
-      <eAnnotations xmi:id="_-bdYEpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYE5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-agVhZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYFJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYFZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-aaPDpSkEdmjauSjG8qO2A" name="Property_default__Role" memberEnd="_-aaPD5SkEdmjauSjG8qO2A _-aaPEZSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bdYFpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bdYF5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-aaPD5SkEdmjauSjG8qO2A" name="extension$default__Role" type="_-aaPCJSkEdmjauSjG8qO2A" association="_-aaPDpSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bdYGJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYGZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-aaPEJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYGpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYG5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-aaPEpSkEdmjauSjG8qO2A" name="default__RoleReadWrite_Set">
-    <eAnnotations xmi:id="_-bdYHJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bdYHZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-aaPE5SkEdmjauSjG8qO2A" name="Read &amp; Write">
-      <eAnnotations xmi:id="_-aaPFJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aaPFZSkEdmjauSjG8qO2A" key="cardinal" value="81"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdYHpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYH5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aaPFpSkEdmjauSjG8qO2A" name="Read Only">
-      <eAnnotations xmi:id="_-aaPF5SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aaPGJSkEdmjauSjG8qO2A" key="cardinal" value="82"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdYIJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYIZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aaPGZSkEdmjauSjG8qO2A" name="Write Only">
-      <eAnnotations xmi:id="_-aaPGpSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aaPG5SkEdmjauSjG8qO2A" key="cardinal" value="83"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdYIpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYI5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-aaPHJSkEdmjauSjG8qO2A" name="default__RoleBeanProperty_Set">
-    <eAnnotations xmi:id="_-bdYJJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bdYJZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-aaPHZSkEdmjauSjG8qO2A" name="Not A Property">
-      <eAnnotations xmi:id="_-aaPHpSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aaPH5SkEdmjauSjG8qO2A" key="cardinal" value="71"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdYJpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYJ5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aaPIJSkEdmjauSjG8qO2A" name="Simple">
-      <eAnnotations xmi:id="_-aaPIZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aaPIpSkEdmjauSjG8qO2A" key="cardinal" value="72"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdYKJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYKZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aaPI5SkEdmjauSjG8qO2A" name="Bound">
-      <eAnnotations xmi:id="_-aaPJJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-aaPJZSkEdmjauSjG8qO2A" key="cardinal" value="73"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdYKpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYK5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-aaPJpSkEdmjauSjG8qO2A" name="Constrained">
-      <eAnnotations xmi:id="_-agVcJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVcZSkEdmjauSjG8qO2A" key="cardinal" value="74"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bdYLJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYLZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Stereotype" xmi:id="_-agVhpSkEdmjauSjG8qO2A" name="Http_Servlet__Class">
-    <eAnnotations xmi:id="_-agVh5SkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-agViJSkEdmjauSjG8qO2A" key="categoryName" value="Java"/>
-      <details xmi:id="_-agViZSkEdmjauSjG8qO2A" key="suppressed" value="true"/>
-      <details xmi:id="_-bdYLpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_-agVipSkEdmjauSjG8qO2A" source="keywords">
-      <details xmi:id="_-agVi5SkEdmjauSjG8qO2A" key="taggedValueSet"/>
-    </eAnnotations>
-    <ownedAttribute xmi:id="_-agVj5SkEdmjauSjG8qO2A" name="base$Actor" association="_-agVjJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdYL5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYMJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9ndca86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVk5SkEdmjauSjG8qO2A" name="base$Class" association="_-agVkJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdYMZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYMpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m88uxq86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVl5SkEdmjauSjG8qO2A" name="base$Enumeration" association="_-agVlJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdYM5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYNJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9bRea86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVm5SkEdmjauSjG8qO2A" name="base$Interface" association="_-agVmJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdYNZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYNpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9VJoq86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVn5SkEdmjauSjG8qO2A" name="base$Signal" association="_-agVnJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdYN5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYOJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9VJza86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agVo5SkEdmjauSjG8qO2A" name="base$PrimitiveType" association="_-agVoJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdYOZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYOpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9bRsa86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV05SkEdmjauSjG8qO2A" name="EJBNameInJAR">
-      <eAnnotations xmi:id="_-bdYO5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYPJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-agV1JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYPZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYPpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV1ZSkEdmjauSjG8qO2A" name="GenerateInstanceInitializer">
-      <eAnnotations xmi:id="_-bdYP5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYQJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agV1pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYQZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYQpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV15SkEdmjauSjG8qO2A" name="ServletgetInfo">
-      <eAnnotations xmi:id="_-bdYQ5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYRJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-agV2JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYRZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYRpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV2ZSkEdmjauSjG8qO2A" name="Final">
-      <eAnnotations xmi:id="_-bdYR5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYSJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agV2pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYSZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYSpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV25SkEdmjauSjG8qO2A" name="ServletIntHeader">
-      <eAnnotations xmi:id="_-bdYS5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYTJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agV3JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYTZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYTpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV3ZSkEdmjauSjG8qO2A" name="GenerateStaticInitializer">
-      <eAnnotations xmi:id="_-bdYT5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYUJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agV3pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYUZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYUpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV35SkEdmjauSjG8qO2A" name="EJBCmpField">
-      <eAnnotations xmi:id="_-bdYU5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYVJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-agV4JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYVZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYVpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV4ZSkEdmjauSjG8qO2A" name="ServletContentType">
-      <eAnnotations xmi:id="_-bdYV5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYWJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-agV4pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYWZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYWpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV45SkEdmjauSjG8qO2A" name="MethodForHeaders">
-      <eAnnotations xmi:id="_-bdYW5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYXJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-agV5JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYXZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYXpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV5ZSkEdmjauSjG8qO2A" name="Static">
-      <eAnnotations xmi:id="_-bdYX5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYYJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agV5pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYYZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYYpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV55SkEdmjauSjG8qO2A" name="MethodForRequestAttributes">
-      <eAnnotations xmi:id="_-bdYY5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYZJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-agV6JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYZZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYZpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV6ZSkEdmjauSjG8qO2A" name="ServletSecurityRoles">
-      <eAnnotations xmi:id="_-bdYZ5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYaJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-agV6pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYaZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYapSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV65SkEdmjauSjG8qO2A" name="ServletInitParameter">
-      <eAnnotations xmi:id="_-bdYa5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYbJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-agV7JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYbZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYbpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV7ZSkEdmjauSjG8qO2A" name="DispatcherForward">
-      <eAnnotations xmi:id="_-bdYb5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYcJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agV7pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYcZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYcpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV75SkEdmjauSjG8qO2A" name="ServletRequestParameterNames">
-      <eAnnotations xmi:id="_-bdYc5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYdJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agV8JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYdZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYdpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV8ZSkEdmjauSjG8qO2A" name="ServletCookie">
-      <eAnnotations xmi:id="_-bdYd5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYeJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-agV8pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYeZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYepSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-agV85SkEdmjauSjG8qO2A" name="EJBReferences">
-      <eAnnotations xmi:id="_-bdYe5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYfJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-amcEJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYfZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYfpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcEZSkEdmjauSjG8qO2A" name="ServletContextRef">
-      <eAnnotations xmi:id="_-bdYf5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYgJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcEpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYgZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYgpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcE5SkEdmjauSjG8qO2A" name="GenerateDefaultConstructor">
-      <eAnnotations xmi:id="_-bdYg5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYhJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcFJSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bdYhZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYhpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcFZSkEdmjauSjG8qO2A" name="ServletIsSecure">
-      <eAnnotations xmi:id="_-bdYh5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYiJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcFpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYiZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYipSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcF5SkEdmjauSjG8qO2A" name="GenerateFinalizer">
-      <eAnnotations xmi:id="_-bdYi5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYjJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcGJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYjZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYjpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcGZSkEdmjauSjG8qO2A" name="EJBSessionType" type="_-agVpJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdYj5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYkJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-amcGpSkEdmjauSjG8qO2A" instance="_-agVpZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYkZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYkpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcG5SkEdmjauSjG8qO2A" name="DisableAutoSync">
-      <eAnnotations xmi:id="_-bdYk5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYlJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcHJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYlZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYlpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcHZSkEdmjauSjG8qO2A" name="ServletInitParameterNames">
-      <eAnnotations xmi:id="_-bdYl5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYmJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcHpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYmZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYmpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcH5SkEdmjauSjG8qO2A" name="BMP_Extend_CMP">
-      <eAnnotations xmi:id="_-bdYm5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYnJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcIJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYnZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYnpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcIZSkEdmjauSjG8qO2A" name="EJBTransactionType" type="_-agVxZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdYn5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYoJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-amcIpSkEdmjauSjG8qO2A" instance="_-agVxpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYoZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYopSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcI5SkEdmjauSjG8qO2A" name="DispatcherInclude">
-      <eAnnotations xmi:id="_-bdYo5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYpJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcJJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYpZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYppSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcJZSkEdmjauSjG8qO2A" name="ServletHeader">
-      <eAnnotations xmi:id="_-bdYp5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYqJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-amcJpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYqZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYqpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcJ5SkEdmjauSjG8qO2A" name="ServletXMLFilePath">
-      <eAnnotations xmi:id="_-bdYq5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYrJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-amcKJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYrZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYrpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcKZSkEdmjauSjG8qO2A" name="ServletDateHeader">
-      <eAnnotations xmi:id="_-bdYr5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYsJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcKpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYsZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYspSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcK5SkEdmjauSjG8qO2A" name="Strictfp">
-      <eAnnotations xmi:id="_-bdYs5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYtJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcLJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYtZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYtpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcLZSkEdmjauSjG8qO2A" name="EJBSessionSync">
-      <eAnnotations xmi:id="_-bdYt5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYuJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcLpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYuZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYupSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcL5SkEdmjauSjG8qO2A" name="EJBSecurityRoles">
-      <eAnnotations xmi:id="_-bdYu5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYvJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-amcMJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYvZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYvpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcMZSkEdmjauSjG8qO2A" name="IsSingleThread">
-      <eAnnotations xmi:id="_-bdYv5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYwJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcMpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYwZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYwpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcM5SkEdmjauSjG8qO2A" name="ServletRequestAttributesNames">
-      <eAnnotations xmi:id="_-bdYw5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYxJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcNJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYxZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYxpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcNZSkEdmjauSjG8qO2A" name="ServletRequestDispatcherPath">
-      <eAnnotations xmi:id="_-bdYx5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYyJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-amcNpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYyZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYypSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcN5SkEdmjauSjG8qO2A" name="ServletHeaderNames">
-      <eAnnotations xmi:id="_-bdYy5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdYzJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcOJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdYzZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdYzpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcOZSkEdmjauSjG8qO2A" name="MethodForCookie">
-      <eAnnotations xmi:id="_-bdYz5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY0JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-amcOpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY0ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY0pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcO5SkEdmjauSjG8qO2A" name="EJBVersion" type="_-agVzJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdY05SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY1JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-amcPJSkEdmjauSjG8qO2A" instance="_-agVzZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY1ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY1pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcPZSkEdmjauSjG8qO2A" name="EJBPersistenceType" type="_-agVrpSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdY15SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY2JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-amcPpSkEdmjauSjG8qO2A" instance="_-agVr5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY2ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY2pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcP5SkEdmjauSjG8qO2A" name="ConstructorIs" type="_-agVuJSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bdY25SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY3JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <defaultValue xmi:type="uml:InstanceValue" xmi:id="_-amcQJSkEdmjauSjG8qO2A" instance="_-agVuZSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY3ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY3pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcQZSkEdmjauSjG8qO2A" name="ReadOnly">
-      <eAnnotations xmi:id="_-bdY35SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY4JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-amcQpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY4ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY4pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-amcQ5SkEdmjauSjG8qO2A" name="Generate_XML_DD">
-      <eAnnotations xmi:id="_-bdY45SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY5JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-asisJSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bdY5ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY5pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asisZSkEdmjauSjG8qO2A" name="ServletName">
-      <eAnnotations xmi:id="_-bdY55SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY6JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-asispSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY6ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY6pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asis5SkEdmjauSjG8qO2A" name="EJBXMLFilePath">
-      <eAnnotations xmi:id="_-bdY65SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY7JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-asitJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY7ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY7pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asitZSkEdmjauSjG8qO2A" name="EJBCnxFactory">
-      <eAnnotations xmi:id="_-bdY75SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY8JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-asitpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY8ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY8pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asit5SkEdmjauSjG8qO2A" name="ServletRequestDispatcher">
-      <eAnnotations xmi:id="_-bdY85SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY9JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-asiuJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY9ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY9pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asiuZSkEdmjauSjG8qO2A" name="EJBReentrant">
-      <eAnnotations xmi:id="_-bdY95SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY-JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-asiupSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY-ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY-pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asiu5SkEdmjauSjG8qO2A" name="MethodForRequestParameters">
-      <eAnnotations xmi:id="_-bdY-5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdY_JSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-asivJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdY_ZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdY_pSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asivZSkEdmjauSjG8qO2A" name="EJBEnvironmentProperties">
-      <eAnnotations xmi:id="_-bdY_5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdZAJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-asivpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdZAZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdZApSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asiv5SkEdmjauSjG8qO2A" name="GenerateCode">
-      <eAnnotations xmi:id="_-bdZA5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdZBJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-asiwJSkEdmjauSjG8qO2A" value="true">
-        <eAnnotations xmi:id="_-bdZBZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdZBpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asiwZSkEdmjauSjG8qO2A" name="ServletRequestParameter">
-      <eAnnotations xmi:id="_-bdZB5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdZCJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-asiwpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdZCZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdZCpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asiw5SkEdmjauSjG8qO2A" name="GenerateHTML">
-      <eAnnotations xmi:id="_-bdZC5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdZDJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXfBUK86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_-asixJSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdZDZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdZDpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asixZSkEdmjauSjG8qO2A" name="ServletRequestAttribute">
-      <eAnnotations xmi:id="_-bdZD5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bdZEJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-asixpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bdZEZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bdZEpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-agVjJSkEdmjauSjG8qO2A" name="Actor_Http_Servlet__Class" memberEnd="_-agVjZSkEdmjauSjG8qO2A _-agVj5SkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bjeUJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjeUZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-agVjZSkEdmjauSjG8qO2A" name="extension$Http_Servlet__Class" type="_-agVhpSkEdmjauSjG8qO2A" association="_-agVjJSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bjeUpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjeU5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-agVjpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bjeVJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bjeVZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-agVkJSkEdmjauSjG8qO2A" name="Class_Http_Servlet__Class" memberEnd="_-agVkZSkEdmjauSjG8qO2A _-agVk5SkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bjeVpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjeV5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-agVkZSkEdmjauSjG8qO2A" name="extension$Http_Servlet__Class" type="_-agVhpSkEdmjauSjG8qO2A" association="_-agVkJSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bjeWJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjeWZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-agVkpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bjeWpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bjeW5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-agVlJSkEdmjauSjG8qO2A" name="Enumeration_Http_Servlet__Class" memberEnd="_-agVlZSkEdmjauSjG8qO2A _-agVl5SkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bjeXJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjeXZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-agVlZSkEdmjauSjG8qO2A" name="extension$Http_Servlet__Class" type="_-agVhpSkEdmjauSjG8qO2A" association="_-agVlJSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bjeXpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjeX5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-agVlpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bjeYJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bjeYZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-agVmJSkEdmjauSjG8qO2A" name="Interface_Http_Servlet__Class" memberEnd="_-agVmZSkEdmjauSjG8qO2A _-agVm5SkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bjeYpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjeY5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-agVmZSkEdmjauSjG8qO2A" name="extension$Http_Servlet__Class" type="_-agVhpSkEdmjauSjG8qO2A" association="_-agVmJSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bjeZJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjeZZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-agVmpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bjeZpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bjeZ5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-agVnJSkEdmjauSjG8qO2A" name="Signal_Http_Servlet__Class" memberEnd="_-agVnZSkEdmjauSjG8qO2A _-agVn5SkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bjeaJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjeaZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-agVnZSkEdmjauSjG8qO2A" name="extension$Http_Servlet__Class" type="_-agVhpSkEdmjauSjG8qO2A" association="_-agVnJSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bjeapSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjea5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-agVnpSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bjebJSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bjebZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-agVoJSkEdmjauSjG8qO2A" name="PrimitiveType_Http_Servlet__Class" memberEnd="_-agVoZSkEdmjauSjG8qO2A _-agVo5SkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bjebpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjeb5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-agVoZSkEdmjauSjG8qO2A" name="extension$Http_Servlet__Class" type="_-agVhpSkEdmjauSjG8qO2A" association="_-agVoJSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bjecJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjecZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-agVopSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bjecpSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bjec5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-agVpJSkEdmjauSjG8qO2A" name="Http_Servlet__ClassEJBSessionType_Set">
-    <eAnnotations xmi:id="_-bjedJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjedZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-agVpZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-agVppSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVp5SkEdmjauSjG8qO2A" key="cardinal" value="200"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjedpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjed5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-agVqJSkEdmjauSjG8qO2A" name="Stateless">
-      <eAnnotations xmi:id="_-agVqZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVqpSkEdmjauSjG8qO2A" key="cardinal" value="201"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjeeJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjeeZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-agVq5SkEdmjauSjG8qO2A" name="Stateful">
-      <eAnnotations xmi:id="_-agVrJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVrZSkEdmjauSjG8qO2A" key="cardinal" value="202"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjeepSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjee5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-agVrpSkEdmjauSjG8qO2A" name="Http_Servlet__ClassEJBPersistenceType_Set">
-    <eAnnotations xmi:id="_-bjefJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjefZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-agVr5SkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-agVsJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVsZSkEdmjauSjG8qO2A" key="cardinal" value="220"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjefpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjef5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-agVspSkEdmjauSjG8qO2A" name="Bean">
-      <eAnnotations xmi:id="_-agVs5SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVtJSkEdmjauSjG8qO2A" key="cardinal" value="221"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjegJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjegZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-agVtZSkEdmjauSjG8qO2A" name="Container">
-      <eAnnotations xmi:id="_-agVtpSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVt5SkEdmjauSjG8qO2A" key="cardinal" value="222"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjegpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjeg5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-agVuJSkEdmjauSjG8qO2A" name="Http_Servlet__ClassCtor_Set">
-    <eAnnotations xmi:id="_-bjehJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjehZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-agVuZSkEdmjauSjG8qO2A" name="public">
-      <eAnnotations xmi:id="_-agVupSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVu5SkEdmjauSjG8qO2A" key="cardinal" value="62"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjehpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjeh5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-agVvJSkEdmjauSjG8qO2A" name="protected">
-      <eAnnotations xmi:id="_-agVvZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVvpSkEdmjauSjG8qO2A" key="cardinal" value="63"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjeiJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjeiZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-agVv5SkEdmjauSjG8qO2A" name="private">
-      <eAnnotations xmi:id="_-agVwJSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVwZSkEdmjauSjG8qO2A" key="cardinal" value="64"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjeipSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjei5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-agVwpSkEdmjauSjG8qO2A" name="package">
-      <eAnnotations xmi:id="_-agVw5SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVxJSkEdmjauSjG8qO2A" key="cardinal" value="65"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjejJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjejZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-agVxZSkEdmjauSjG8qO2A" name="Http_Servlet__ClassEJBTransactionType_Set">
-    <eAnnotations xmi:id="_-bjejpSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjej5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-agVxpSkEdmjauSjG8qO2A" name="Container">
-      <eAnnotations xmi:id="_-agVx5SkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVyJSkEdmjauSjG8qO2A" key="cardinal" value="211"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjekJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjekZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-agVyZSkEdmjauSjG8qO2A" name="Bean">
-      <eAnnotations xmi:id="_-agVypSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVy5SkEdmjauSjG8qO2A" key="cardinal" value="212"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjekpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjek5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_-agVzJSkEdmjauSjG8qO2A" name="Http_Servlet__ClassEJBVersion_Set">
-    <eAnnotations xmi:id="_-bjelJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjelZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedLiteral xmi:id="_-agVzZSkEdmjauSjG8qO2A" name="2.0">
-      <eAnnotations xmi:id="_-agVzpSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agVz5SkEdmjauSjG8qO2A" key="cardinal" value="230"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjelpSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjel5SkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-    <ownedLiteral xmi:id="_-agV0JSkEdmjauSjG8qO2A" name="1.x">
-      <eAnnotations xmi:id="_-agV0ZSkEdmjauSjG8qO2A" source="roseProperties">
-        <details xmi:id="_-agV0pSkEdmjauSjG8qO2A" key="cardinal" value="231"/>
-      </eAnnotations>
-      <eAnnotations xmi:id="_-bjemJSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjemZSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-    </ownedLiteral>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Stereotype" xmi:id="_-asix5SkEdmjauSjG8qO2A" name="default__ModuleSpec">
-    <eAnnotations xmi:id="_-asiyJSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-asiyZSkEdmjauSjG8qO2A" key="categoryName" value="Java"/>
-      <details xmi:id="_-asiypSkEdmjauSjG8qO2A" key="suppressed" value="true"/>
-      <details xmi:id="_-bjempSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_-asiy5SkEdmjauSjG8qO2A" source="keywords">
-      <details xmi:id="_-asizJSkEdmjauSjG8qO2A" key="taggedValueSet"/>
-    </eAnnotations>
-    <ownedAttribute xmi:id="_-asi0JSkEdmjauSjG8qO2A" name="base$Component" association="_-asizZSkEdmjauSjG8qO2A">
-      <eAnnotations xmi:id="_-bjem5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjenJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:Class" href="pathmap://UML2_METAMODELS/UML2.metamodel.uml2#_m9VJjK86EdiEh75YJ_3n8g"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asi0ZSkEdmjauSjG8qO2A" name="CmIdentification">
-      <eAnnotations xmi:id="_-bjenZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjenpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-asi0pSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bjen5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bjeoJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_-asi05SkEdmjauSjG8qO2A" name="CopyrightNotice">
-      <eAnnotations xmi:id="_-bjeoZSkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjeopSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <defaultValue xmi:type="uml:LiteralString" xmi:id="_-asi1JSkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bjeo5SkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bjepJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </defaultValue>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Extension" xmi:id="_-asizZSkEdmjauSjG8qO2A" name="Component_default__ModuleSpec" memberEnd="_-asizpSkEdmjauSjG8qO2A _-asi0JSkEdmjauSjG8qO2A">
-    <eAnnotations xmi:id="_-bjepZSkEdmjauSjG8qO2A" source="uml2.extensions">
-      <details xmi:id="_-bjeppSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-    </eAnnotations>
-    <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-asizpSkEdmjauSjG8qO2A" name="extension$default__ModuleSpec" type="_-asix5SkEdmjauSjG8qO2A" association="_-asizZSkEdmjauSjG8qO2A" aggregation="composite">
-      <eAnnotations xmi:id="_-bjep5SkEdmjauSjG8qO2A" source="uml2.extensions">
-        <details xmi:id="_-bjeqJSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-      </eAnnotations>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-asiz5SkEdmjauSjG8qO2A">
-        <eAnnotations xmi:id="_-bjeqZSkEdmjauSjG8qO2A" source="uml2.extensions">
-          <details xmi:id="_-bjeqpSkEdmjauSjG8qO2A" key="addedInVersion" value="0"/>
-        </eAnnotations>
-      </lowerValue>
-    </ownedEnd>
-  </ownedMember>
-</uml:Profile>
diff --git a/plugins/org.eclipse.wst.common.modulecore/model/Java.properties b/plugins/org.eclipse.wst.common.modulecore/model/Java.properties
deleted file mode 100644
index 563b5df..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/model/Java.properties
+++ /dev/null
@@ -1,428 +0,0 @@
-###############################################################################
-# Copyright (c) 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-#Mon Mar 14 11:20:27 EST 2005
-Java__default__Class__EJBReferences=EJBReferences
-Java__default__Project__JavadocDefaultVersion=JavadocDefaultVersion
-Java__Http_Servlet__Class__GenerateInstanceInitializer=GenerateInstanceInitializer
-Java__Http_Servlet__Class__ServletInitParameterNames=ServletInitParameterNames
-Java__default__ProjectEditorType__WindowsShell=WindowsShell
-Java__Http_Servlet__Class__EJBSessionSync=EJBSessionSync
-Java__default__ProjectVMType__Sun=Sun
-Java__default__Role=default
-Java__default__ProjectVMType__Microsoft=Microsoft
-Java__Http_Servlet__Class__MethodForRequestParameters=MethodForRequestParameters
-Java__default__Project__SCCComment=SCCComment
-Java__Default_Servlet__Class__MethodForRequestAttributes=MethodForRequestAttributes
-Java__default__Class__EJBPersistenceType=EJBPersistenceType
-Java__Default_EJB__Class__IsSingleThread=IsSingleThread
-Java__default__Class__ServletRequestAttributesNames=ServletRequestAttributesNames
-Java__Default_EJB__Class__ServletInitParameter=ServletInitParameter
-Java__Default_Servlet__Class__GenerateHTML=GenerateHTML
-Java__default__Project__StopOnError=StopOnError
-Java__default__RoleReadWrite_Set__Read\ Only=Read Only
-Java__default__ClassCtor_Set__public=public
-Java__Default_EJB__Class__EJBCmpField=EJBCmpField
-Java__Default_Servlet__Class__MethodForHeaders=MethodForHeaders
-Java__Http_Servlet__Class__MethodForHeaders=MethodForHeaders
-Java__default__Operation__Static=Static
-Java__Default_Servlet__ClassCtor_Set=Ctor_Set
-Java__Default_EJB__Class__EJBReferences=EJBReferences
-Java__Default_EJB__Class__ServletIntHeader=ServletIntHeader
-Java__default__Class__DispatcherForward=DispatcherForward
-Java__Http_Servlet__ClassCtor_Set__private=private
-Java__default__Project__SCCProjectName=SCCProjectName
-Java__Default_Servlet__Class__ServletCookie=ServletCookie
-Java__default__Role__PropertyType=PropertyType
-Java__default__Class__EJBNameInJAR=EJBNameInJAR
-Java__Default_EJB__Class__MethodForCookie=MethodForCookie
-Java__Default_EJB__ClassEJBTransactionType_Set__Container=Container
-Java__Http_Servlet__Class__ServletCookie=ServletCookie
-Java__default__Class__EJBCmpField=EJBCmpField
-Java__Default_Servlet__Class__Strictfp=Strictfp
-Java__default__Operation=default
-Java__default__Project__UseSpaces=UseSpaces
-Java__default__Class__DispatcherInclude=DispatcherInclude
-Java__default__Class__ServletName=ServletName
-Java__Http_Servlet__Class__ServletIsSecure=ServletIsSecure
-Java__Default_EJB__Class__DispatcherForward=DispatcherForward
-Java__Http_Servlet__Class__EJBSessionType=EJBSessionType
-Java__default__Class__EJBTransactionType=EJBTransactionType
-Java__Http_Servlet__Class__EJBVersion=EJBVersion
-Java__Default_Servlet__Class__ServletXMLFilePath=ServletXMLFilePath
-Java__Default_Servlet__ClassEJBVersion_Set=EJBVersion_Set
-Java__Default_EJB__Class__DispatcherInclude=DispatcherInclude
-Java__default__Project__PrimaryKeySuffix=PrimaryKeySuffix
-Java__default__Operation__GenerateFullyQualifiedReturn=GenerateFullyQualifiedReturn
-Java__Default_Servlet__Class__ServletRequestParameter=ServletRequestParameter
-Java__default__Project__RemoteSuffix=RemoteSuffix
-Java__default__Attribute__Volatile=Volatile
-Java__Http_Servlet__Class__ServletInitParameter=ServletInitParameter
-Java__default__RoleReadWrite_Set__Write\ Only=Write Only
-Java__default__Project__VAJavaWorkingFolder=VAJavaWorkingFolder
-Java__Default_Servlet__ClassCtor_Set__private=private
-Java__Http_Servlet__Class__EJBEnvironmentProperties=EJBEnvironmentProperties
-Java__Default_EJB__Class__EJBCnxFactory=EJBCnxFactory
-Java__default__AttributeReadWrite_Set=Read/Write_Set
-Java__Default_Servlet__Class__ServletInitParameterNames=ServletInitParameterNames
-Java__default__AttributeReadWrite_Set__Write\ Only=Write Only
-Java__default__Project__BeanSuffix=BeanSuffix
-Java__default__Class__ServletHeader=ServletHeader
-Java__default__AttributeBeanProperty_Set__Constrained=Constrained
-Java__default__Class__EJBVersion=EJBVersion
-Java__Default_Servlet__Class__Static=Static
-Java__default__Class__MethodForRequestAttributes=MethodForRequestAttributes
-Java__default__Class__GenerateFinalizer=GenerateFinalizer
-Java__default__Operation__ReplaceExistingCode=ReplaceExistingCode
-Java__Default_EJB__Class__EJBNameInJAR=EJBNameInJAR
-Java__default__Class__ServletCookie=ServletCookie
-Java__Default_Servlet__ClassEJBSessionType_Set=EJBSessionType_Set
-Java__default__Project__SCCProjectSourceRoot=SCCProjectSourceRoot
-Java__default__Operation__Abstract=Abstract
-Java__Http_Servlet__ClassEJBSessionType_Set=EJBSessionType_Set
-Java__Http_Servlet__Class__IsSingleThread=IsSingleThread
-Java__default__RoleBeanProperty_Set__Bound=Bound
-Java__Default_EJB__Class__BMP_Extend_CMP=BMP_Extend_CMP
-Java__default__Role__ReadWrite=Read/Write
-Java__default__Project__DefaultServletVersion=DefaultServletVersion
-Java__Default_EJB__ClassEJBPersistenceType_Set__Bean=Bean
-Java__default__Operation__Strictfp=Strictfp
-Java__default__Project__LocalPrefix=LocalPrefix
-Java__default__ClassCtor_Set__private=private
-Java__default__Class__ServletDateHeader=ServletDateHeader
-Java__Default_EJB__Class__ServletCookie=ServletCookie
-Java__default__Project__DefaultOperationReturnType=DefaultOperationReturnType
-Java__Default_Servlet__ClassCtor_Set__public=public
-Java__Default_EJB__ClassCtor_Set__public=public
-Java__Http_Servlet__Class__ServletHeaderNames=ServletHeaderNames
-Java__default__Project__RootDir=RootDir
-Java__default__Class__EJBReentrant=EJBReentrant
-Java__default__Project__NotShowRoseIDDlg=NotShowRoseIDDlg
-Java__default__Project__HomeSuffix=HomeSuffix
-Java__Default_EJB__Class__EJBPersistenceType=EJBPersistenceType
-Java__default__Class__ServletIsSecure=ServletIsSecure
-Java__Default_Servlet__Class=Default_Servlet
-Java__Default_EJB__Class__ServletDateHeader=ServletDateHeader
-Java__default__Project__LocalHomePrefix=LocalHomePrefix
-Java__Http_Servlet__Class__DispatcherForward=DispatcherForward
-Java__Default_EJB__Class__Generate_XML_DD=Generate_XML_DD
-Java__Default_EJB__Class__DisableAutoSync=DisableAutoSync
-Java__default__ModuleSpec=default
-Java__Default_EJB__ClassEJBPersistenceType_Set__Container=Container
-Java__default__Project__UserDefineTagApply3=UserDefineTagApply3
-Java__default__Attribute__IndividualChangeMgt=IndividualChangeMgt
-Java__Default_EJB__ClassEJBTransactionType_Set__Bean=Bean
-Java__default__Project__UserDefineTagApply2=UserDefineTagApply2
-Java__Http_Servlet__Class__DispatcherInclude=DispatcherInclude
-Java__default__Project__UserDefineTagApply1=UserDefineTagApply1
-Java__default__ModuleSpec__CmIdentification=CmIdentification
-Java__default__RoleBeanProperty_Set=BeanProperty_Set
-Java__Default_Servlet__Class__DispatcherInclude=DispatcherInclude
-Java__default__Project__GlobalImports=GlobalImports
-Java__default__Class__MethodForHeaders=MethodForHeaders
-Java__default__Role__ContainerClass=ContainerClass
-Java__default__Project__BeanPrefix=BeanPrefix
-Java__default__Attribute__ReadWrite=Read/Write
-Java__default__Class__ServletRequestDispatcher=ServletRequestDispatcher
-Java__default__Project__UsePrefixes=UsePrefixes
-Java__default__AttributeReadWrite_Set__Read\ &\ Write=Read & Write
-Java__Default_Servlet__Class__IsSingleThread=IsSingleThread
-Java__Default_Servlet__Class__GenerateStaticInitializer=GenerateStaticInitializer
-Java__default__ClassCtor_Set__protected=protected
-Java__default__AttributeReadWrite_Set__Read\ Only=Read Only
-Java__Http_Servlet__Class__MethodForRequestAttributes=MethodForRequestAttributes
-Java__Default_EJB__Class__EJBReentrant=EJBReentrant
-Java__Default_Servlet__Class__EJBSecurityRoles=EJBSecurityRoles
-Java__Default_Servlet__Class__Final=Final
-Java__default__Operation__Native=Native
-Java__default__Class__EJBSessionSync=EJBSessionSync
-Java__Default_Servlet__Class__MethodForCookie=MethodForCookie
-Java__Http_Servlet__ClassCtor_Set=Ctor_Set
-Java__Default_EJB__Class__ServletName=ServletName
-Java__Http_Servlet__Class__EJBPersistenceType=EJBPersistenceType
-Java__Http_Servlet__Class__GenerateHTML=GenerateHTML
-Java__Default_Servlet__Class__ServletRequestDispatcher=ServletRequestDispatcher
-Java__default__Role__Final=Final
-Java__Default_EJB__Class__ServletRequestDispatcherPath=ServletRequestDispatcherPath
-Java__Default_EJB__ClassCtor_Set__protected=protected
-Java__Default_EJB__Class__EJBEnvironmentProperties=EJBEnvironmentProperties
-Java__Default_Servlet__ClassEJBPersistenceType_Set__Bean=Bean
-Java__default__Attribute__Final=Final
-Java__Default_EJB__ClassEJBSessionType_Set__Stateful=Stateful
-Java__Default_Servlet__Class__GenerateFinalizer=GenerateFinalizer
-Java__default__Project__SpacingItems=SpacingItems
-Java__default__Class__EJBCnxFactory=EJBCnxFactory
-Java__default__Project__EJBDTDLocation=EJBDTDLocation
-Java__Default_Servlet__ClassEJBTransactionType_Set=EJBTransactionType_Set
-Java__Http_Servlet__ClassCtor_Set__public=public
-Java__default__ClassEJBTransactionType_Set=EJBTransactionType_Set
-Java__default__Project__SourceControl=SourceControl
-Java__default__Operation__Final=Final
-Java__Http_Servlet__Class__EJBTransactionType=EJBTransactionType
-Java__default__Class__GenerateHTML=GenerateHTML
-Java__default__Project__ServletDTDLocation=ServletDTDLocation
-Java__default__Role__InitialValue=InitialValue
-Java__Http_Servlet__ClassEJBVersion_Set=EJBVersion_Set
-Java__Default_EJB__Class__ServletHeaderNames=ServletHeaderNames
-Java__default__Class__EJBSessionType=EJBSessionType
-Java__Http_Servlet__Class__ServletDateHeader=ServletDateHeader
-Java__default__Project__DefaultEJBVersion=DefaultEJBVersion
-Java__Default_Servlet__Class__ServletSecurityRoles=ServletSecurityRoles
-Java__default__Project__AutoSync=AutoSync
-Java__default__Project__ClassPath=ClassPath
-Java__default__Class__ServletSecurityRoles=ServletSecurityRoles
-Java__Default_Servlet__ClassEJBTransactionType_Set__Bean=Bean
-Java__Default_Servlet__Class__ServletDateHeader=ServletDateHeader
-Java__Default_EJB__Class__ServletInitParameterNames=ServletInitParameterNames
-Java__Default_EJB__ClassCtor_Set__package=package
-Java__Default_Servlet__ClassEJBVersion_Set__2.0=2.0
-Java__default__ClassEJBSessionType_Set=EJBSessionType_Set
-Java__Default_Servlet__Class__GenerateCode=GenerateCode
-Java__default__Project__NoClassCustomDlg=NoClassCustomDlg
-Java__Http_Servlet__Class__Static=Static
-Java__Default_EJB__Class__ServletRequestAttribute=ServletRequestAttribute
-Java__default__Project__UserDefineJavaDocTags=UserDefineJavaDocTags
-Java__Default_EJB__Class=Default_EJB
-Java__default__Class__ServletXMLFilePath=ServletXMLFilePath
-Java__Http_Servlet__Class__ServletRequestParameter=ServletRequestParameter
-Java__default__Project=default
-Java__Default_EJB__Class__ServletRequestParameterNames=ServletRequestParameterNames
-Java__default__Class__ServletContextRef=ServletContextRef
-Java__Http_Servlet__Class__Generate_XML_DD=Generate_XML_DD
-Java__default__Role__IsNavigable=IsNavigable
-Java__default__RoleBeanProperty_Set__Not\ A\ Property=Not A Property
-Java__Default_EJB__Class__Final=Final
-Java__Default_EJB__Class__GenerateFinalizer=GenerateFinalizer
-Java__default__ClassEJBTransactionType_Set__Container=Container
-Java__Default_Servlet__Class__BMP_Extend_CMP=BMP_Extend_CMP
-Java__default__ClassEJBPersistenceType_Set__Bean=Bean
-Java__Default_EJB__Class__ServletContextRef=ServletContextRef
-Java__Default_EJB__Class__ServletContentType=ServletContentType
-Java__default__Project__JavadocDefaultSince=JavadocDefaultSince
-Java__default__Project__JavadocSince=JavadocSince
-Java__default__Class__ServletRequestAttribute=ServletRequestAttribute
-Java__Default_EJB__Class__ServletSecurityRoles=ServletSecurityRoles
-Java__Default_Servlet__ClassEJBTransactionType_Set__Container=Container
-Java__default__Project__SCCSelected=SCCSelected
-Java__Default_Servlet__Class__EJBVersion=EJBVersion
-Java__Default_EJB__Class__GenerateHTML=GenerateHTML
-Java__Default_Servlet__Class__GenerateDefaultConstructor=GenerateDefaultConstructor
-Java__default__ClassEJBVersion_Set__2.0=2.0
-Java__default__Project__InstanceVariablePrefix=InstanceVariablePrefix
-Java__Default_Servlet__ClassEJBSessionType_Set__Stateful=Stateful
-Java__Http_Servlet__ClassCtor_Set__protected=protected
-Java__Default_Servlet__Class__ServletHeaderNames=ServletHeaderNames
-Java__Default_EJB__Class__MethodForRequestParameters=MethodForRequestParameters
-Java__default__Class__ServletgetInfo=ServletgetInfo
-Java__Default_Servlet__Class__ConstructorIs=ConstructorIs
-Java__Default_Servlet__Class__Generate_XML_DD=Generate_XML_DD
-Java__Default_EJB__Class__MethodForHeaders=MethodForHeaders
-Java__Default_Servlet__Class__DisableAutoSync=DisableAutoSync
-Java__default__RoleBeanProperty_Set__Constrained=Constrained
-Java__Default_Servlet__Class__EJBReentrant=EJBReentrant
-Java__Default_Servlet__ClassCtor_Set__protected=protected
-Java__Default_Servlet__Class__ServletIntHeader=ServletIntHeader
-Java__Http_Servlet__Class__ConstructorIs=ConstructorIs
-Java__Default_EJB__ClassEJBVersion_Set__2.0=2.0
-Java__Default_EJB__Class__ServletIsSecure=ServletIsSecure
-Java__default__ModuleBody__CmIdentification=CmIdentification
-Java__Http_Servlet__Class__ServletRequestAttribute=ServletRequestAttribute
-Java__default__Attribute__GenerateFullyQualifiedTypes=GenerateFullyQualifiedTypes
-Java__default__ClassEJBTransactionType_Set__Bean=Bean
-Java__Default_Servlet__Class__EJBReferences=EJBReferences
-Java__default__Project__ShowCodegenDlg=ShowCodegenDlg
-Java__default__Project__PrimaryKeyPrefix=PrimaryKeyPrefix
-Java__default__Class__EJBXMLFilePath=EJBXMLFilePath
-Java__default__Project__RemotePrefix=RemotePrefix
-Java__default__Project__JavadocNumAsterisks=JavadocNumAsterisks
-Java__Http_Servlet__Class__MethodForCookie=MethodForCookie
-Java__default__Class__ReadOnly=ReadOnly
-Java__default__Role__Transient=Transient
-Java__default__RoleBeanProperty_Set__Simple=Simple
-Java__Default_EJB__Class__Static=Static
-Java__default__Class__GenerateStaticInitializer=GenerateStaticInitializer
-Java__default__Project__VM=VM
-Java__Http_Servlet__Class__ServletSecurityRoles=ServletSecurityRoles
-Java__Default_Servlet__ClassEJBVersion_Set__1.x=1.x
-Java__default__Project__UseTabs=UseTabs
-Java__Http_Servlet__Class__ServletRequestAttributesNames=ServletRequestAttributesNames
-Java__default__Class__Static=Static
-Java__Default_EJB__Class__EJBTransactionType=EJBTransactionType
-Java__default__Project__ClassVariablePrefix=ClassVariablePrefix
-Java__Http_Servlet__Class__ServletRequestDispatcherPath=ServletRequestDispatcherPath
-Java__default__Class__EJBSecurityRoles=EJBSecurityRoles
-Java__Http_Servlet__Class__ServletContentType=ServletContentType
-Java__default__Project__UserDefineTagText3=UserDefineTagText3
-Java__default__Project__UserDefineTagText2=UserDefineTagText2
-Java__default__Project__UserDefineTagText1=UserDefineTagText1
-Java__Default_EJB__Class__GenerateStaticInitializer=GenerateStaticInitializer
-Java__default__ProjectVMType__IBM=IBM
-Java__Default_Servlet__ClassEJBPersistenceType_Set=EJBPersistenceType_Set
-Java__Http_Servlet__Class__EJBSecurityRoles=EJBSecurityRoles
-Java__default__Project__JavadocDefaultAuthor=JavadocDefaultAuthor
-Java__default__ClassEJBPersistenceType_Set=EJBPersistenceType_Set
-Java__Http_Servlet__Class__BMP_Extend_CMP=BMP_Extend_CMP
-Java__Default_Servlet__Class__EJBPersistenceType=EJBPersistenceType
-Java__default__Class__GenerateDefaultConstructor=GenerateDefaultConstructor
-Java__Default_Servlet__ClassEJBSessionType_Set__Stateless=Stateless
-Java__default__ClassEJBSessionType_Set__Stateful=Stateful
-Java__default__ClassEJBSessionType_Set__Stateless=Stateless
-Java__Http_Servlet__Class__GenerateFinalizer=GenerateFinalizer
-Java__Http_Servlet__ClassCtor_Set__package=package
-Java__Default_EJB__Class__ServletRequestParameter=ServletRequestParameter
-Java__default__Project__RoseDefaultCommentStyle=RoseDefaultCommentStyle
-Java__Default_EJB__Class__GenerateDefaultConstructor=GenerateDefaultConstructor
-Java__Default_Servlet__Class__GenerateInstanceInitializer=GenerateInstanceInitializer
-Java__Default_EJB__Class__EJBVersion=EJBVersion
-Java__default__Class__GenerateInstanceInitializer=GenerateInstanceInitializer
-Java__default__Class__ServletRequestDispatcherPath=ServletRequestDispatcherPath
-Java__Default_Servlet__Class__EJBNameInJAR=EJBNameInJAR
-Java__Http_Servlet__Class__ServletContextRef=ServletContextRef
-Java__Default_EJB__ClassEJBSessionType_Set=EJBSessionType_Set
-Java__Http_Servlet__ClassEJBPersistenceType_Set__Bean=Bean
-Java__default__ClassEJBVersion_Set__1.x=1.x
-Java__default__Project__ReferenceClasspath=ReferenceClasspath
-Java__default__ClassEJBPersistenceType_Set__Container=Container
-Java__default__Role__IndividualChangeMgt=IndividualChangeMgt
-Java__Default_Servlet__Class__ServletContextRef=ServletContextRef
-Java__Http_Servlet__Class__EJBNameInJAR=EJBNameInJAR
-Java__Default_Servlet__Class__MethodForRequestParameters=MethodForRequestParameters
-Java__default__Project__MaxNumChars=MaxNumChars
-Java__default__Attribute__Transient=Transient
-Java__default__Class__ServletInitParameterNames=ServletInitParameterNames
-Java__Http_Servlet__Class__ServletRequestDispatcher=ServletRequestDispatcher
-Java__Http_Servlet__Class__ReadOnly=ReadOnly
-Java__default__Project__HomePrefix=HomePrefix
-Java__Default_EJB__Class__ConstructorIs=ConstructorIs
-Java__Default_EJB__ClassEJBVersion_Set__1.x=1.x
-Java__Default_Servlet__ClassEJBPersistenceType_Set__Container=Container
-Java__Default_Servlet__Class__EJBTransactionType=EJBTransactionType
-Java__default__Class__ServletRequestParameter=ServletRequestParameter
-Java__Http_Servlet__Class__ServletRequestParameterNames=ServletRequestParameterNames
-Java__Default_Servlet__Class__ServletHeader=ServletHeader
-Java__Default_EJB__Class__ReadOnly=ReadOnly
-Java__Default_Servlet__ClassCtor_Set__package=package
-Java__Http_Servlet__ClassEJBVersion_Set__2.0=2.0
-Java__Default_EJB__ClassEJBPersistenceType_Set=EJBPersistenceType_Set
-Java__Default_EJB__Class__ServletRequestAttributesNames=ServletRequestAttributesNames
-Java__default__Class__EJBEnvironmentProperties=EJBEnvironmentProperties
-Java__Http_Servlet__Class__ServletHeader=ServletHeader
-Java__Default_Servlet__Class__ServletgetInfo=ServletgetInfo
-Java__Default_EJB__Class__ServletgetInfo=ServletgetInfo
-Java__default__Project__LocalSuffix=LocalSuffix
-Java__default__Project__OpenBraceMethodStyle=OpenBraceMethodStyle
-Java__Http_Servlet__Class__EJBCmpField=EJBCmpField
-Java__default__Class__MethodForCookie=MethodForCookie
-Java__Http_Servlet__ClassEJBTransactionType_Set__Bean=Bean
-Java__Default_EJB__ClassEJBSessionType_Set__Stateless=Stateless
-Java__Http_Servlet__Class__ServletName=ServletName
-Java__default__ProjectEditorType=EditorType
-Java__Default_EJB__Class__GenerateInstanceInitializer=GenerateInstanceInitializer
-Java__Http_Servlet__Class__GenerateCode=GenerateCode
-Java__default__Project__GenerateRoseID=GenerateRoseID
-Java__Default_Servlet__Class__EJBXMLFilePath=EJBXMLFilePath
-Java__Default_EJB__ClassEJBTransactionType_Set=EJBTransactionType_Set
-Java__Default_EJB__Class__EJBXMLFilePath=EJBXMLFilePath
-Java__Default_Servlet__Class__EJBEnvironmentProperties=EJBEnvironmentProperties
-Java__default__Project__LocalHomeSuffix=LocalHomeSuffix
-Java__Http_Servlet__Class__DisableAutoSync=DisableAutoSync
-Java__Http_Servlet__ClassEJBTransactionType_Set__Container=Container
-Java__default__Project__UserDefineTagName3=UserDefineTagName3
-Java__default__Project__UserDefineTagName2=UserDefineTagName2
-Java__default__Project__UserDefineTagName1=UserDefineTagName1
-Java__default__ClassEJBVersion_Set=EJBVersion_Set
-Java__default__Class__ServletRequestParameterNames=ServletRequestParameterNames
-Java__Http_Servlet__Class=Http_Servlet
-Java__Http_Servlet__Class__ServletXMLFilePath=ServletXMLFilePath
-Java__Default_EJB__ClassCtor_Set=Ctor_Set
-Java__default__Project__Editor=Editor
-Java__default__Project__OpenBraceClassStyle=OpenBraceClassStyle
-Java__default__AttributeBeanProperty_Set__Bound=Bound
-Java__default__ClassCtor_Set=Ctor_Set
-Java__default__ModuleSpec__CopyrightNotice=CopyrightNotice
-Java__default__Attribute=default
-Java__default__RoleReadWrite_Set=Read/Write_Set
-Java__default__Project__JavadocVersion=JavadocVersion
-Java__default__ProjectVMType=VMType
-Java__default__Class__ServletIntHeader=ServletIntHeader
-Java__Http_Servlet__ClassEJBPersistenceType_Set=EJBPersistenceType_Set
-Java__Default_Servlet__Class__ServletRequestDispatcherPath=ServletRequestDispatcherPath
-Java__Default_Servlet__Class__ReadOnly=ReadOnly
-Java__default__RoleReadWrite_Set__Read\ &\ Write=Read & Write
-Java__default__ModuleBody=default
-Java__default__ClassCtor_Set__package=package
-Java__default__Class__IsSingleThread=IsSingleThread
-Java__default__Project__GenerateDefaultReturnLine=GenerateDefaultReturnLine
-Java__default__Class__GenerateCode=GenerateCode
-Java__default__Class__MethodForRequestParameters=MethodForRequestParameters
-Java__default__Class=default
-Java__Default_EJB__ClassCtor_Set__private=private
-Java__Http_Servlet__Class__GenerateDefaultConstructor=GenerateDefaultConstructor
-Java__Default_Servlet__Class__ServletIsSecure=ServletIsSecure
-Java__default__Class__Strictfp=Strictfp
-Java__default__Role__Volatile=Volatile
-Java__Default_Servlet__Class__EJBSessionSync=EJBSessionSync
-Java__Default_EJB__Class__EJBSecurityRoles=EJBSecurityRoles
-Java__Default_EJB__Class__EJBSessionSync=EJBSessionSync
-Java__default__Project__AsteriskCommentStyle=AsteriskCommentStyle
-Java__Http_Servlet__ClassEJBSessionType_Set__Stateful=Stateful
-Java__Http_Servlet__Class__ServletIntHeader=ServletIntHeader
-Java__Http_Servlet__ClassEJBTransactionType_Set=EJBTransactionType_Set
-Java__Default_EJB__Class__MethodForRequestAttributes=MethodForRequestAttributes
-Java__Http_Servlet__Class__Final=Final
-Java__Http_Servlet__Class__EJBReentrant=EJBReentrant
-Java__Http_Servlet__ClassEJBVersion_Set__1.x=1.x
-Java__default__Project__JavaCommentStyle=JavaCommentStyle
-Java__Http_Servlet__Class__EJBReferences=EJBReferences
-Java__default__AttributeBeanProperty_Set__Simple=Simple
-Java__Default_Servlet__Class__ServletRequestAttribute=ServletRequestAttribute
-Java__Http_Servlet__Class__GenerateStaticInitializer=GenerateStaticInitializer
-Java__Default_EJB__Class__ServletHeader=ServletHeader
-Java__Default_EJB__ClassEJBVersion_Set=EJBVersion_Set
-Java__default__Project__DefaultAttributeDataType=DefaultAttributeDataType
-Java__Http_Servlet__Class__ServletgetInfo=ServletgetInfo
-Java__Default_Servlet__Class__EJBCmpField=EJBCmpField
-Java__default__Class__ServletHeaderNames=ServletHeaderNames
-Java__Default_Servlet__Class__ServletName=ServletName
-Java__Default_Servlet__Class__ServletRequestAttributesNames=ServletRequestAttributesNames
-Java__default__AttributeBeanProperty_Set=BeanProperty_Set
-Java__default__Operation__Synchronized=Synchronized
-Java__Default_Servlet__Class__ServletContentType=ServletContentType
-Java__Default_Servlet__Class__EJBSessionType=EJBSessionType
-Java__Default_EJB__Class__EJBSessionType=EJBSessionType
-Java__default__ModuleBody__CopyrightNotice=CopyrightNotice
-Java__default__Class__Final=Final
-Java__Default_Servlet__Class__ServletRequestParameterNames=ServletRequestParameterNames
-Java__Default_EJB__Class__GenerateCode=GenerateCode
-Java__Http_Servlet__Class__EJBXMLFilePath=EJBXMLFilePath
-Java__default__Project__GenerateDefaultJ2EEJavadoc=GenerateDefaultJ2EEJavadoc
-Java__Default_EJB__Class__ServletRequestDispatcher=ServletRequestDispatcher
-Java__default__ProjectEditorType__BuiltIn=BuiltIn
-Java__Default_Servlet__Class__ServletInitParameter=ServletInitParameter
-Java__default__Class__Generate_XML_DD=Generate_XML_DD
-Java__default__Class__DisableAutoSync=DisableAutoSync
-Java__default__Class__ServletInitParameter=ServletInitParameter
-Java__default__AttributeBeanProperty_Set__Not\ A\ Property=Not A Property
-Java__Http_Servlet__Class__Strictfp=Strictfp
-Java__Default_Servlet__Class__EJBCnxFactory=EJBCnxFactory
-Java__default__Project__CreateMissingDirectories=CreateMissingDirectories
-Java__default__Class__ConstructorIs=ConstructorIs
-Java__default__Role__GenerateFullyQualifiedTypes=GenerateFullyQualifiedTypes
-Java__Default_Servlet__Class__DispatcherForward=DispatcherForward
-Java__Http_Servlet__Class__EJBCnxFactory=EJBCnxFactory
-Java__default__Attribute__PropertyType=PropertyType
-Java__Default_EJB__Class__Strictfp=Strictfp
-Java__Default_EJB__Class__ServletXMLFilePath=ServletXMLFilePath
-Java__Http_Servlet__ClassEJBPersistenceType_Set__Container=Container
-Java__default__Class__ServletContentType=ServletContentType
-Java__Http_Servlet__ClassEJBSessionType_Set__Stateless=Stateless
-Java__default__Class__BMP_Extend_CMP=BMP_Extend_CMP
-=
-Java__default__Project__JavadocAuthor=JavadocAuthor
diff --git a/plugins/org.eclipse.wst.common.modulecore/model/VirtualPathAPI.emx b/plugins/org.eclipse.wst.common.modulecore/model/VirtualPathAPI.emx
deleted file mode 100644
index 8ce023c..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/model/VirtualPathAPI.emx
+++ /dev/null
@@ -1,517 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--xtools2_universal_type_manager-->
-<uml:Model xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:notation="http://www.ibm.com/xtools/1.5.0/Notation" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.0/Umlnotation" xmi:id="_XP2kcLqvEdmTwLcLkpAHPw" name="VirtualPathAPI" appliedProfile="_XSiFALqvEdmTwLcLkpAHPw _XUP8QLqvEdmTwLcLkpAHPw _XU0kALqvEdmTwLcLkpAHPw _XWoh4LqvEdmTwLcLkpAHPw _XZsc8LqvEdmTwLcLkpAHPw">
-  <eAnnotations xmi:id="_XP2kcbqvEdmTwLcLkpAHPw" source="uml2.diagrams" references="_XP2kcrqvEdmTwLcLkpAHPw">
-    <contents xmi:type="notation:Diagram" xmi:id="_XP2kcrqvEdmTwLcLkpAHPw" type="Class" name="Main">
-      <children xmi:id="_sLnKELsaEdmrmcil1Bx04w" sourceEdges="_sxPmsLsaEdmrmcil1Bx04w _sxPmuLsaEdmrmcil1Bx04w" targetEdges="_sxbz_bsaEdmrmcil1Bx04w _sxh6krsaEdmrmcil1Bx04w _sxoBOLsaEdmrmcil1Bx04w _sx0OcLsaEdmrmcil1Bx04w">
-        <children xmi:id="_sMGSQLsaEdmrmcil1Bx04w" type="ImageCompartment">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_sMGSQbsaEdmrmcil1Bx04w" width="530" height="530"/>
-        </children>
-        <children xmi:id="_sMGSQrsaEdmrmcil1Bx04w" type="Stereotype">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sMGSQ7saEdmrmcil1Bx04w" type="Kind">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sMGSRLsaEdmrmcil1Bx04w" type="Name">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sM3HQLsaEdmrmcil1Bx04w" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sM3HQbsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sM9N4LsaEdmrmcil1Bx04w" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sM9N4bsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sM9N4rsaEdmrmcil1Bx04w" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sM9N47saEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLClassifierStyle" xmi:id="_sLnKEbsaEdmrmcil1Bx04w" showStereotype="Label" useClassifierShape="true"/>
-        <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sLnKErsaEdmrmcil1Bx04w" x="318" y="2544"/>
-      </children>
-      <children xmi:id="_skEGULsaEdmrmcil1Bx04w" sourceEdges="_sxVtUbsaEdmrmcil1Bx04w" targetEdges="_sxuH0LsaEdmrmcil1Bx04w">
-        <children xmi:id="_skEGU7saEdmrmcil1Bx04w" type="ImageCompartment">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_skEGVLsaEdmrmcil1Bx04w" width="530" height="530"/>
-        </children>
-        <children xmi:id="_skEGVbsaEdmrmcil1Bx04w" type="Stereotype">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_skEGVrsaEdmrmcil1Bx04w" type="Kind">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_skEGV7saEdmrmcil1Bx04w" type="Name">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_skEGWLsaEdmrmcil1Bx04w" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_skEGWbsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_skEGWrsaEdmrmcil1Bx04w" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_skEGW7saEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_skKM8LsaEdmrmcil1Bx04w" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_skKM8bsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLClassifierStyle" xmi:id="_skEGUbsaEdmrmcil1Bx04w" showStereotype="Label" useClassifierShape="true"/>
-        <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_skEGUrsaEdmrmcil1Bx04w" x="8268" y="14628"/>
-      </children>
-      <children xmi:id="_sku0sLsaEdmrmcil1Bx04w" sourceEdges="_sxVtWLsaEdmrmcil1Bx04w" targetEdges="_sxuH4LsaEdmrmcil1Bx04w">
-        <children xmi:id="_sku0s7saEdmrmcil1Bx04w" type="ImageCompartment">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_sku0tLsaEdmrmcil1Bx04w" width="530" height="530"/>
-        </children>
-        <children xmi:id="_sku0tbsaEdmrmcil1Bx04w" type="Stereotype">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sku0trsaEdmrmcil1Bx04w" type="Kind">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sku0t7saEdmrmcil1Bx04w" type="Name">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sku0uLsaEdmrmcil1Bx04w" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sku0ubsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sku0ursaEdmrmcil1Bx04w" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sku0u7saEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sku0vLsaEdmrmcil1Bx04w" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sku0vbsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLClassifierStyle" xmi:id="_sku0sbsaEdmrmcil1Bx04w" showStereotype="Label" useClassifierShape="true"/>
-        <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sku0srsaEdmrmcil1Bx04w" x="20034" y="2544"/>
-      </children>
-      <children xmi:id="_sl-K0LsaEdmrmcil1Bx04w">
-        <children xmi:id="_sl-K07saEdmrmcil1Bx04w" type="ImageCompartment">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_sl-K1LsaEdmrmcil1Bx04w" width="1320" height="1320"/>
-        </children>
-        <children xmi:id="_sl-K1bsaEdmrmcil1Bx04w" type="Stereotype">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_smERcLsaEdmrmcil1Bx04w" type="Name">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_smERcbsaEdmrmcil1Bx04w" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_smERcrsaEdmrmcil1Bx04w" filtering="Manual">
-            <filteredObjects xmi:type="uml:Property" href="vizref:///#jfield^vcore.target=uml2.Property^name=name[jsrctype^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-            <filteredObjects xmi:type="uml:Property" href="vizref:///#jfield^vcore.target=uml2.Property^name=toString[jsrctype^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-            <filteredObjects xmi:type="uml:Property" href="vizref:///#jfield^vcore.target=uml2.Property^name=hashCode[jsrctype^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </styles>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_smERc7saEdmrmcil1Bx04w" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_smERdLsaEdmrmcil1Bx04w" filtering="Manual">
-            <filteredObjects xmi:type="uml:Operation" href="vizref:///#jmethod^vcore.target=uml2.Operation^name=ComponentHandle^sign=(QIProject%3bQString%3b)V[jsrctype^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </styles>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_smERdbsaEdmrmcil1Bx04w" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_smERdrsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_snOIALsaEdmrmcil1Bx04w" visible="false" type="StructureCompartment">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_snOIAbsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_sl-K0bsaEdmrmcil1Bx04w" showStereotype="Label"/>
-        <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentHandle[jcu^name=ComponentHandle.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sl-K0rsaEdmrmcil1Bx04w" x="13674" y="2544"/>
-      </children>
-      <children xmi:id="_sqLVYLsaEdmrmcil1Bx04w" sourceEdges="_sxbz_bsaEdmrmcil1Bx04w" targetEdges="_sxoBMLsaEdmrmcil1Bx04w">
-        <children xmi:id="_sqLVY7saEdmrmcil1Bx04w" type="ImageCompartment">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_sqLVZLsaEdmrmcil1Bx04w" width="530" height="530"/>
-        </children>
-        <children xmi:id="_sqLVZbsaEdmrmcil1Bx04w" type="Stereotype">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sqLVZrsaEdmrmcil1Bx04w" type="Kind">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sqRcALsaEdmrmcil1Bx04w" type="Name">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sqRcAbsaEdmrmcil1Bx04w" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sqRcArsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sqRcA7saEdmrmcil1Bx04w" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sqRcBLsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sqRcBbsaEdmrmcil1Bx04w" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sqRcBrsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLClassifierStyle" xmi:id="_sqLVYbsaEdmrmcil1Bx04w" showStereotype="Label" useClassifierShape="true"/>
-        <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sqLVYrsaEdmrmcil1Bx04w" x="1590" y="14628"/>
-      </children>
-      <children xmi:id="_sqv9ILsaEdmrmcil1Bx04w" sourceEdges="_sxh6krsaEdmrmcil1Bx04w _sxoBMLsaEdmrmcil1Bx04w _sxoBOLsaEdmrmcil1Bx04w _sxuH0LsaEdmrmcil1Bx04w" targetEdges="_sxPmuLsaEdmrmcil1Bx04w _sxVtUbsaEdmrmcil1Bx04w _sx0OeLsaEdmrmcil1Bx04w">
-        <children xmi:id="_sq2DwLsaEdmrmcil1Bx04w" type="ImageCompartment">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_sq2DwbsaEdmrmcil1Bx04w" width="530" height="530"/>
-        </children>
-        <children xmi:id="_sq2DwrsaEdmrmcil1Bx04w" type="Stereotype">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sq2Dw7saEdmrmcil1Bx04w" type="Kind">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sq2DxLsaEdmrmcil1Bx04w" type="Name">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sq2DxbsaEdmrmcil1Bx04w" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sq2DxrsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sq2Dx7saEdmrmcil1Bx04w" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sq2DyLsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_sq2DybsaEdmrmcil1Bx04w" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_sq2DyrsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLClassifierStyle" xmi:id="_sqv9IbsaEdmrmcil1Bx04w" showStereotype="Label" useClassifierShape="true"/>
-        <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sqv9IrsaEdmrmcil1Bx04w" x="8586" y="2544"/>
-      </children>
-      <children xmi:id="_ssd0YLsaEdmrmcil1Bx04w" sourceEdges="_sxuH2LsaEdmrmcil1Bx04w">
-        <children xmi:id="_ssd0Y7saEdmrmcil1Bx04w" type="ImageCompartment">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_ssd0ZLsaEdmrmcil1Bx04w" width="530" height="530"/>
-        </children>
-        <children xmi:id="_ssd0ZbsaEdmrmcil1Bx04w" type="Stereotype">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_ssd0ZrsaEdmrmcil1Bx04w" type="Kind">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_ssd0Z7saEdmrmcil1Bx04w" type="Name">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_ssd0aLsaEdmrmcil1Bx04w" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_ssd0absaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_ssd0arsaEdmrmcil1Bx04w" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_ssd0a7saEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_ssd0bLsaEdmrmcil1Bx04w" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_ssd0bbsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLClassifierStyle" xmi:id="_ssd0YbsaEdmrmcil1Bx04w" showStereotype="Label" useClassifierShape="true"/>
-        <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ssd0YrsaEdmrmcil1Bx04w" x="20034" y="10812" width="4871"/>
-      </children>
-      <children xmi:id="_stPQcLsaEdmrmcil1Bx04w" sourceEdges="_sxuH4LsaEdmrmcil1Bx04w _sx0OcLsaEdmrmcil1Bx04w _sx0OeLsaEdmrmcil1Bx04w" targetEdges="_sxPmsLsaEdmrmcil1Bx04w _sxVtWLsaEdmrmcil1Bx04w _sxuH2LsaEdmrmcil1Bx04w">
-        <children xmi:id="_stPQc7saEdmrmcil1Bx04w" type="ImageCompartment">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_stPQdLsaEdmrmcil1Bx04w" width="530" height="530"/>
-        </children>
-        <children xmi:id="_stPQdbsaEdmrmcil1Bx04w" type="Stereotype">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_stPQdrsaEdmrmcil1Bx04w" type="Kind">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_stPQd7saEdmrmcil1Bx04w" type="Name">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_stPQeLsaEdmrmcil1Bx04w" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_stPQebsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_stVXELsaEdmrmcil1Bx04w" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_stVXEbsaEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_stVXErsaEdmrmcil1Bx04w" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_stVXE7saEdmrmcil1Bx04w"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLClassifierStyle" xmi:id="_stPQcbsaEdmrmcil1Bx04w" showStereotype="Label" useClassifierShape="true"/>
-        <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_stPQcrsaEdmrmcil1Bx04w" x="13674" y="9222"/>
-      </children>
-      <styles xmi:type="umlnotation:UMLDiagramStyle" xmi:id="_XP2kc7qvEdmTwLcLkpAHPw"/>
-      <edges xmi:id="_sxPmsLsaEdmrmcil1Bx04w" source="_sLnKELsaEdmrmcil1Bx04w" target="_stPQcLsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxPms7saEdmrmcil1Bx04w" type="KindLabel">
-          <children xmi:id="_sxPmtbsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxPmt7saEdmrmcil1Bx04w" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxPmtrsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxPmtLsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxPmsbsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxPmsrsaEdmrmcil1Bx04w" points="[3254, 4445, -9763, 1005]$[6773, 4445, -6244, 1005]$[6773, 4393, -6244, 953]$[10716, 4393, -2301, 953]"/>
-      </edges>
-      <edges xmi:id="_sxPmuLsaEdmrmcil1Bx04w" source="_sLnKELsaEdmrmcil1Bx04w" target="_sqv9ILsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxPmu7saEdmrmcil1Bx04w" type="KindLabel">
-          <children xmi:id="_sxPmvbsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxVtULsaEdmrmcil1Bx04w" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxPmvrsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxPmvLsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxPmubsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxPmursaEdmrmcil1Bx04w" points="[3254, -3148, -3996, -529]$[5318, -3148, -1932, -529]"/>
-      </edges>
-      <edges xmi:id="_sxVtUbsaEdmrmcil1Bx04w" source="_skEGULsaEdmrmcil1Bx04w" target="_sqv9ILsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxVtVLsaEdmrmcil1Bx04w" type="NameLabel">
-          <children xmi:id="_sxVtVrsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxVtV7saEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxVtVbsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxVtUrsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxVtU7saEdmrmcil1Bx04w" points="[132, -1085, -265, 10795]$[132, -8678, -265, 3202]"/>
-      </edges>
-      <edges xmi:id="_sxVtWLsaEdmrmcil1Bx04w" source="_sku0sLsaEdmrmcil1Bx04w" target="_stPQcLsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxbz8LsaEdmrmcil1Bx04w" type="KindLabel">
-          <children xmi:id="_sxbz8rsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxbz9LsaEdmrmcil1Bx04w" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxbz87saEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxbz8bsaEdmrmcil1Bx04w" x="-98" y="338"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxVtWbsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxVtWrsaEdmrmcil1Bx04w" points="[-3175, 583, 3758, -6032]$[-4181, 583, 2752, -6032]$[-4181, 4551, 2752, -2064]$[-4657, 4551, 2276, -2064]"/>
-      </edges>
-      <edges xmi:id="_sxbz_bsaEdmrmcil1Bx04w" source="_sqLVYLsaEdmrmcil1Bx04w" target="_sLnKELsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxb0ALsaEdmrmcil1Bx04w" type="NameLabel">
-          <children xmi:id="_sxh6kLsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxh6kbsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxb0AbsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxbz_rsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxbz_7saEdmrmcil1Bx04w" points="[741, -1058, -2143, 15214]$[741, -10478, -2143, 5794]"/>
-      </edges>
-      <edges xmi:id="_sxh6krsaEdmrmcil1Bx04w" source="_sqv9ILsaEdmrmcil1Bx04w" target="_sLnKELsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxh6lbsaEdmrmcil1Bx04w" type="KindLabel">
-          <children xmi:id="_sxh6l7saEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxh6mbsaEdmrmcil1Bx04w" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxh6mLsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxh6lrsaEdmrmcil1Bx04w" x="81" y="-1070"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxh6k7saEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxh6lLsaEdmrmcil1Bx04w" points="[1481, -3175, 2381, 7488]$[1481, -4869, 2381, 5794]"/>
-      </edges>
-      <edges xmi:id="_sxoBMLsaEdmrmcil1Bx04w" source="_sqv9ILsaEdmrmcil1Bx04w" target="_sqLVYLsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxoBM7saEdmrmcil1Bx04w" type="KindLabel">
-          <children xmi:id="_sxoBNbsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxoBN7saEdmrmcil1Bx04w" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxoBNrsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxoBNLsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxoBMbsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualFile[jcu^name=IVirtualFile.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxoBMrsaEdmrmcil1Bx04w" points="[-1587, 3202, 5372, -6773]$[-1587, 4154, 5372, -5821]$[-2910, 4154, 4049, -5821]$[-2910, 9948, 4049, -27]$[-4974, 9948, 1985, -27]"/>
-      </edges>
-      <edges xmi:id="_sxoBOLsaEdmrmcil1Bx04w" source="_sqv9ILsaEdmrmcil1Bx04w" target="_sLnKELsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxoBO7saEdmrmcil1Bx04w" type="NameLabel">
-          <children xmi:id="_sxoBPbsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxoBPrsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxoBPLsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxoBObsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxoBOrsaEdmrmcil1Bx04w" points="[-80, -3175, 820, 7488]$[-80, -4869, 820, 5794]"/>
-      </edges>
-      <edges xmi:id="_sxuH0LsaEdmrmcil1Bx04w" source="_sqv9ILsaEdmrmcil1Bx04w" target="_skEGULsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxuH07saEdmrmcil1Bx04w" type="KindLabel">
-          <children xmi:id="_sxuH1bsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxuH17saEdmrmcil1Bx04w" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxuH1rsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxuH1LsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxuH0bsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualFolder[jcu^name=IVirtualFolder.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxuH0rsaEdmrmcil1Bx04w" points="[-979, 3202, -900, -6773]$[-979, 8890, -900, -1085]"/>
-      </edges>
-      <edges xmi:id="_sxuH2LsaEdmrmcil1Bx04w" source="_ssd0YLsaEdmrmcil1Bx04w" target="_stPQcLsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxuH27saEdmrmcil1Bx04w" type="KindLabel">
-          <children xmi:id="_sxuH3bsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxuH37saEdmrmcil1Bx04w" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxuH3rsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxuH3LsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxuH2bsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IFlexibleProject[jcu^name=IFlexibleProject.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxuH2rsaEdmrmcil1Bx04w" points="[-1, 3201, -768, -4155]$[767, 4789, 0, -2567]"/>
-      </edges>
-      <edges xmi:id="_sxuH4LsaEdmrmcil1Bx04w" source="_stPQcLsaEdmrmcil1Bx04w" target="_sku0sLsaEdmrmcil1Bx04w">
-        <children xmi:id="_sxuH47saEdmrmcil1Bx04w" type="KindLabel">
-          <children xmi:id="_sxuH5bsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxuH57saEdmrmcil1Bx04w" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sxuH5rsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sxuH5LsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sxuH4bsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualReference[jcu^name=IVirtualReference.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sxuH4rsaEdmrmcil1Bx04w" points="[2276, -1349, -4657, 5266]$[3125, -1349, -3808, 5266]$[3125, -5503, -3808, 1112]$[3125, -5530, -3808, 1085]$[3758, -5530, -3175, 1085]"/>
-      </edges>
-      <edges xmi:id="_sx0OcLsaEdmrmcil1Bx04w" source="_stPQcLsaEdmrmcil1Bx04w" target="_sLnKELsaEdmrmcil1Bx04w">
-        <children xmi:id="_sx0Oc7saEdmrmcil1Bx04w" type="KindLabel">
-          <children xmi:id="_sx0OdbsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sx0Od7saEdmrmcil1Bx04w" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sx0OdrsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sx0OdLsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sx0OcbsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualResource[jcu^name=IVirtualResource.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sx0OcrsaEdmrmcil1Bx04w" points="[-2275, 1799, 10742, 5239]$[-9763, 1799, 3254, 5239]"/>
-      </edges>
-      <edges xmi:id="_sx0OeLsaEdmrmcil1Bx04w" source="_stPQcLsaEdmrmcil1Bx04w" target="_sqv9ILsaEdmrmcil1Bx04w">
-        <children xmi:id="_sx0Oe7saEdmrmcil1Bx04w" type="NameLabel">
-          <children xmi:id="_sx0OfbsaEdmrmcil1Bx04w" type="Stereotype">
-            <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_sx6VELsaEdmrmcil1Bx04w" type="Name">
-            <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_sx0OfLsaEdmrmcil1Bx04w" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_sx0OebsaEdmrmcil1Bx04w" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Generalization" href="vizref:///#jgen^vcore.target=uml2.Generalization[jsrctype^name=IVirtualComponent[jcu^name=IVirtualComponent.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IVirtualContainer[jcu^name=IVirtualContainer.java[jpack^name=org.eclipse.wst.common.componentcore.resources[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sx0OersaEdmrmcil1Bx04w" points="[-2275, -1217, 3492, 4842]$[-4709, -1217, 1058, 4842]$[-4709, -2857, 1058, 3202]"/>
-      </edges>
-    </contents>
-  </eAnnotations>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_XSiFALqvEdmTwLcLkpAHPw">
-    <eAnnotations xmi:id="_XSiFAbqvEdmTwLcLkpAHPw" source="attributes">
-      <details xmi:id="_XSiFArqvEdmTwLcLkpAHPw" key="version" value="0"/>
-    </eAnnotations>
-    <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>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_XUP8QLqvEdmTwLcLkpAHPw">
-    <eAnnotations xmi:id="_XUP8QbqvEdmTwLcLkpAHPw" source="attributes">
-      <details xmi:id="_XUoWwLqvEdmTwLcLkpAHPw" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Intermediate.profile.uml2#_Cz7csK87Edih9-GG5afQ0g"/>
-    <importedProfile href="pathmap://UML2_PROFILES/Intermediate.profile.uml2#_Cz7csK87Edih9-GG5afQ0g"/>
-  </packageImport>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_XU0kALqvEdmTwLcLkpAHPw">
-    <eAnnotations xmi:id="_XU0kAbqvEdmTwLcLkpAHPw" source="attributes">
-      <details xmi:id="_XU0kArqvEdmTwLcLkpAHPw" key="version" value="0"/>
-    </eAnnotations>
-    <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="_XWoh4LqvEdmTwLcLkpAHPw">
-    <eAnnotations xmi:id="_XWoh4bqvEdmTwLcLkpAHPw" source="attributes">
-      <details xmi:id="_XWoh4rqvEdmTwLcLkpAHPw" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default"/>
-    <importedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default"/>
-  </packageImport>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_XZsc8LqvEdmTwLcLkpAHPw">
-    <eAnnotations xmi:id="_XZsc8bqvEdmTwLcLkpAHPw" source="attributes">
-      <details xmi:id="_XZsc8rqvEdmTwLcLkpAHPw" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment"/>
-    <importedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment"/>
-  </packageImport>
-  <packageImport xmi:id="_XiSYQLqvEdmTwLcLkpAHPw">
-    <importedPackage xmi:type="uml:Model" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_EfRZoK86EdieaYgxtVWN8Q"/>
-  </packageImport>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_WZvHQLscEdmrmcil1Bx04w" name="Enumeration1"/>
-</uml:Model>
diff --git a/plugins/org.eclipse.wst.common.modulecore/model/componentCore.ecore b/plugins/org.eclipse.wst.common.modulecore/model/componentCore.ecore
deleted file mode 100644
index fccafb8..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/model/componentCore.ecore
+++ /dev/null
@@ -1,80 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ecore:EPackage xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="componentcore"
-    nsURI="componentcore.xmi" nsPrefix="org.eclipse.wst.common.componentcore">
-  <eClassifiers xsi:type="ecore:EClass" name="WorkbenchComponent">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
-        defaultValueLiteral=""/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="resources" unique="false"
-        upperBound="-1" eType="#//ComponentResource" containment="true" eOpposite="#//ComponentResource/component"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="componentType" unique="false"
-        lowerBound="1" eType="#//ComponentType" containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="referencedComponents" unique="false"
-        upperBound="-1" eType="#//ReferencedComponent" containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
-        eType="#//Property"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="metadataResources" upperBound="-1"
-        eType="#//IPath"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ComponentResource">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="sourcePath" lowerBound="1"
-        eType="#//IPath"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="runtimePath" lowerBound="1"
-        eType="#//IPath"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="exclusions" upperBound="-1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" defaultValueLiteral=""/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="component" unique="false"
-        lowerBound="1" eType="#//WorkbenchComponent" eOpposite="#//WorkbenchComponent/resources"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="resourceType" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" defaultValueLiteral=""/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EDataType" name="IPath" instanceClassName="org.eclipse.core.runtime.IPath">
-    <eAnnotations source="keywords">
-      <details key="datatype"/>
-    </eAnnotations>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ComponentType">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="componentTypeId" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" defaultValueLiteral=""/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" defaultValueLiteral=""/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
-        eType="#//Property"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="metadataResources" upperBound="-1"
-        eType="#//IPath"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Property">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
-        defaultValueLiteral=""/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
-        defaultValueLiteral=""/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ReferencedComponent">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="handle" lowerBound="1"
-        eType="#//URI"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="runtimePath" lowerBound="1"
-        eType="#//IPath"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="dependencyType" lowerBound="1"
-        eType="#//DependencyType"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="dependentObject" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="archiveName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EDataType" name="URI" instanceClassName="org.eclipse.emf.common.util.URI">
-    <eAnnotations source="keywords">
-      <details key="datatype"/>
-    </eAnnotations>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="DependencyType">
-    <eLiterals name="uses"/>
-    <eLiterals name="consumes" value="1"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ProjectComponents">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="projectName" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" defaultValueLiteral=""/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="components" unique="false"
-        upperBound="-1" eType="#//WorkbenchComponent" containment="true"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-  </eClassifiers>
-</ecore:EPackage>
diff --git a/plugins/org.eclipse.wst.common.modulecore/model/componentCore.emx b/plugins/org.eclipse.wst.common.modulecore/model/componentCore.emx
deleted file mode 100644
index 91c48c8..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/model/componentCore.emx
+++ /dev/null
@@ -1,609 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--xtools2_universal_type_manager-->
-<uml:Model xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Default_0="http:///Default_0.profile.uml2" xmlns:Ecore_0="http:///Ecore_0.profile.uml2" xmlns:notation="http://www.ibm.com/xtools/1.5.0/Notation" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.0/Umlnotation" xsi:schemaLocation="http:///Default_0.profile.uml2 pathmap://UML2_MSL_PROFILES/Default.epx#_bA7Pc9WLEdiy4IqP8whjFA?Default/%3CEPackage%3E http:///Ecore_0.profile.uml2 pathmap://UML2_PROFILES/Ecore.profile.uml2#_v9VUsK87Edi5QpYeY_yIpg" xmi:id="3A0B2474025F" name="componentcore" appliedProfile="_kMDG4ZTYEdmy2onHYKlABg _kMDG5JTYEdmy2onHYKlABg _kMDG55TYEdmy2onHYKlABg _kMDG6pTYEdmy2onHYKlABg _kMDG7ZTYEdmy2onHYKlABg _kMJNg5TYEdmy2onHYKlABg _kNq3gZTYEdmy2onHYKlABg _H0ye8JTvEdmDNY6lnGAg5A">
-  <eAnnotations xmi:id="_kMJNhpTYEdmy2onHYKlABg" source="appliedStereotypes">
-    <contents xmi:type="Ecore_0:Ecore__EPackage" xmi:id="_xDZMwJTYEdmy2onHYKlABg" nsURI="componentcore.xmi" basePackage="org.eclipse.wst.common" prefix="ComponentCore"/>
-  </eAnnotations>
-  <eAnnotations xmi:id="_kNq3hJTYEdmy2onHYKlABg" source="appliedStereotypes">
-    <contents xmi:type="Ecore_0:Ecore__EPackage" xmi:id="_kNq3hZTYEdmy2onHYKlABg" nsURI="modulecore.xmi" basePackage="org.eclipse.wst.common" prefix="ModuleCore"/>
-  </eAnnotations>
-  <eAnnotations xmi:id="_kOVl9JTYEdmy2onHYKlABg" source="uml2.diagrams" references="_3A0B2474025F41E3DF060210">
-    <contents xmi:type="notation:Diagram" xmi:id="_3A0B2474025F41E3DF060210" type="Class" name="ComponentCore">
-      <children xmi:id="_kP328JTYEdmy2onHYKlABg" type="Note" sourceEdges="_kQilYpTYEdmy2onHYKlABg">
-        <children xmi:id="_kP99kJTYEdmy2onHYKlABg" type="DiagramName"/>
-        <children xmi:id="_kP99kZTYEdmy2onHYKlABg" type="Description"/>
-        <styles xmi:type="notation:ShapeStyle" xmi:id="_kP328ZTYEdmy2onHYKlABg" description="The ReferencedComponent handle must be resolvable to a WorkbenchComponent.&#xD;&#xA;&#xD;&#xA;The runtimePath specifies the location of the ReferencedComponent in the runtime structure of the containing WorkbenchComponent.&#xD;&#xA;&#xD;&#xA;The dependencyType specifies how the ReferencedComponent is assembled within the containing WorkbenchComponent." fillColor="13369343" lineColor="6737151"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kP328pTYEdmy2onHYKlABg" x="19398" y="636" width="6934" height="4343"/>
-      </children>
-      <children xmi:id="_kQEENZTYEdmy2onHYKlABg" targetEdges="_bNhv4JTcEdmy2onHYKlABg" element="_3A0B2474025F41EC26DA027A">
-        <children xmi:id="_kQEEOJTYEdmy2onHYKlABg" type="ImageCompartment" element="_3A0B2474025F41EC26DA027A">
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_kQEEOZTYEdmy2onHYKlABg" width="7941" height="2048"/>
-        </children>
-        <children xmi:id="_kQEEOpTYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F41EC26DA027A"/>
-        <children xmi:id="_kQEEO5TYEdmy2onHYKlABg" type="Kind" element="_3A0B2474025F41EC26DA027A"/>
-        <children xmi:id="_kQEEPJTYEdmy2onHYKlABg" type="Name" element="_3A0B2474025F41EC26DA027A"/>
-        <children xmi:id="_kQEEPZTYEdmy2onHYKlABg" type="AttributeCompartment" element="_3A0B2474025F41EC26DA027A">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEEPpTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQEEP5TYEdmy2onHYKlABg" type="OperationCompartment" element="_3A0B2474025F41EC26DA027A">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEEQJTYEdmy2onHYKlABg"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_kQEENpTYEdmy2onHYKlABg" showListStereotype="Text" showStereotype="Image"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kQEEN5TYEdmy2onHYKlABg" x="12285" y="15472"/>
-      </children>
-      <children xmi:id="_kQEEQZTYEdmy2onHYKlABg" targetEdges="_kQKK7pTYEdmy2onHYKlABg" element="_3A0B2474025F41E3DF670039">
-        <children xmi:id="_kQEERJTYEdmy2onHYKlABg" type="ImageCompartment" element="_3A0B2474025F41E3DF670039">
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_kQEERZTYEdmy2onHYKlABg" width="4859" height="2421"/>
-        </children>
-        <children xmi:id="_kQEERpTYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F41E3DF670039"/>
-        <children xmi:id="_kQEER5TYEdmy2onHYKlABg" type="Name" element="_3A0B2474025F41E3DF670039"/>
-        <children xmi:id="_kQEESJTYEdmy2onHYKlABg" type="AttributeCompartment" element="_3A0B2474025F41E3DF670039">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEESZTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQEESpTYEdmy2onHYKlABg" type="OperationCompartment" element="_3A0B2474025F41E3DF670039">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEES5TYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQEETJTYEdmy2onHYKlABg" visible="false" type="SignalCompartment" element="_3A0B2474025F41E3DF670039">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEETZTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQEETpTYEdmy2onHYKlABg" visible="false" type="StructureCompartment" element="_3A0B2474025F41E3DF670039">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_kQEET5TYEdmy2onHYKlABg" canonical="false"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_kQEEQpTYEdmy2onHYKlABg" showListStereotype="Text" showStereotype="Image"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kQEEQ5TYEdmy2onHYKlABg" x="5969" y="16099"/>
-      </children>
-      <children xmi:id="_kQEEUJTYEdmy2onHYKlABg" sourceEdges="_B4bI0JTcEdmy2onHYKlABg _bNhv4JTcEdmy2onHYKlABg" targetEdges="_kQWYHpTYEdmy2onHYKlABg" element="_3A0B2474025F41EC1D5103E2">
-        <children xmi:id="_kQEEU5TYEdmy2onHYKlABg" type="ImageCompartment" element="_3A0B2474025F41EC1D5103E2">
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_kQEEVJTYEdmy2onHYKlABg" width="6028" height="1998"/>
-        </children>
-        <children xmi:id="_kQEEVZTYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F41EC1D5103E2"/>
-        <children xmi:id="_kQEEVpTYEdmy2onHYKlABg" type="Name" element="_3A0B2474025F41EC1D5103E2"/>
-        <children xmi:id="_kQEEV5TYEdmy2onHYKlABg" type="AttributeCompartment" element="_3A0B2474025F41EC1D5103E2">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEEWJTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQEEWZTYEdmy2onHYKlABg" type="OperationCompartment" element="_3A0B2474025F41EC1D5103E2">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEEWpTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQEEW5TYEdmy2onHYKlABg" visible="false" type="SignalCompartment" element="_3A0B2474025F41EC1D5103E2">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEEXJTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQEEXZTYEdmy2onHYKlABg" visible="false" type="StructureCompartment" element="_3A0B2474025F41EC1D5103E2">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_kQEEXpTYEdmy2onHYKlABg" canonical="false"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_kQEEUZTYEdmy2onHYKlABg" showListStereotype="Text" showStereotype="Image"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kQEEUpTYEdmy2onHYKlABg" x="11448" y="11130"/>
-      </children>
-      <children xmi:id="_kQEEX5TYEdmy2onHYKlABg" sourceEdges="_kQWYPpTYEdmy2onHYKlABg" element="_3A0B2474025F41F566DB0251">
-        <children xmi:id="_kQEEYpTYEdmy2onHYKlABg" type="ImageCompartment" element="_3A0B2474025F41F566DB0251">
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_kQEEY5TYEdmy2onHYKlABg" width="3742" height="1574"/>
-        </children>
-        <children xmi:id="_kQEEZJTYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F41F566DB0251"/>
-        <children xmi:id="_kQEEZZTYEdmy2onHYKlABg" type="Name" element="_3A0B2474025F41F566DB0251"/>
-        <children xmi:id="_kQEEZpTYEdmy2onHYKlABg" type="AttributeCompartment" element="_3A0B2474025F41F566DB0251">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEEZ5TYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQEEaJTYEdmy2onHYKlABg" type="OperationCompartment" element="_3A0B2474025F41F566DB0251">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEEaZTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQEEapTYEdmy2onHYKlABg" visible="false" type="SignalCompartment" element="_3A0B2474025F41F566DB0251">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQEEa5TYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQEEbJTYEdmy2onHYKlABg" visible="false" type="StructureCompartment" element="_3A0B2474025F41F566DB0251">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_kQEEbZTYEdmy2onHYKlABg" canonical="false"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_kQEEYJTYEdmy2onHYKlABg" showListStereotype="Text" showStereotype="Image"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kQEEYZTYEdmy2onHYKlABg" x="1651" y="4872"/>
-      </children>
-      <children xmi:id="_kQKK0JTYEdmy2onHYKlABg" targetEdges="_kQcewpTYEdmy2onHYKlABg _kQilYpTYEdmy2onHYKlABg" element="_3A0B2474025F41F6C24B023D">
-        <children xmi:id="_kQKK05TYEdmy2onHYKlABg" type="ImageCompartment" element="_3A0B2474025F41F6C24B023D">
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_kQKK1JTYEdmy2onHYKlABg" width="6146" height="2421"/>
-        </children>
-        <children xmi:id="_kQKK1ZTYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F41F6C24B023D"/>
-        <children xmi:id="_kQKK1pTYEdmy2onHYKlABg" type="Name" element="_3A0B2474025F41F6C24B023D"/>
-        <children xmi:id="_kQKK15TYEdmy2onHYKlABg" type="AttributeCompartment" element="_3A0B2474025F41F6C24B023D">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQKK2JTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQKK2ZTYEdmy2onHYKlABg" type="OperationCompartment" element="_3A0B2474025F41F6C24B023D">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQKK2pTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQKK25TYEdmy2onHYKlABg" visible="false" type="SignalCompartment" element="_3A0B2474025F41F6C24B023D">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQKK3JTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQKK3ZTYEdmy2onHYKlABg" visible="false" type="StructureCompartment" element="_3A0B2474025F41F6C24B023D">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_kQKK3pTYEdmy2onHYKlABg" canonical="false"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_kQKK0ZTYEdmy2onHYKlABg" showListStereotype="Text" showStereotype="Image"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kQKK0pTYEdmy2onHYKlABg" x="12402" y="4134"/>
-      </children>
-      <children xmi:id="_kQKK35TYEdmy2onHYKlABg" sourceEdges="_kQKK7pTYEdmy2onHYKlABg _kQWYHpTYEdmy2onHYKlABg _kQcewpTYEdmy2onHYKlABg" targetEdges="_kQWYPpTYEdmy2onHYKlABg" element="_3A0B2474025F41E3DF5801FA">
-        <children xmi:id="_kQKK4pTYEdmy2onHYKlABg" type="ImageCompartment" element="_3A0B2474025F41E3DF5801FA">
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_kQKK45TYEdmy2onHYKlABg" width="4080" height="1998"/>
-        </children>
-        <children xmi:id="_kQKK5JTYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F41E3DF5801FA"/>
-        <children xmi:id="_kQKK5ZTYEdmy2onHYKlABg" type="Name" element="_3A0B2474025F41E3DF5801FA"/>
-        <children xmi:id="_kQKK5pTYEdmy2onHYKlABg" type="AttributeCompartment" element="_3A0B2474025F41E3DF5801FA">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQKK55TYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQKK6JTYEdmy2onHYKlABg" type="OperationCompartment" element="_3A0B2474025F41E3DF5801FA">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQKK6ZTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQKK6pTYEdmy2onHYKlABg" visible="false" type="SignalCompartment" element="_3A0B2474025F41E3DF5801FA">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQKK65TYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQKK7JTYEdmy2onHYKlABg" visible="false" type="StructureCompartment" element="_3A0B2474025F41E3DF5801FA">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_kQKK7ZTYEdmy2onHYKlABg" canonical="false"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_kQKK4JTYEdmy2onHYKlABg" showListStereotype="Text" showStereotype="Image"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kQKK4ZTYEdmy2onHYKlABg" x="5952" y="7911"/>
-      </children>
-      <children xmi:id="_kQilVJTYEdmy2onHYKlABg" element="_3A0B2474025F420394F50185">
-        <children xmi:id="_kQilV5TYEdmy2onHYKlABg" type="ImageCompartment" element="_3A0B2474025F420394F50185">
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_kQilWJTYEdmy2onHYKlABg" width="3081" height="2472"/>
-        </children>
-        <children xmi:id="_kQilWZTYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F420394F50185"/>
-        <children xmi:id="_kQilWpTYEdmy2onHYKlABg" type="Kind" element="_3A0B2474025F420394F50185"/>
-        <children xmi:id="_kQilW5TYEdmy2onHYKlABg" type="Name" element="_3A0B2474025F420394F50185"/>
-        <children xmi:id="_kQilXJTYEdmy2onHYKlABg" type="EnumerationCompartment" element="_3A0B2474025F420394F50185">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQilXZTYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQilXpTYEdmy2onHYKlABg" type="AttributeCompartment" element="_3A0B2474025F420394F50185">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQilX5TYEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_kQilYJTYEdmy2onHYKlABg" type="OperationCompartment" element="_3A0B2474025F420394F50185">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQilYZTYEdmy2onHYKlABg"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_kQilVZTYEdmy2onHYKlABg" showListStereotype="Text" showStereotype="Image"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kQilVpTYEdmy2onHYKlABg" x="19716" y="7314"/>
-      </children>
-      <children xmi:id="_5BUlQJTbEdmy2onHYKlABg" targetEdges="_B4bI0JTcEdmy2onHYKlABg" element="_5BCRYJTbEdmy2onHYKlABg">
-        <children xmi:id="_5BUlQ5TbEdmy2onHYKlABg" type="ImageCompartment" element="_5BCRYJTbEdmy2onHYKlABg">
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_5BUlRJTbEdmy2onHYKlABg" width="1320" height="1320"/>
-        </children>
-        <children xmi:id="_5BUlRZTbEdmy2onHYKlABg" type="Stereotype" element="_5BCRYJTbEdmy2onHYKlABg"/>
-        <children xmi:id="_5BUlRpTbEdmy2onHYKlABg" type="Name" element="_5BCRYJTbEdmy2onHYKlABg"/>
-        <children xmi:id="_5BUlR5TbEdmy2onHYKlABg" type="AttributeCompartment" element="_5BCRYJTbEdmy2onHYKlABg">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_5BUlSJTbEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_5BUlSZTbEdmy2onHYKlABg" type="OperationCompartment" element="_5BCRYJTbEdmy2onHYKlABg">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_5BUlSpTbEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_5BUlS5TbEdmy2onHYKlABg" visible="false" type="SignalCompartment" element="_5BCRYJTbEdmy2onHYKlABg">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_5BUlTJTbEdmy2onHYKlABg"/>
-        </children>
-        <children xmi:id="_5BUlTZTbEdmy2onHYKlABg" visible="false" type="StructureCompartment" element="_5BCRYJTbEdmy2onHYKlABg">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_5BUlTpTbEdmy2onHYKlABg"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_5BUlQZTbEdmy2onHYKlABg" showStereotype="Label"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5BUlQpTbEdmy2onHYKlABg" x="19080" y="11130"/>
-      </children>
-      <children xmi:id="_IQ7RkKS3EdmtQ4Tckv5S2Q" element="_IQQjMKS3EdmtQ4Tckv5S2Q">
-        <children xmi:id="_IRBYMKS3EdmtQ4Tckv5S2Q" type="ImageCompartment" element="_IQQjMKS3EdmtQ4Tckv5S2Q">
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_IRBYMaS3EdmtQ4Tckv5S2Q" width="1320" height="1320"/>
-        </children>
-        <children xmi:id="_IRBYMqS3EdmtQ4Tckv5S2Q" type="Stereotype" element="_IQQjMKS3EdmtQ4Tckv5S2Q"/>
-        <children xmi:id="_IRBYM6S3EdmtQ4Tckv5S2Q" type="Kind" element="_IQQjMKS3EdmtQ4Tckv5S2Q"/>
-        <children xmi:id="_IRBYNKS3EdmtQ4Tckv5S2Q" type="Name" element="_IQQjMKS3EdmtQ4Tckv5S2Q"/>
-        <children xmi:id="_IRBYNaS3EdmtQ4Tckv5S2Q" visible="false" type="AttributeCompartment" element="_IQQjMKS3EdmtQ4Tckv5S2Q">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_IRBYNqS3EdmtQ4Tckv5S2Q"/>
-        </children>
-        <children xmi:id="_IRBYN6S3EdmtQ4Tckv5S2Q" visible="false" type="OperationCompartment" element="_IQQjMKS3EdmtQ4Tckv5S2Q">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_IRBYOKS3EdmtQ4Tckv5S2Q"/>
-        </children>
-        <children xmi:id="_IRBYOaS3EdmtQ4Tckv5S2Q" visible="false" type="RealizationListCompartment" element="_IQQjMKS3EdmtQ4Tckv5S2Q">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_IRBYOqS3EdmtQ4Tckv5S2Q"/>
-        </children>
-        <children xmi:id="_IRBYO6S3EdmtQ4Tckv5S2Q" type="RequiredInterfaceListCompartment" element="_IQQjMKS3EdmtQ4Tckv5S2Q">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_IRBYPKS3EdmtQ4Tckv5S2Q"/>
-        </children>
-        <children xmi:id="_IRBYPaS3EdmtQ4Tckv5S2Q" type="ProvidedInterfaceListCompartment" element="_IQQjMKS3EdmtQ4Tckv5S2Q">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_IRBYPqS3EdmtQ4Tckv5S2Q"/>
-        </children>
-        <children xmi:id="_IRBYP6S3EdmtQ4Tckv5S2Q" visible="false" type="StructureCompartment" element="_IQQjMKS3EdmtQ4Tckv5S2Q">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_IRBYQKS3EdmtQ4Tckv5S2Q"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLComponentStyle" xmi:id="_IQ7RkaS3EdmtQ4Tckv5S2Q" showStereotype="Label"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IQ7RkqS3EdmtQ4Tckv5S2Q" x="19050" y="16007"/>
-      </children>
-      <styles xmi:type="umlnotation:UMLDiagramStyle" xmi:id="_kOVl9pTYEdmy2onHYKlABg"/>
-      <edges xmi:id="_kQKK7pTYEdmy2onHYKlABg" element="_3A0B2474025F41E3E14B01E3" source="_kQKK35TYEdmy2onHYKlABg" target="_kQEEQZTYEdmy2onHYKlABg">
-        <children xmi:id="_kQKK8ZTYEdmy2onHYKlABg" type="NameLabel" element="_3A0B2474025F41E3E14B01E3">
-          <children xmi:id="_kQQRcJTYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F41E3E14B01E3"/>
-          <children xmi:id="_kQQRcZTYEdmy2onHYKlABg" visible="false" type="Name" element="_3A0B2474025F41E3E14B01E3"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQKK8pTYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_kQQRcpTYEdmy2onHYKlABg" type="ToMultiplicityLabel" element="_3A0B2474025F41E3E14D031F">
-          <children xmi:id="_kQQRdJTYEdmy2onHYKlABg" type="ToMultiplicity" element="_3A0B2474025F41E3E14D031F"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQQRc5TYEdmy2onHYKlABg" x="-259" y="-264"/>
-        </children>
-        <children xmi:id="_kQQRdZTYEdmy2onHYKlABg" type="ToRoleLabel" element="_3A0B2474025F41E3E14D031F">
-          <children xmi:id="_kQQRd5TYEdmy2onHYKlABg" type="ToRole" element="_3A0B2474025F41E3E14D031F"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQQRdpTYEdmy2onHYKlABg" x="218" y="-1164"/>
-        </children>
-        <children xmi:id="_kQWYEJTYEdmy2onHYKlABg" type="FromMultiplicityLabel" element="_3A0B2474025F41E3E14D031D">
-          <children xmi:id="_kQWYEpTYEdmy2onHYKlABg" type="FromMultiplicity" element="_3A0B2474025F41E3E14D031D"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYEZTYEdmy2onHYKlABg" x="345" y="-263"/>
-        </children>
-        <children xmi:id="_kQWYE5TYEdmy2onHYKlABg" type="FromRoleLabel" element="_3A0B2474025F41E3E14D031D">
-          <children xmi:id="_kQWYFZTYEdmy2onHYKlABg" type="FromRole" element="_3A0B2474025F41E3E14D031D"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYFJTYEdmy2onHYKlABg" x="663" y="-1017"/>
-        </children>
-        <children xmi:id="_kQWYFpTYEdmy2onHYKlABg" type="ToQualifierLabel" element="_3A0B2474025F41E3E14D031F">
-          <children xmi:id="_kQWYGJTYEdmy2onHYKlABg" type="QualifierCompartment" element="_3A0B2474025F41E3E14D031F">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQWYGZTYEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYF5TYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_kQWYGpTYEdmy2onHYKlABg" type="FromQualifierLabel" element="_3A0B2474025F41E3E14D031D">
-          <children xmi:id="_kQWYHJTYEdmy2onHYKlABg" type="QualifierCompartment" element="_3A0B2474025F41E3E14D031D">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQWYHZTYEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYG5TYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_kQKK75TYEdmy2onHYKlABg" routing="Rectilinear" showStereotype="None"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kQKK8JTYEdmy2onHYKlABg" points="[-33, 999, -440, -7399]$[-33, 7188, -440, -1210]"/>
-      </edges>
-      <edges xmi:id="_kQWYHpTYEdmy2onHYKlABg" element="_3A0B2474025F41EC1D9802C2" source="_kQKK35TYEdmy2onHYKlABg" target="_kQEEUJTYEdmy2onHYKlABg">
-        <children xmi:id="_kQWYIZTYEdmy2onHYKlABg" type="NameLabel" element="_3A0B2474025F41EC1D9802C2">
-          <children xmi:id="_kQWYI5TYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F41EC1D9802C2"/>
-          <children xmi:id="_kQWYJJTYEdmy2onHYKlABg" visible="false" type="Name" element="_3A0B2474025F41EC1D9802C2"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYIpTYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_kQWYJZTYEdmy2onHYKlABg" visible="false" type="ToMultiplicityLabel" element="_3A0B2474025F41EC1D990243">
-          <children xmi:id="_kQWYJ5TYEdmy2onHYKlABg" type="ToMultiplicity" element="_3A0B2474025F41EC1D990243"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYJpTYEdmy2onHYKlABg" y="397"/>
-        </children>
-        <children xmi:id="_kQWYKJTYEdmy2onHYKlABg" visible="false" type="ToRoleLabel" element="_3A0B2474025F41EC1D990243">
-          <children xmi:id="_kQWYKpTYEdmy2onHYKlABg" type="ToRole" element="_3A0B2474025F41EC1D990243"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYKZTYEdmy2onHYKlABg" y="-397"/>
-        </children>
-        <children xmi:id="_kQWYK5TYEdmy2onHYKlABg" type="FromMultiplicityLabel" element="_3A0B2474025F41EC1D990241">
-          <children xmi:id="_kQWYLZTYEdmy2onHYKlABg" type="FromMultiplicity" element="_3A0B2474025F41EC1D990241"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYLJTYEdmy2onHYKlABg" x="-10" y="-301"/>
-        </children>
-        <children xmi:id="_kQWYLpTYEdmy2onHYKlABg" type="FromRoleLabel" element="_3A0B2474025F41EC1D990241">
-          <children xmi:id="_kQWYMJTYEdmy2onHYKlABg" type="FromRole" element="_3A0B2474025F41EC1D990241"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYL5TYEdmy2onHYKlABg" x="494" y="-1571"/>
-        </children>
-        <children xmi:id="_kQWYMZTYEdmy2onHYKlABg" type="ToQualifierLabel" element="_3A0B2474025F41EC1D990243">
-          <children xmi:id="_kQWYM5TYEdmy2onHYKlABg" type="QualifierCompartment" element="_3A0B2474025F41EC1D990243">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQWYNJTYEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYMpTYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_kQWYNZTYEdmy2onHYKlABg" type="FromQualifierLabel" element="_3A0B2474025F41EC1D990241">
-          <children xmi:id="_kQWYN5TYEdmy2onHYKlABg" type="QualifierCompartment" element="_3A0B2474025F41EC1D990241">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQWYOJTYEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYNpTYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_kQWYH5TYEdmy2onHYKlABg" routing="Rectilinear" showStereotype="None"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kQWYIJTYEdmy2onHYKlABg" points="[2040, 330, -5681, -2921]$[7730, 330, 8, -2921]$[7730, 2252, 8, -999]"/>
-      </edges>
-      <edges xmi:id="_kQWYPpTYEdmy2onHYKlABg" element="_3A0B2474025F41F5672000E8" source="_kQEEX5TYEdmy2onHYKlABg" target="_kQKK35TYEdmy2onHYKlABg">
-        <children xmi:id="_kQWYQZTYEdmy2onHYKlABg" type="NameLabel" element="_3A0B2474025F41F5672000E8">
-          <children xmi:id="_kQWYQ5TYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F41F5672000E8"/>
-          <children xmi:id="_kQWYRJTYEdmy2onHYKlABg" visible="false" type="Name" element="_3A0B2474025F41F5672000E8"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYQpTYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_kQWYRZTYEdmy2onHYKlABg" visible="false" type="ToMultiplicityLabel" element="_3A0B2474025F41F567210113">
-          <children xmi:id="_kQcesJTYEdmy2onHYKlABg" type="ToMultiplicity" element="_3A0B2474025F41F567210113"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQWYRpTYEdmy2onHYKlABg" y="397"/>
-        </children>
-        <children xmi:id="_kQcesZTYEdmy2onHYKlABg" visible="false" type="ToRoleLabel" element="_3A0B2474025F41F567210113">
-          <children xmi:id="_kQces5TYEdmy2onHYKlABg" type="ToRole" element="_3A0B2474025F41F567210113"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQcespTYEdmy2onHYKlABg" y="-397"/>
-        </children>
-        <children xmi:id="_kQcetJTYEdmy2onHYKlABg" type="FromMultiplicityLabel" element="_3A0B2474025F41F567210111">
-          <children xmi:id="_kQcetpTYEdmy2onHYKlABg" type="FromMultiplicity" element="_3A0B2474025F41F567210111"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQcetZTYEdmy2onHYKlABg" x="-1568" y="516"/>
-        </children>
-        <children xmi:id="_kQcet5TYEdmy2onHYKlABg" type="FromRoleLabel" element="_3A0B2474025F41F567210111">
-          <children xmi:id="_kQceuZTYEdmy2onHYKlABg" type="FromRole" element="_3A0B2474025F41F567210111"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQceuJTYEdmy2onHYKlABg" x="-602" y="834"/>
-        </children>
-        <children xmi:id="_kQceupTYEdmy2onHYKlABg" type="ToQualifierLabel" element="_3A0B2474025F41F567210113">
-          <children xmi:id="_kQcevJTYEdmy2onHYKlABg" type="QualifierCompartment" element="_3A0B2474025F41F567210113">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQcevZTYEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQceu5TYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_kQcevpTYEdmy2onHYKlABg" type="FromQualifierLabel" element="_3A0B2474025F41F567210111">
-          <children xmi:id="_kQcewJTYEdmy2onHYKlABg" type="QualifierCompartment" element="_3A0B2474025F41F567210111">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQcewZTYEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQcev5TYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_kQWYP5TYEdmy2onHYKlABg" routing="Rectilinear" showStereotype="None"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kQWYQJTYEdmy2onHYKlABg" points="[-770, 787, -5240, -2463]$[-770, 2734, -5240, -516]$[2429, 2734, -2040, -516]"/>
-      </edges>
-      <edges xmi:id="_kQcewpTYEdmy2onHYKlABg" element="_3A0B2474025F420146A502E2" source="_kQKK35TYEdmy2onHYKlABg" target="_kQKK0JTYEdmy2onHYKlABg">
-        <children xmi:id="_kQcexZTYEdmy2onHYKlABg" type="NameLabel" element="_3A0B2474025F420146A502E2">
-          <children xmi:id="_kQcex5TYEdmy2onHYKlABg" type="Stereotype" element="_3A0B2474025F420146A502E2"/>
-          <children xmi:id="_kQceyJTYEdmy2onHYKlABg" visible="false" type="Name" element="_3A0B2474025F420146A502E2"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQcexpTYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_kQceyZTYEdmy2onHYKlABg" visible="false" type="ToMultiplicityLabel" element="_3A0B2474025F420146A60281">
-          <children xmi:id="_kQcey5TYEdmy2onHYKlABg" type="ToMultiplicity" element="_3A0B2474025F420146A60281"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQceypTYEdmy2onHYKlABg" y="397"/>
-        </children>
-        <children xmi:id="_kQcezJTYEdmy2onHYKlABg" visible="false" type="ToRoleLabel" element="_3A0B2474025F420146A60281">
-          <children xmi:id="_kQcezpTYEdmy2onHYKlABg" type="ToRole" element="_3A0B2474025F420146A60281"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQcezZTYEdmy2onHYKlABg" y="-397"/>
-        </children>
-        <children xmi:id="_kQcez5TYEdmy2onHYKlABg" type="FromMultiplicityLabel" element="_3A0B2474025F420146A6027F">
-          <children xmi:id="_kQce0ZTYEdmy2onHYKlABg" type="FromMultiplicity" element="_3A0B2474025F420146A6027F"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQce0JTYEdmy2onHYKlABg" x="416" y="593"/>
-        </children>
-        <children xmi:id="_kQce0pTYEdmy2onHYKlABg" type="FromRoleLabel" element="_3A0B2474025F420146A6027F">
-          <children xmi:id="_kQce1JTYEdmy2onHYKlABg" type="FromRole" element="_3A0B2474025F420146A6027F"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQce05TYEdmy2onHYKlABg" x="-6" y="2426"/>
-        </children>
-        <children xmi:id="_kQce1ZTYEdmy2onHYKlABg" type="ToQualifierLabel" element="_3A0B2474025F420146A60281">
-          <children xmi:id="_kQce15TYEdmy2onHYKlABg" type="QualifierCompartment" element="_3A0B2474025F420146A60281">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQce2JTYEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQce1pTYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_kQilUJTYEdmy2onHYKlABg" type="FromQualifierLabel" element="_3A0B2474025F420146A6027F">
-          <children xmi:id="_kQilUpTYEdmy2onHYKlABg" type="QualifierCompartment" element="_3A0B2474025F420146A6027F">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_kQilU5TYEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_kQilUZTYEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_kQcew5TYEdmy2onHYKlABg" routing="Rectilinear" showStereotype="None"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kQcexJTYEdmy2onHYKlABg" points="[2408, 28, -4762, 3573]$[6456, 28, -714, 3573]$[6456, -2434, -714, 1111]"/>
-      </edges>
-      <edges xmi:id="_kQilYpTYEdmy2onHYKlABg" type="NoteAttachment" source="_kP328JTYEdmy2onHYKlABg" target="_kQKK0JTYEdmy2onHYKlABg">
-        <styles xmi:type="notation:ConnectorStyle" xmi:id="_kQilY5TYEdmy2onHYKlABg" routing="Rectilinear"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kQilZJTYEdmy2onHYKlABg" points="[-3493, -79, 3863, -2487]$[-5080, -79, 2276, -2487]$[-5080, 1297, 2276, -1111]"/>
-        <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kQilZZTYEdmy2onHYKlABg" id="anchor50"/>
-        <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kQilZpTYEdmy2onHYKlABg" id="anchor50"/>
-      </edges>
-      <edges xmi:id="_B4bI0JTcEdmy2onHYKlABg" element="_B3wacJTcEdmy2onHYKlABg" source="_kQEEUJTYEdmy2onHYKlABg" target="_5BUlQJTbEdmy2onHYKlABg">
-        <children xmi:id="_B4bI05TcEdmy2onHYKlABg" type="NameLabel" element="_B3wacJTcEdmy2onHYKlABg">
-          <children xmi:id="_B4bI1ZTcEdmy2onHYKlABg" type="Stereotype" element="_B3wacJTcEdmy2onHYKlABg"/>
-          <children xmi:id="_B4bI1pTcEdmy2onHYKlABg" type="Name" element="_B3wacJTcEdmy2onHYKlABg"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_B4bI1JTcEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_B4bI15TcEdmy2onHYKlABg" type="ToMultiplicityLabel" element="_B3wacpTcEdmy2onHYKlABg">
-          <children xmi:id="_B4bI2ZTcEdmy2onHYKlABg" type="ToMultiplicity" element="_B3wacpTcEdmy2onHYKlABg"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_B4bI2JTcEdmy2onHYKlABg" y="397"/>
-        </children>
-        <children xmi:id="_B4bI2pTcEdmy2onHYKlABg" type="ToRoleLabel" element="_B3wacpTcEdmy2onHYKlABg">
-          <children xmi:id="_B4bI3JTcEdmy2onHYKlABg" type="ToRole" element="_B3wacpTcEdmy2onHYKlABg"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_B4bI25TcEdmy2onHYKlABg" y="-397"/>
-        </children>
-        <children xmi:id="_B4bI3ZTcEdmy2onHYKlABg" type="FromMultiplicityLabel" element="_B3wacZTcEdmy2onHYKlABg">
-          <children xmi:id="_B4bI35TcEdmy2onHYKlABg" type="FromMultiplicity" element="_B3wacZTcEdmy2onHYKlABg"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_B4bI3pTcEdmy2onHYKlABg" x="-1280" y="575"/>
-        </children>
-        <children xmi:id="_B4bI4JTcEdmy2onHYKlABg" type="FromRoleLabel" element="_B3wacZTcEdmy2onHYKlABg">
-          <children xmi:id="_B4bI4pTcEdmy2onHYKlABg" type="FromRole" element="_B3wacZTcEdmy2onHYKlABg"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_B4bI4ZTcEdmy2onHYKlABg" x="-486" y="893"/>
-        </children>
-        <children xmi:id="_B4bI45TcEdmy2onHYKlABg" type="ToQualifierLabel" element="_B3wacpTcEdmy2onHYKlABg">
-          <children xmi:id="_B4bI5ZTcEdmy2onHYKlABg" type="QualifierCompartment" element="_B3wacpTcEdmy2onHYKlABg">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_B4bI5pTcEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_B4bI5JTcEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_B4bI55TcEdmy2onHYKlABg" type="FromQualifierLabel" element="_B3wacZTcEdmy2onHYKlABg">
-          <children xmi:id="_B4bI6ZTcEdmy2onHYKlABg" type="QualifierCompartment" element="_B3wacZTcEdmy2onHYKlABg">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_B4bI6pTcEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_B4bI6JTcEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_B4bI0ZTcEdmy2onHYKlABg" routing="Rectilinear" showStereotype="Text"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_B4bI0pTcEdmy2onHYKlABg" points="[2064, 27, -4286, 27]$[4974, 27, -1376, 27]"/>
-      </edges>
-      <edges xmi:id="_bNhv4JTcEdmy2onHYKlABg" element="_bNDOwJTcEdmy2onHYKlABg" source="_kQEEUJTYEdmy2onHYKlABg" target="_kQEENZTYEdmy2onHYKlABg">
-        <children xmi:id="_bNhv45TcEdmy2onHYKlABg" type="NameLabel" element="_bNDOwJTcEdmy2onHYKlABg">
-          <children xmi:id="_bNhv5ZTcEdmy2onHYKlABg" type="Stereotype" element="_bNDOwJTcEdmy2onHYKlABg"/>
-          <children xmi:id="_bNhv5pTcEdmy2onHYKlABg" type="Name" element="_bNDOwJTcEdmy2onHYKlABg"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_bNhv5JTcEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_bNhv55TcEdmy2onHYKlABg" type="ToMultiplicityLabel" element="_bNDOwpTcEdmy2onHYKlABg">
-          <children xmi:id="_bNhv6ZTcEdmy2onHYKlABg" type="ToMultiplicity" element="_bNDOwpTcEdmy2onHYKlABg"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_bNhv6JTcEdmy2onHYKlABg" y="397"/>
-        </children>
-        <children xmi:id="_bNhv6pTcEdmy2onHYKlABg" type="ToRoleLabel" element="_bNDOwpTcEdmy2onHYKlABg">
-          <children xmi:id="_bNhv7JTcEdmy2onHYKlABg" type="ToRole" element="_bNDOwpTcEdmy2onHYKlABg"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_bNhv65TcEdmy2onHYKlABg" y="-397"/>
-        </children>
-        <children xmi:id="_bNhv7ZTcEdmy2onHYKlABg" type="FromMultiplicityLabel" element="_bNDOwZTcEdmy2onHYKlABg">
-          <children xmi:id="_bNhv75TcEdmy2onHYKlABg" type="FromMultiplicity" element="_bNDOwZTcEdmy2onHYKlABg"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_bNhv7pTcEdmy2onHYKlABg" x="-257" y="-353"/>
-        </children>
-        <children xmi:id="_bNhv8JTcEdmy2onHYKlABg" type="FromRoleLabel" element="_bNDOwZTcEdmy2onHYKlABg">
-          <children xmi:id="_bNhv8pTcEdmy2onHYKlABg" type="FromRole" element="_bNDOwZTcEdmy2onHYKlABg"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_bNhv8ZTcEdmy2onHYKlABg" x="61" y="-1782"/>
-        </children>
-        <children xmi:id="_bNhv85TcEdmy2onHYKlABg" type="ToQualifierLabel" element="_bNDOwpTcEdmy2onHYKlABg">
-          <children xmi:id="_bNhv9ZTcEdmy2onHYKlABg" type="QualifierCompartment" element="_bNDOwpTcEdmy2onHYKlABg">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_bNhv9pTcEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_bNhv9JTcEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <children xmi:id="_bNhv95TcEdmy2onHYKlABg" type="FromQualifierLabel" element="_bNDOwZTcEdmy2onHYKlABg">
-          <children xmi:id="_bNhv-ZTcEdmy2onHYKlABg" type="QualifierCompartment" element="_bNDOwZTcEdmy2onHYKlABg">
-            <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_bNhv-pTcEdmy2onHYKlABg"/>
-          </children>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_bNhv-JTcEdmy2onHYKlABg" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_bNhv4ZTcEdmy2onHYKlABg" routing="Rectilinear" showStereotype="Text"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bNhv4pTcEdmy2onHYKlABg" points="[5, 42, -18, -111]$[5, 123, -18, -30]"/>
-      </edges>
-    </contents>
-  </eAnnotations>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_kMDG4ZTYEdmy2onHYKlABg">
-    <eAnnotations xmi:id="_kMDG4pTYEdmy2onHYKlABg" source="attributes">
-      <details xmi:id="_kMDG45TYEdmy2onHYKlABg" key="version" value="0"/>
-    </eAnnotations>
-    <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>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_kMDG5JTYEdmy2onHYKlABg">
-    <eAnnotations xmi:id="_kMDG5ZTYEdmy2onHYKlABg" source="attributes">
-      <details xmi:id="_kMDG5pTYEdmy2onHYKlABg" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Intermediate.profile.uml2#_Cz7csK87Edih9-GG5afQ0g"/>
-    <importedProfile href="pathmap://UML2_PROFILES/Intermediate.profile.uml2#_Cz7csK87Edih9-GG5afQ0g"/>
-  </packageImport>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_kMDG55TYEdmy2onHYKlABg">
-    <eAnnotations xmi:id="_kMDG6JTYEdmy2onHYKlABg" source="attributes">
-      <details xmi:id="_kMDG6ZTYEdmy2onHYKlABg" key="version" value="0"/>
-    </eAnnotations>
-    <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="_kMDG6pTYEdmy2onHYKlABg">
-    <eAnnotations xmi:id="_kMDG65TYEdmy2onHYKlABg" source="attributes">
-      <details xmi:id="_kMDG7JTYEdmy2onHYKlABg" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default"/>
-    <importedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default"/>
-  </packageImport>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_kMDG7ZTYEdmy2onHYKlABg">
-    <eAnnotations xmi:id="_kMDG7pTYEdmy2onHYKlABg" source="attributes">
-      <details xmi:id="_kMDG75TYEdmy2onHYKlABg" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment"/>
-    <importedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment"/>
-  </packageImport>
-  <packageImport xmi:id="_kMDG8JTYEdmy2onHYKlABg">
-    <importedPackage xmi:type="uml:Model" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_EfRZoK86EdieaYgxtVWN8Q"/>
-  </packageImport>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_kMJNg5TYEdmy2onHYKlABg">
-    <eAnnotations xmi:id="_kMJNhJTYEdmy2onHYKlABg" source="attributes">
-      <details xmi:id="_kMJNhZTYEdmy2onHYKlABg" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://ROSE_PROFILES/Rose.epx#_8yPmgEO4EdmZFZk7zjZ-eA?Rose"/>
-    <importedProfile href="pathmap://ROSE_PROFILES/Rose.epx#_8yPmgEO4EdmZFZk7zjZ-eA?Rose"/>
-  </packageImport>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_kNq3gZTYEdmy2onHYKlABg">
-    <eAnnotations xmi:id="_kNq3gpTYEdmy2onHYKlABg" source="attributes">
-      <details xmi:id="_kNq3g5TYEdmy2onHYKlABg" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Ecore.profile.uml2#_siPt4K87Edi5QpYeY_yIpg"/>
-    <importedProfile href="pathmap://UML2_PROFILES/Ecore.profile.uml2#_siPt4K87Edi5QpYeY_yIpg"/>
-  </packageImport>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_H0ye8JTvEdmDNY6lnGAg5A">
-    <eAnnotations xmi:id="_H0ye8ZTvEdmDNY6lnGAg5A" source="attributes">
-      <details xmi:id="_H0ye8pTvEdmDNY6lnGAg5A" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="Java.epx#_-ZoywJSkEdmjauSjG8qO2A?Java"/>
-    <importedProfile href="Java.epx#_-ZoywJSkEdmjauSjG8qO2A?Java"/>
-  </packageImport>
-  <ownedMember xmi:type="uml:Class" xmi:id="_3A0B2474025F41E3DF5801FA" name="WorkbenchComponent">
-    <ownedAttribute xmi:id="_3A0B2474025F4201471D0208" name="name">
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_3A0B2474025F41E3E14D031D" name="resources" type="_3A0B2474025F41E3DF670039" isUnique="false" association="_3A0B2474025F41E3E14B01E3" aggregation="composite">
-      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_kOVl4ZTYEdmy2onHYKlABg" value="-1"/>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kOVl4JTYEdmy2onHYKlABg"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_3A0B2474025F41EC1D990241" name="componentType" type="_3A0B2474025F41EC1D5103E2" isUnique="false" association="_3A0B2474025F41EC1D9802C2">
-      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_kOVl6JTYEdmy2onHYKlABg" value="1"/>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kOVl55TYEdmy2onHYKlABg" value="1"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_3A0B2474025F420146A6027F" name="referencedComponents" type="_3A0B2474025F41F6C24B023D" isUnique="false" association="_3A0B2474025F420146A502E2">
-      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_kOVl8pTYEdmy2onHYKlABg" value="-1"/>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kOVl8ZTYEdmy2onHYKlABg"/>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Class" xmi:id="_3A0B2474025F41E3DF670039" name="ComponentResource">
-    <ownedAttribute xmi:id="_3A0B2474025F41E3DF970128" name="sourcePath" type="_3A0B2474025F41EC26DA027A"/>
-    <ownedAttribute xmi:id="_3A0B2474025F41EEC640025B" name="runtimePath" type="_3A0B2474025F41EC26DA027A"/>
-    <ownedAttribute xmi:id="_3A0B2474025F41E3DF9E011E" name="exclusions">
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_kN3ExpTYEdmy2onHYKlABg" value="-1"/>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kN3ExZTYEdmy2onHYKlABg"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_3A0B2474025F41E3E14D031F" name="component" type="_3A0B2474025F41E3DF5801FA" isUnique="false" association="_3A0B2474025F41E3E14B01E3">
-      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_kOVl5JTYEdmy2onHYKlABg" value="1"/>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kOVl45TYEdmy2onHYKlABg" value="1"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_jw5GQKV-EdmoYeO-WR9aDg" name="resourceType">
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Class" xmi:id="_3A0B2474025F41EC1D5103E2" name="ComponentType">
-    <ownedAttribute xmi:id="_3A0B2474025F41EC21340357" name="componentTypeId">
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_UDkgEJTbEdmy2onHYKlABg" name="version">
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_B3wacZTcEdmy2onHYKlABg" name="properties" type="_5BCRYJTbEdmy2onHYKlABg" association="_B3wacJTcEdmy2onHYKlABg" aggregation="shared">
-      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_B3wadJTcEdmy2onHYKlABg" value="-1"/>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_B3wac5TcEdmy2onHYKlABg"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_bNDOwZTcEdmy2onHYKlABg" name="metadataResources" visibility="private" type="_3A0B2474025F41EC26DA027A" association="_bNDOwJTcEdmy2onHYKlABg" aggregation="shared">
-      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_bNDOxJTcEdmy2onHYKlABg" value="-1"/>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_bNDOw5TcEdmy2onHYKlABg"/>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:PrimitiveType" xmi:id="_3A0B2474025F41EC26DA027A" name="IPath">
-    <eAnnotations xmi:id="_kN9LZpTYEdmy2onHYKlABg" source="appliedStereotypes">
-      <contents xmi:type="Ecore_0:Ecore__EDataType" xmi:id="_kN9LZ5TYEdmy2onHYKlABg" instanceClassName="org.eclipse.core.runtime.IPath"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_kN9LaJTYEdmy2onHYKlABg" source="keywords">
-      <details xmi:id="_kN9LaZTYEdmy2onHYKlABg" key="datatype"/>
-    </eAnnotations>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Class" xmi:id="_3A0B2474025F41F566DB0251" name="ProjectComponents">
-    <ownedAttribute xmi:id="_3A0B2474025F41F567FD023A" name="projectName">
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_3A0B2474025F41F567210111" name="components" type="_3A0B2474025F41E3DF5801FA" isUnique="false" association="_3A0B2474025F41F5672000E8" aggregation="composite">
-      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_kOVl7ZTYEdmy2onHYKlABg" value="-1"/>
-      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kOVl7JTYEdmy2onHYKlABg"/>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Class" xmi:id="_3A0B2474025F41F6C24B023D" name="ReferencedComponent">
-    <ownedAttribute xmi:id="_3A0B2474025F420145F001C9" name="handle" type="_IQQjMKS3EdmtQ4Tckv5S2Q"/>
-    <ownedAttribute xmi:id="_3A0B2474025F420145FA0015" name="runtimePath" type="_3A0B2474025F41EC26DA027A"/>
-    <ownedAttribute xmi:id="_3A0B2474025F42039243016E" name="dependencyType" type="_3A0B2474025F420394F50185"/>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Enumeration" xmi:id="_3A0B2474025F420394F50185" name="DependencyType">
-    <ownedComment xmi:id="_kN9LcZTYEdmy2onHYKlABg" body="uses=0&#xA;consumes=1&#xA;" annotatedElement="_3A0B2474025F420394F50185">
-      <eAnnotations xmi:id="_kOJYoJTYEdmy2onHYKlABg" source="appliedStereotypes">
-        <contents xmi:type="Default_0:Default__Documentation" xmi:id="_kOJYoZTYEdmy2onHYKlABg"/>
-      </eAnnotations>
-    </ownedComment>
-    <ownedLiteral xmi:id="_3A0B2474025F42039938018D" name="uses"/>
-    <ownedLiteral xmi:id="_3A0B2474025F42039A6E0139" name="consumes"/>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Association" xmi:id="_3A0B2474025F41E3E14B01E3" memberEnd="_3A0B2474025F41E3E14D031D _3A0B2474025F41E3E14D031F"/>
-  <ownedMember xmi:type="uml:Association" xmi:id="_3A0B2474025F41EC1D9802C2" memberEnd="_3A0B2474025F41EC1D990241 _3A0B2474025F41EC1D990243">
-    <ownedEnd xmi:id="_3A0B2474025F41EC1D990243" name="_workbenchModule" type="_3A0B2474025F41E3DF5801FA" isUnique="false" association="_3A0B2474025F41EC1D9802C2"/>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Association" xmi:id="_3A0B2474025F41F5672000E8" memberEnd="_3A0B2474025F41F567210111 _3A0B2474025F41F567210113">
-    <ownedEnd xmi:id="_3A0B2474025F41F567210113" name="_projectModules" type="_3A0B2474025F41F566DB0251" isUnique="false" association="_3A0B2474025F41F5672000E8"/>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Association" xmi:id="_3A0B2474025F420146A502E2" memberEnd="_3A0B2474025F420146A6027F _3A0B2474025F420146A60281">
-    <ownedEnd xmi:id="_3A0B2474025F420146A60281" name="_workbenchModule" type="_3A0B2474025F41E3DF5801FA" isUnique="false" association="_3A0B2474025F420146A502E2"/>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Class" xmi:id="_5BCRYJTbEdmy2onHYKlABg" name="Property">
-    <ownedAttribute xmi:id="_7Xo8YJTbEdmy2onHYKlABg" name="name">
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-    </ownedAttribute>
-    <ownedAttribute xmi:id="_8eOJ8JTbEdmy2onHYKlABg" name="value">
-      <type xmi:type="uml:PrimitiveType" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_IXlH8a86EdieaYgxtVWN8Q"/>
-    </ownedAttribute>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Association" xmi:id="_B3wacJTcEdmy2onHYKlABg" memberEnd="_B3wacZTcEdmy2onHYKlABg _B3wacpTcEdmy2onHYKlABg">
-    <ownedEnd xmi:id="_B3wacpTcEdmy2onHYKlABg" visibility="private" type="_3A0B2474025F41EC1D5103E2" association="_B3wacJTcEdmy2onHYKlABg"/>
-  </ownedMember>
-  <ownedMember xmi:type="uml:Association" xmi:id="_bNDOwJTcEdmy2onHYKlABg" memberEnd="_bNDOwZTcEdmy2onHYKlABg _bNDOwpTcEdmy2onHYKlABg">
-    <ownedEnd xmi:id="_bNDOwpTcEdmy2onHYKlABg" visibility="private" type="_3A0B2474025F41EC1D5103E2" association="_bNDOwJTcEdmy2onHYKlABg"/>
-  </ownedMember>
-  <ownedMember xmi:type="uml:PrimitiveType" xmi:id="_IQQjMKS3EdmtQ4Tckv5S2Q" name="URI">
-    <eAnnotations xmi:id="_kN9LZpTYEdmy2onHYKlABg" source="appliedStereotypes">
-      <contents xmi:type="Ecore_0:Ecore__EDataType" xmi:id="_kN9LZ5TYEdmy2onHYKlABg" instanceClassName="org.eclipse.emf.common.util.URI"/>
-    </eAnnotations>
-    <eAnnotations xmi:id="_kN9LaJTYEdmy2onHYKlABg" source="keywords">
-      <details xmi:id="_kN9LaZTYEdmy2onHYKlABg" key="datatype"/>
-    </eAnnotations>
-  </ownedMember>
-</uml:Model>
diff --git a/plugins/org.eclipse.wst.common.modulecore/model/componentCore.genmodel b/plugins/org.eclipse.wst.common.modulecore/model/componentCore.genmodel
deleted file mode 100644
index 2e55524..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/model/componentCore.genmodel
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<genmodel:GenModel xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
-    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.wst.common.modulecore/modulecore-src"
-    editDirectory="/org.eclipse.wst.common.modulecore.edit/src" editorDirectory="/org.eclipse.wst.common.modulecore.editor/src"
-    modelPluginID="org.eclipse.wst.common.modulecore" runtimeJar="true" modelName="ComponentCore"
-    editPluginClass="componentcore.provider.ComponentCoreEditPlugin" editorPluginClass="componentcore.presentation.ComponentCoreEditorPlugin">
-  <foreignModel>componentCore.ecore</foreignModel>
-  <genPackages prefix="Componentcore" basePackage="org.eclipse.wst.common" disposableProviderFactory="true"
-      interfacePackageSuffix="internal" classPackageSuffix="internal.impl" utilityPackageSuffix="internal.util"
-      ecorePackage="componentCore.ecore#/">
-    <genEnums ecoreEnum="componentCore.ecore#//DependencyType">
-      <genEnumLiterals ecoreEnumLiteral="componentCore.ecore#//DependencyType/uses"/>
-      <genEnumLiterals ecoreEnumLiteral="componentCore.ecore#//DependencyType/consumes"/>
-    </genEnums>
-    <genDataTypes ecoreDataType="componentCore.ecore#//IPath"/>
-    <genDataTypes ecoreDataType="componentCore.ecore#//URI"/>
-    <genClasses ecoreClass="componentCore.ecore#//WorkbenchComponent">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//WorkbenchComponent/name"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference componentCore.ecore#//WorkbenchComponent/resources"/>
-      <genFeatures notify="false" createChild="false" ecoreFeature="ecore:EReference componentCore.ecore#//WorkbenchComponent/componentType"/>
-      <genFeatures notify="false" createChild="false" ecoreFeature="ecore:EReference componentCore.ecore#//WorkbenchComponent/referencedComponents"/>
-    </genClasses>
-    <genClasses ecoreClass="componentCore.ecore#//ComponentResource">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ComponentResource/sourcePath"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ComponentResource/runtimePath"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ComponentResource/exclusions"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference componentCore.ecore#//ComponentResource/component"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ComponentResource/resourceType"/>
-    </genClasses>
-    <genClasses ecoreClass="componentCore.ecore#//ComponentType">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ComponentType/componentTypeId"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ComponentType/version"/>
-      <genFeatures notify="false" createChild="false" ecoreFeature="ecore:EReference componentCore.ecore#//ComponentType/properties"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ComponentType/metadataResources"/>
-    </genClasses>
-    <genClasses ecoreClass="componentCore.ecore#//Property">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//Property/name"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//Property/value"/>
-    </genClasses>
-    <genClasses ecoreClass="componentCore.ecore#//ReferencedComponent">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ReferencedComponent/handle"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ReferencedComponent/runtimePath"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ReferencedComponent/dependencyType"/>
-      <genFeatures notify="false" createChild="false" ecoreFeature="ecore:EReference componentCore.ecore#//ReferencedComponent/dependentObject"/>
-    </genClasses>
-    <genClasses ecoreClass="componentCore.ecore#//ProjectComponents">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute componentCore.ecore#//ProjectComponents/projectName"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference componentCore.ecore#//ProjectComponents/components"/>
-    </genClasses>
-  </genPackages>
-</genmodel:GenModel>
diff --git a/plugins/org.eclipse.wst.common.modulecore/model/componentCorePackage.emx b/plugins/org.eclipse.wst.common.modulecore/model/componentCorePackage.emx
deleted file mode 100644
index a903de7..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/model/componentCorePackage.emx
+++ /dev/null
@@ -1,310 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--xtools2_universal_type_manager-->
-<uml:Model xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:notation="http://www.ibm.com/xtools/1.5.0/Notation" xmlns:uml="http://www.eclipse.org/uml2/1.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.0/Umlnotation" xmi:id="_wUCHwMO8EdmmEbKEBnW0AQ" name="componentCorePackage" appliedProfile="_wUCHxMO8EdmmEbKEBnW0AQ _wUCHx8O8EdmmEbKEBnW0AQ _wUCHysO8EdmmEbKEBnW0AQ _wUIOYsO8EdmmEbKEBnW0AQ _wUIOZcO8EdmmEbKEBnW0AQ">
-  <eAnnotations xmi:id="_wUCHwcO8EdmmEbKEBnW0AQ" source="uml2.diagrams" references="_wUCHwsO8EdmmEbKEBnW0AQ">
-    <contents xmi:type="notation:Diagram" xmi:id="_wUCHwsO8EdmmEbKEBnW0AQ" type="Class" name="Main">
-      <children xmi:id="_2r1XUMO8EdmmEbKEBnW0AQ" sourceEdges="_3IZXgMO8EdmmEbKEBnW0AQ _3IfeIMO8EdmmEbKEBnW0AQ _3IfeJ8O8EdmmEbKEBnW0AQ" targetEdges="_3IZXgMO8EdmmEbKEBnW0AQ">
-        <children xmi:id="_2vFfoMO8EdmmEbKEBnW0AQ" type="ImageCompartment">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_2vFfocO8EdmmEbKEBnW0AQ" width="1320" height="1320"/>
-        </children>
-        <children xmi:id="_2vFfosO8EdmmEbKEBnW0AQ" type="Stereotype">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_2vFfo8O8EdmmEbKEBnW0AQ" type="Name">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_2vFfpMO8EdmmEbKEBnW0AQ" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_2vFfpcO8EdmmEbKEBnW0AQ" filtering="Manual">
-            <filteredObjects xmi:type="uml:Property" href="vizref:///#jfield^vcore.target=uml2.Property^name=artifactEditModel[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-            <filteredObjects xmi:type="uml:Property" href="vizref:///#jfield^vcore.target=uml2.Property^name=isReadOnly[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-            <filteredObjects xmi:type="uml:Property" href="vizref:///#jfield^vcore.target=uml2.Property^name=isArtifactEditModelSelfManaged[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </styles>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_2vFfpsO8EdmmEbKEBnW0AQ" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_2vFfp8O8EdmmEbKEBnW0AQ" filtering="Automatic" filteringKeys="private,package,protected"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_2vFfqMO8EdmmEbKEBnW0AQ" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_2vFfqcO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_2vFfqsO8EdmmEbKEBnW0AQ" visible="false" type="StructureCompartment">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_2vFfq8O8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_2r1XUcO8EdmmEbKEBnW0AQ" showStereotype="Label"/>
-        <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2r1XUsO8EdmmEbKEBnW0AQ" x="15582" y="21942"/>
-      </children>
-      <children xmi:id="_25TLkMO8EdmmEbKEBnW0AQ" sourceEdges="_3IlkwMO8EdmmEbKEBnW0AQ _3IlkyMO8EdmmEbKEBnW0AQ" targetEdges="_3IfeJ8O8EdmmEbKEBnW0AQ _3IlkwMO8EdmmEbKEBnW0AQ">
-        <children xmi:id="_25TLk8O8EdmmEbKEBnW0AQ" type="ImageCompartment">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_25TLlMO8EdmmEbKEBnW0AQ" width="1320" height="1320"/>
-        </children>
-        <children xmi:id="_25TLlcO8EdmmEbKEBnW0AQ" type="Stereotype">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_25TLlsO8EdmmEbKEBnW0AQ" type="Name">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_25TLl8O8EdmmEbKEBnW0AQ" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_25TLmMO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_25TLmcO8EdmmEbKEBnW0AQ" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_25TLmsO8EdmmEbKEBnW0AQ" filtering="Automatic" filteringKeys="private,package,protected"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_25TLm8O8EdmmEbKEBnW0AQ" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_25TLnMO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_25TLncO8EdmmEbKEBnW0AQ" visible="false" type="StructureCompartment">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_25TLnsO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_25TLkcO8EdmmEbKEBnW0AQ" showStereotype="Label"/>
-        <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_25TLksO8EdmmEbKEBnW0AQ" x="7009" y="17487"/>
-      </children>
-      <children xmi:id="_29B1AMO8EdmmEbKEBnW0AQ" targetEdges="_3IfeIMO8EdmmEbKEBnW0AQ">
-        <children xmi:id="_29B1A8O8EdmmEbKEBnW0AQ" type="ImageCompartment">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_29B1BMO8EdmmEbKEBnW0AQ" width="530" height="530"/>
-        </children>
-        <children xmi:id="_29B1BcO8EdmmEbKEBnW0AQ" type="Stereotype">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_29B1BsO8EdmmEbKEBnW0AQ" type="Kind">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_29B1B8O8EdmmEbKEBnW0AQ" type="Name">
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_29B1CMO8EdmmEbKEBnW0AQ" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_29B1CcO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_29H7oMO8EdmmEbKEBnW0AQ" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_29H7ocO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_29H7osO8EdmmEbKEBnW0AQ" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_29H7o8O8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLClassifierStyle" xmi:id="_29B1AcO8EdmmEbKEBnW0AQ" showStereotype="Label" useClassifierShape="true"/>
-        <element xmi:type="uml:Interface" href="vizref:///#jsrctype^vcore.target=uml2.Interface^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_29B1AsO8EdmmEbKEBnW0AQ" x="16218" y="17490"/>
-      </children>
-      <children xmi:id="_294woMO8EdmmEbKEBnW0AQ" targetEdges="_3IlkyMO8EdmmEbKEBnW0AQ _3IrrY8O8EdmmEbKEBnW0AQ">
-        <children xmi:id="_294wo8O8EdmmEbKEBnW0AQ" type="ImageCompartment">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_294wpMO8EdmmEbKEBnW0AQ" width="1320" height="1320"/>
-        </children>
-        <children xmi:id="_294wpcO8EdmmEbKEBnW0AQ" type="Stereotype">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_294wpsO8EdmmEbKEBnW0AQ" type="Name">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_294wp8O8EdmmEbKEBnW0AQ" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_294wqMO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_294wqcO8EdmmEbKEBnW0AQ" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_294wqsO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_294wq8O8EdmmEbKEBnW0AQ" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_294wrMO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_294wrcO8EdmmEbKEBnW0AQ" visible="false" type="StructureCompartment">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_294wrsO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_294wocO8EdmmEbKEBnW0AQ" showStereotype="Label"/>
-        <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_294wosO8EdmmEbKEBnW0AQ" x="3894" y="25611"/>
-      </children>
-      <children xmi:id="_2-RLIMO8EdmmEbKEBnW0AQ" sourceEdges="_3IrrY8O8EdmmEbKEBnW0AQ">
-        <children xmi:id="_2-RLI8O8EdmmEbKEBnW0AQ" type="ImageCompartment">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-          <layoutConstraint xmi:type="notation:Size" xmi:id="_2-RLJMO8EdmmEbKEBnW0AQ" width="1320" height="1320"/>
-        </children>
-        <children xmi:id="_2-RLJcO8EdmmEbKEBnW0AQ" type="Stereotype">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_2-RLJsO8EdmmEbKEBnW0AQ" type="Name">
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_2-RLJ8O8EdmmEbKEBnW0AQ" type="AttributeCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_2-RLKMO8EdmmEbKEBnW0AQ" filtering="Automatic" filteringKeys="protected,private,package"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_2-XRwMO8EdmmEbKEBnW0AQ" type="OperationCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_2-XRwcO8EdmmEbKEBnW0AQ" filtering="Automatic" filteringKeys="protected,private,package"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_2-XRwsO8EdmmEbKEBnW0AQ" visible="false" type="SignalCompartment">
-          <styles xmi:type="umlnotation:UMLListCompartmentStyle" xmi:id="_2-XRw8O8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <children xmi:id="_2-XRxMO8EdmmEbKEBnW0AQ" visible="false" type="StructureCompartment">
-          <styles xmi:type="umlnotation:UMLShapeCompartmentStyle" xmi:id="_2-XRxcO8EdmmEbKEBnW0AQ"/>
-          <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLShapeStyle" xmi:id="_2-RLIcO8EdmmEbKEBnW0AQ" showStereotype="Label"/>
-        <element xmi:type="uml:Class" href="vizref:///#jsrctype^vcore.target=uml2.Class^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2-RLIsO8EdmmEbKEBnW0AQ" x="1908" y="17490"/>
-      </children>
-      <styles xmi:type="umlnotation:UMLDiagramStyle" xmi:id="_wUCHw8O8EdmmEbKEBnW0AQ"/>
-      <edges xmi:id="_3IZXgMO8EdmmEbKEBnW0AQ" source="_2r1XUMO8EdmmEbKEBnW0AQ" target="_2r1XUMO8EdmmEbKEBnW0AQ">
-        <children xmi:id="_3IZXg8O8EdmmEbKEBnW0AQ" type="KindLabel">
-          <children xmi:id="_3IZXhcO8EdmmEbKEBnW0AQ" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3IZXh8O8EdmmEbKEBnW0AQ" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3IZXhsO8EdmmEbKEBnW0AQ" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_3IZXhMO8EdmmEbKEBnW0AQ" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_3IZXgcO8EdmmEbKEBnW0AQ" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3IZXgsO8EdmmEbKEBnW0AQ" points="[2673, 4312, 2673, 4312]$[3228, 4312, 3228, 4312]$[3228, 5556, 3228, 5556]$[1932, 5556, 1932, 5556]$[1932, 4947, 1932, 4947]"/>
-      </edges>
-      <edges xmi:id="_3IfeIMO8EdmmEbKEBnW0AQ" source="_2r1XUMO8EdmmEbKEBnW0AQ" target="_29B1AMO8EdmmEbKEBnW0AQ">
-        <children xmi:id="_3IfeI8O8EdmmEbKEBnW0AQ" type="NameLabel">
-          <children xmi:id="_3IfeJcO8EdmmEbKEBnW0AQ" type="Stereotype">
-            <element xmi:type="uml:Implementation" href="vizref:///#jimpl^vcore.target=uml2.Implementation[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3IfeJsO8EdmmEbKEBnW0AQ" type="Name">
-            <element xmi:type="uml:Implementation" href="vizref:///#jimpl^vcore.target=uml2.Implementation[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Implementation" href="vizref:///#jimpl^vcore.target=uml2.Implementation[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_3IfeJMO8EdmmEbKEBnW0AQ" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_3IfeIcO8EdmmEbKEBnW0AQ" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Implementation" href="vizref:///#jimpl^vcore.target=uml2.Implementation[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=IEditModelHandler[jcu^name=IEditModelHandler.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3IfeIsO8EdmmEbKEBnW0AQ" points="[27, -4948, 53, 3175]$[27, -6827, 53, 1296]"/>
-      </edges>
-      <edges xmi:id="_3IfeJ8O8EdmmEbKEBnW0AQ" source="_2r1XUMO8EdmmEbKEBnW0AQ" target="_25TLkMO8EdmmEbKEBnW0AQ">
-        <children xmi:id="_3IfeKsO8EdmmEbKEBnW0AQ" type="KindLabel">
-          <children xmi:id="_3IfeLMO8EdmmEbKEBnW0AQ" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3IfeLsO8EdmmEbKEBnW0AQ" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3IfeLcO8EdmmEbKEBnW0AQ" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_3IfeK8O8EdmmEbKEBnW0AQ" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_3IfeKMO8EdmmEbKEBnW0AQ" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ArtifactEdit[jcu^name=ArtifactEdit.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3IfeKcO8EdmmEbKEBnW0AQ" points="[-13, 7077, 2831, -5636]$[-2844, 8664, 0, -4049]"/>
-      </edges>
-      <edges xmi:id="_3IlkwMO8EdmmEbKEBnW0AQ" source="_25TLkMO8EdmmEbKEBnW0AQ" target="_25TLkMO8EdmmEbKEBnW0AQ">
-        <children xmi:id="_3Ilkw8O8EdmmEbKEBnW0AQ" type="KindLabel">
-          <children xmi:id="_3IlkxcO8EdmmEbKEBnW0AQ" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3Ilkx8O8EdmmEbKEBnW0AQ" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3IlkxsO8EdmmEbKEBnW0AQ" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_3IlkxMO8EdmmEbKEBnW0AQ" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_3IlkwcO8EdmmEbKEBnW0AQ" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3IlkwsO8EdmmEbKEBnW0AQ" points="[2831, 2964, 2831, 2964]$[2831, 3837, 2831, 3837]$[1322, 3837, 1322, 3837]$[1322, 2964, 1322, 2964]"/>
-      </edges>
-      <edges xmi:id="_3IlkyMO8EdmmEbKEBnW0AQ" source="_25TLkMO8EdmmEbKEBnW0AQ" target="_294woMO8EdmmEbKEBnW0AQ">
-        <children xmi:id="_3Ilky8O8EdmmEbKEBnW0AQ" type="KindLabel">
-          <children xmi:id="_3IrrYMO8EdmmEbKEBnW0AQ" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3IrrYsO8EdmmEbKEBnW0AQ" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3IrrYcO8EdmmEbKEBnW0AQ" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_3IlkzMO8EdmmEbKEBnW0AQ" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_3IlkycO8EdmmEbKEBnW0AQ" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ModuleCoreNature[jcu^name=ModuleCoreNature.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3IlkysO8EdmmEbKEBnW0AQ" points="[0, 4048, 3307, -2460]$[-3307, 5635, 0, -873]"/>
-      </edges>
-      <edges xmi:id="_3IrrY8O8EdmmEbKEBnW0AQ" source="_2-RLIMO8EdmmEbKEBnW0AQ" target="_294woMO8EdmmEbKEBnW0AQ">
-        <children xmi:id="_3IrrZsO8EdmmEbKEBnW0AQ" type="KindLabel">
-          <children xmi:id="_3IrraMO8EdmmEbKEBnW0AQ" type="Stereotype">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3IrrasO8EdmmEbKEBnW0AQ" type="Kind">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <children xmi:id="_3IrracO8EdmmEbKEBnW0AQ" type="Name">
-            <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          </children>
-          <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-          <layoutConstraint xmi:type="notation:Location" xmi:id="_3IrrZ8O8EdmmEbKEBnW0AQ" y="-185"/>
-        </children>
-        <styles xmi:type="umlnotation:UMLConnectorStyle" xmi:id="_3IrrZMO8EdmmEbKEBnW0AQ" routing="Rectilinear" showStereotype="Text"/>
-        <element xmi:type="uml:Usage" href="vizref:///#jdep^vcore.target=uml2.Usage[jsrctype^name=ComponentCore[jcu^name=ComponentCore.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]][jsrctype^name=UnresolveableURIException[jcu^name=UnresolveableURIException.java[jpack^name=org.eclipse.wst.common.componentcore[jsrcroot^srcfolder=modulecore-src[project^vcore.target=uml2.Model^id=org.eclipse.wst.common.modulecore]]]]]"/>
-        <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3IrrZcO8EdmmEbKEBnW0AQ" points="[-1, 4048, -3308, -2460]$[3307, 5635, 0, -873]"/>
-      </edges>
-    </contents>
-  </eAnnotations>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_wUCHxMO8EdmmEbKEBnW0AQ">
-    <eAnnotations xmi:id="_wUCHxcO8EdmmEbKEBnW0AQ" source="attributes">
-      <details xmi:id="_wUCHxsO8EdmmEbKEBnW0AQ" key="version" value="0"/>
-    </eAnnotations>
-    <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>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_wUCHx8O8EdmmEbKEBnW0AQ">
-    <eAnnotations xmi:id="_wUCHyMO8EdmmEbKEBnW0AQ" source="attributes">
-      <details xmi:id="_wUCHycO8EdmmEbKEBnW0AQ" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_PROFILES/Intermediate.profile.uml2#_Cz7csK87Edih9-GG5afQ0g"/>
-    <importedProfile href="pathmap://UML2_PROFILES/Intermediate.profile.uml2#_Cz7csK87Edih9-GG5afQ0g"/>
-  </packageImport>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_wUCHysO8EdmmEbKEBnW0AQ">
-    <eAnnotations xmi:id="_wUIOYMO8EdmmEbKEBnW0AQ" source="attributes">
-      <details xmi:id="_wUIOYcO8EdmmEbKEBnW0AQ" key="version" value="0"/>
-    </eAnnotations>
-    <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="_wUIOYsO8EdmmEbKEBnW0AQ">
-    <eAnnotations xmi:id="_wUIOY8O8EdmmEbKEBnW0AQ" source="attributes">
-      <details xmi:id="_wUIOZMO8EdmmEbKEBnW0AQ" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default"/>
-    <importedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default"/>
-  </packageImport>
-  <packageImport xmi:type="uml:ProfileApplication" xmi:id="_wUIOZcO8EdmmEbKEBnW0AQ">
-    <eAnnotations xmi:id="_wUIOZsO8EdmmEbKEBnW0AQ" source="attributes">
-      <details xmi:id="_wUIOZ8O8EdmmEbKEBnW0AQ" key="version" value="0"/>
-    </eAnnotations>
-    <importedPackage xmi:type="uml:Profile" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment"/>
-    <importedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment"/>
-  </packageImport>
-  <packageImport xmi:id="_wUIOaMO8EdmmEbKEBnW0AQ">
-    <importedPackage xmi:type="uml:Model" href="pathmap://UML2_LIBRARIES/UML2PrimitiveTypes.library.uml2#_EfRZoK86EdieaYgxtVWN8Q"/>
-  </packageImport>
-</uml:Model>
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/modulecore.properties b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/modulecore.properties
deleted file mode 100644
index 55b628e..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/modulecore.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-NEEDSMIGRATING=This project needs to migrate WTP metadata
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/modulecoreNLS.properties b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/modulecoreNLS.properties
deleted file mode 100644
index f76b2da..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/modulecoreNLS.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-Acquiring_ArtifactEdit_For_Read_Exception=Exception while acquiring artifact edit for read.
-Acquiring_ArtifactEdit_For_Write_Exception=Exception while acquiring artifact edit for write.
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/ArtifactEdit.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/ArtifactEdit.java
deleted file mode 100644
index 77cca57..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/ArtifactEdit.java
+++ /dev/null
@@ -1,743 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore;
-
-import java.util.EventObject;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.emf.common.command.BasicCommandStack;
-import org.eclipse.emf.common.command.CommandStack;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.jem.internal.util.emf.workbench.nls.EMFWorkbenchResourceHandler;
-import org.eclipse.jem.util.UIContextDetermination;
-import org.eclipse.wst.common.componentcore.internal.ArtifactEditModel;
-import org.eclipse.wst.common.componentcore.internal.BinaryComponentHelper;
-import org.eclipse.wst.common.componentcore.internal.impl.ArtifactEditModelFactory;
-import org.eclipse.wst.common.componentcore.internal.impl.ModuleURIUtil;
-import org.eclipse.wst.common.componentcore.internal.util.IModuleConstants;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.frameworks.internal.operations.IOperationHandler;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModelListener;
-import org.eclipse.wst.common.internal.emfworkbench.validateedit.IValidateEditContext;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * Provides a Facade pattern for accessing Module Content Metamodels for Web Tools Platform flexible
- * modules.
- * <p>
- * ArtifactEdit hides the management of accessing edit models ({@see ArtifactEditModel})
- * correctly. Each project may have multiple ({@see ArtifactEditModel})s depending on the number
- * of modules contained by the project. Clients should use ArtifactEdit or an appropriate subclass
- * when working with the content models of WTP modules.
- * </p>
- * 
- * <p>
- * Each ArtifactEdit facade is designed to manage the EditModel lifecycle for clients. However,
- * while each ArtifactEdit is designed to be passed around as needed, clients must enforce the
- * ArtifactEdit lifecycle. The most common method of acquiring a ArtifactEdit instance facade is to
- * use {@see #getArtifactEditForRead(WorkbenchComponent)}&nbsp;or
- * {@see #getArtifactEditForWrite(WorkbenchComponent)}.
- * </p>
- * <p>
- * When clients have concluded their use of the instance, <b>clients must call {@see #dispose()}
- * </b>.
- * </p>
- * <p>
- * This class is experimental until fully documented.
- * </p>
- * 
- * @see ModuleCoreNature
- * @see ArtifactEditModel
- * @plannedfor 1.0
- */
-public class ArtifactEdit implements IEditModelHandler, IAdaptable{
-
-	public static final Class ADAPTER_TYPE = ArtifactEdit.class;
-	private final ArtifactEditModel artifactEditModel;
-	private boolean isReadOnly;
-	private boolean isArtifactEditModelSelfManaged;
-
-	private boolean isBinary;
-	private BinaryComponentHelper binaryComponentHelper;
-	private final IProject project;
-	
-	/**
-	 * 
-	 */
-	protected ArtifactEdit() {
-		super();
-		artifactEditModel = null;
-		project = null;
-	}
-
-	/**
-	 * <p>
-	 * Returns an instance facade to manage the underlying edit model for the given
-	 * {@see WorkbenchComponent}. Instances of ArtifactEdit that are returned through this method
-	 * must be {@see #dispose()}ed of when no longer in use.
-	 * </p>
-	 * <p>
-	 * Use to acquire an ArtifactEdit facade for a specific {@see WorkbenchComponent}&nbsp;that
-	 * will not be used for editing. Invocations of any save*() API on an instance returned from
-	 * this method will throw exceptions.
-	 * </p>
-	 * <p>
-	 * <b>The following method may return null. </b>
-	 * </p>
-	 * <p>Note: This method is for internal use only. Clients should not call this method.</p>
-	 * @param aModule
-	 *            A valid {@see WorkbenchComponent}&nbsp;with a handle that resolves to an
-	 *            accessible project in the workspace
-	 * @return An instance of ArtifactEdit that may only be used to read the underlying content
-	 *         model
-	 */
-	public static ArtifactEdit getArtifactEditForRead(IVirtualComponent aModule) {
-		if(aModule.isBinary()){
-			return new ArtifactEdit(aModule);
-		}
-		if (isValidEditableModule(aModule)) {
-			IProject project = aModule.getProject();
-			ModuleCoreNature nature = ModuleCoreNature.getModuleCoreNature(project);
-			return new ArtifactEdit(nature, aModule, true);
-		} 
-		return null;
-	}
-
-	/**
-	 * <p>
-	 * Returns an instance facade to manage the underlying edit model for the given
-	 * {@see WorkbenchComponent}. Instances of ArtifactEdit that are returned through this method
-	 * must be {@see #dispose()}ed of when no longer in use.
-	 * </p>
-	 * <p>
-	 * Use to acquire an ArtifactEdit facade for a specific {@see WorkbenchComponent}&nbsp;that
-	 * will be used for editing.
-	 * </p>
-	 * <p>
-	 * <b>The following method may return null. </b>
-	 * </p>
-	 * <p>Note: This method is for internal use only. Clients should not call this method.</p>
-	 * @param aModule
-	 *            A valid {@see WorkbenchComponent}&nbsp;with a handle that resolves to an
-	 *            accessible project in the workspace
-	 * @return An instance of ArtifactEdit that may be used to modify and persist changes to the
-	 *         underlying content model
-	 */
-	public static ArtifactEdit getArtifactEditForWrite(IVirtualComponent aModule) {
-		if (!aModule.isBinary() && isValidEditableModule(aModule)) {
-			IProject project = aModule.getProject();
-			ModuleCoreNature nature = ModuleCoreNature.getModuleCoreNature(project);
-			return new ArtifactEdit(nature, aModule, false);
-		}
-		return null;
-	}
-
-	/**
-	 * <p>
-	 * Returns an instance facade to manage the underlying edit model for the given
-	 * {@see WorkbenchComponent}. Instances of ArtifactEdit that are returned through this method
-	 * must be {@see #dispose()}ed of when no longer in use.
-	 * </p>
-	 * <p>
-	 * Use to acquire an ArtifactEdit facade for a specific {@see WorkbenchComponent}&nbsp;that
-	 * will not be used for editing. Invocations of any save*() API on an instance returned from
-	 * this method will throw exceptions.
-	 * </p>
-	 * <p>
-	 * <b>The following method may return null. </b>
-	 * </p>
-	 * 
-	 * @param aModule
-	 *            A valid {@see WorkbenchComponent}&nbsp;with a handle that resolves to an
-	 *            accessible project in the workspace
-	 * @return An instance of ArtifactEdit that may only be used to read the underlying content
-	 *         model
-	 */
-	public static ArtifactEdit getArtifactEditForRead(IProject aProject) {
-		ArtifactEdit artifactEdit = null;
-		try {
-			artifactEdit = new ArtifactEdit(aProject, true);
-		} catch (IllegalArgumentException iae) {
-			artifactEdit = null;
-		}
-		return artifactEdit;
-	}
-
-	/**
-	 * <p>
-	 * Returns an instance facade to manage the underlying edit model for the given
-	 * {@see WorkbenchComponent}. Instances of ArtifactEdit that are returned through this method
-	 * must be {@see #dispose()}ed of when no longer in use.
-	 * </p>
-	 * <p>
-	 * Use to acquire an ArtifactEdit facade for a specific {@see WorkbenchComponent}&nbsp;that
-	 * will be used for editing.
-	 * </p>
-	 * <p>
-	 * <b>The following method may return null. </b>
-	 * </p>
-	 * 
-	 * @param aModule
-	 *            A valid {@see WorkbenchComponent}&nbsp;with a handle that resolves to an
-	 *            accessible project in the workspace
-	 * @return An instance of ArtifactEdit that may be used to modify and persist changes to the
-	 *         underlying content model
-	 */
-	public static ArtifactEdit getArtifactEditForWrite(IProject aProject) {
-		ArtifactEdit artifactEdit = null;
-		try {
-			artifactEdit = new ArtifactEdit(aProject, false);
-		} catch (IllegalArgumentException iae) {
-			artifactEdit = null;
-		}
-		return artifactEdit;
-	}
-
-	/**
-	 * <p>Note: This method is for internal use only. Clients should not call this method.</p>
-	 * @param module
-	 *            A {@see WorkbenchComponent}
-	 * @return True if the supplied module has a moduleTypeId which has a defined
-	 *         {@see IEditModelFactory}&nbsp;and is contained by an accessible project
-	 */
-	public static boolean isValidEditableModule(IVirtualComponent aModule) {
-		if (aModule == null)
-			return false;
-		if (ModuleURIUtil.fullyQualifyURI(aModule.getProject()) == null)
-				return false;
-			/* and the containing project must be resolveable and accessible */
-			IProject project = aModule.getProject();
-			if (project == null || !project.isAccessible())
-				return false;
-		return true;
-	}
-
-
-	/**
-	 * <p>
-	 * Creates an instance facade for the given {@see ArtifactEditModel}.
-	 * </p>
-	 * 
-	 * @param anArtifactEditModel
-	 */
-	public ArtifactEdit(ArtifactEditModel anArtifactEditModel) {
-		artifactEditModel = anArtifactEditModel;
-		isReadOnly = artifactEditModel.isReadOnly();
-		isArtifactEditModelSelfManaged = false;
-		
-		project = anArtifactEditModel.getProject();
-	}
-
-	
-	protected ArtifactEdit(IVirtualComponent aBinaryModule){
-		if(!aBinaryModule.isBinary()){
-			throw new RuntimeException("This constructor is only for binary components.");
-		}
-		binaryComponentHelper = initBinaryComponentHelper(aBinaryModule);
-		artifactEditModel = null;
-		isReadOnly = true;
-		isBinary = true;
-		isArtifactEditModelSelfManaged = true;
-		project = null;
-		
-	}
-	
-	protected BinaryComponentHelper initBinaryComponentHelper(IVirtualComponent binaryModule) {
-		return null;
-	}
-
-	/**
-	 * <p>
-	 * Creates an instance facade for the given {@see WorkbenchComponent}.
-	 * </p>
-	 * <p>Note: This method is for internal use only. Clients should not call this method.</p>
-	 * @param aNature
-	 *            A non-null {@see ModuleCoreNature}&nbsp;for an accessible project
-	 * @param aModule
-	 *            A non-null {@see WorkbenchComponent}&nbsp;pointing to a module from the given
-	 *            {@see ModuleCoreNature}
-	 */
-	protected ArtifactEdit(ModuleCoreNature aNature, IVirtualComponent aModule, boolean toAccessAsReadOnly) {
-		
-		isReadOnly = toAccessAsReadOnly;
-		isArtifactEditModelSelfManaged = true;
-		project = aNature.getProject();
-		IProject aProject = aModule.getProject();
-		URI componentURI = ModuleURIUtil.fullyQualifyURI(aProject);
-		Map editModelParams = null;
-		if (getContentTypeDescriber() != null) {
-			editModelParams = new HashMap();
-			editModelParams.put(ArtifactEditModelFactory.PARAM_ROOT_URI, getRootURI());
-			editModelParams.put(ArtifactEditModelFactory.PARAM_ROOT_CONTENT_TYPE, getContentTypeDescriber());
-		}
-		if (toAccessAsReadOnly) 
-			artifactEditModel = aNature.getArtifactEditModelForRead(componentURI, this, null, editModelParams);
-		else 
-			artifactEditModel = aNature.getArtifactEditModelForWrite(componentURI, this, null, editModelParams);
-	}
-
-	/**
-	 * <p>
-	 * Creates an instance facade for the given {@see WorkbenchComponent}.
-	 * </p>
-	 * 
-	 * @param aNature
-	 *            A non-null {@see ModuleCoreNature}&nbsp;for an accessible project
-	 * @param aModule
-	 *            A non-null {@see WorkbenchComponent}&nbsp;pointing to a module from the given
-	 *            {@see ModuleCoreNature}
-	 */
-	public ArtifactEdit(IProject aProject, boolean toAccessAsReadOnly) throws IllegalArgumentException {
-		this(aProject,toAccessAsReadOnly,false,null);
-	}
-	
-	/**
-	 * <p>
-	 * Creates an instance facade for the given {@see WorkbenchComponent}.
-	 * </p>
-	 * 
-	 * @param aProject
-	 * @param toAccessAsReadOnly
-	 * @param forCreate
-	 * @param projectType
-	 * @throws IllegalArgumentException
-	 */
-	protected ArtifactEdit(IProject aProject, boolean toAccessAsReadOnly, boolean forCreate, String projectType) throws IllegalArgumentException {
-		
-		this(aProject,toAccessAsReadOnly,forCreate,projectType,null);
-	}
-	
-	protected void verifyOperationSupported() {
-		if(!validArtifactEdit){
-			throw new RuntimeException("Invalid Artifact Edit access (model version not supported)");
-		}
-	}
-	
-	private boolean validArtifactEdit = true;
-	
-	public boolean isValid() {
-		return validArtifactEdit;
-	}
-	
-	protected void markInvalid(){
-		Logger.global.log(Level.WARNING, "Invalid Artifact Edit access (model version not supported)");
-		validArtifactEdit = false;
-	}
-	
-	
-	/**
-	 * <p>
-	 * Creates an instance facade for the given {@see WorkbenchComponent}.
-	 * </p>
-	 * 
-	 * @param aProject
-	 * @param toAccessAsReadOnly
-	 * @param forCreate
-	 * @param projectType - Used to pass specific editModel edit (Used to lookup factory)
-	 * @param editModelParams - Properties that can be used to create cacheKey on editModelFactory
-	 * @throws IllegalArgumentException
-	 */
-	protected ArtifactEdit(IProject aProject, boolean toAccessAsReadOnly, boolean forCreate, String projectType, Map editModelParams) throws IllegalArgumentException {
-
-		if (aProject == null || !aProject.isAccessible())
-			throw new IllegalArgumentException("Invalid project: " + aProject);
-
-		ModuleCoreNature nature = ModuleCoreNature.getModuleCoreNature(aProject);
-
-		if (nature == null)
-			throw new IllegalArgumentException("Project does not have ModuleCoreNature: " + aProject);
-		if (!validProjectVersion(aProject)){
-			markInvalid();
-		}
-		IVirtualComponent component = ComponentCore.createComponent(aProject);
-		if (component == null)
-			throw new IllegalArgumentException("Invalid component handle: " + aProject);
-		if (!forCreate && !isValidEditableModule(component))
-			throw new IllegalArgumentException("Invalid component handle: " + aProject);
-		project = aProject;
-		URI componentURI = ModuleURIUtil.fullyQualifyURI(aProject);
-		if (getContentTypeDescriber() != null) {
-			if (editModelParams == null)
-				editModelParams = new HashMap();
-			editModelParams.put(ArtifactEditModelFactory.PARAM_ROOT_URI, getRootURI());
-			editModelParams.put(ArtifactEditModelFactory.PARAM_ROOT_CONTENT_TYPE, getContentTypeDescriber());
-		}
-		if (toAccessAsReadOnly) 
-			artifactEditModel = nature.getArtifactEditModelForRead(componentURI, this, projectType, editModelParams);
-		else 
-			artifactEditModel = nature.getArtifactEditModelForWrite(componentURI, this, projectType, editModelParams);
-		
-			
-		isReadOnly = toAccessAsReadOnly;
-		isArtifactEditModelSelfManaged = true;
-	}
-	
-	public boolean isProjectOfType(IProject project, String typeID) {
-		IFacetedProject facetedProject = null;
-		try {
-			facetedProject = ProjectFacetsManager.create(project);
-		} catch (CoreException e) {
-			return false;
-		}
-		if (facetedProject != null && ProjectFacetsManager.isProjectFacetDefined(typeID)) {
-			IProjectFacet projectFacet = ProjectFacetsManager.getProjectFacet(typeID);
-			return projectFacet != null && facetedProject.hasProjectFacet(projectFacet);
-		}
-		return false;
-	}
-	/**
-	 * Used to optionally define an associated content type for XML file creation
-	 * @return
-	 */
-	protected String getContentTypeDescriber() {
-		
-		if (isProjectOfType(project, IModuleConstants.JST_EJB_MODULE))
-			return "org.eclipse.jst.j2ee.ejbDD";
-		if (isProjectOfType(project, IModuleConstants.JST_WEB_MODULE))
-			return "org.eclipse.jst.j2ee.webDD";
-		if (isProjectOfType(project, IModuleConstants.JST_EAR_MODULE))
-			return "org.eclipse.jst.j2ee.earDD";
-		if (isProjectOfType(project, IModuleConstants.JST_APPCLIENT_MODULE))
-			return "org.eclipse.jst.j2ee.appclientDD";
-		return null;
-	}
-	
-	/**
-	 * Used to optionally define an root URI for the project
-	 * @return
-	 */
-	protected URI getRootURI() {
-		
-		if (isProjectOfType(project, IModuleConstants.JST_EJB_MODULE))
-			return URI.createURI("META-INF/ejb-jar.xml");
-		if (isProjectOfType(project, IModuleConstants.JST_WEB_MODULE))
-			return URI.createURI("WEB-INF/web.xml");
-		if (isProjectOfType(project, IModuleConstants.JST_EAR_MODULE))
-			return URI.createURI("META-INF/application.xml");
-		if (isProjectOfType(project, IModuleConstants.JST_APPCLIENT_MODULE))
-			return URI.createURI("META-INF/application-client.xml");
-		return null;
-	}
-
-	protected boolean validProjectVersion(IProject project2) {
-		return true;
-	}
-
-	/**
-	 * <p>
-	 * Force a save of the underlying model. The following method should be used with care. Unless
-	 * required, use {@see #saveIfNecessary(IProgressMonitor)}&nbsp; instead.
-	 * </p>
-	 * 
-	 * @see org.eclipse.wst.common.componentcore.IEditModelHandler#save()
-	 * @throws IllegalStateException
-	 *             If the ModuleCore object was created as read-only
-	 */
-	public void save(IProgressMonitor aMonitor) {
-		if (isReadOnly())
-			throwAttemptedReadOnlyModification();
-		else if (validateEdit().isOK())
-			artifactEditModel.save(aMonitor, this);
-	}
-
-	/**
-	 * <p>
-	 * Save the underlying model only if no other clients are currently using the model. If the
-	 * model is not shared, it will be saved. If it is shared, the save will be deferred.
-	 * </p>
-	 * 
-	 * @see org.eclipse.wst.common.componentcore.IEditModelHandler#saveIfNecessary()
-	 * @throws IllegalStateException
-	 *             If the ModuleCore object was created as read-only
-	 */
-	public void saveIfNecessary(IProgressMonitor aMonitor) {
-		if (isReadOnly())
-			throwAttemptedReadOnlyModification();
-		else if (validateEdit().isOK())
-			artifactEditModel.saveIfNecessary(aMonitor, this);
-	}
-	
-	/**
-	 * Validate edit for resource state
-	 */
-	public IStatus validateEdit() {
-		IValidateEditContext validator = (IValidateEditContext) UIContextDetermination.createInstance(IValidateEditContext.CLASS_KEY);
-		return validator.validateState(getArtifactEditModel());
-	}
-
-	/**
-	 * Save only if necessary. If typically a save would not occur because this edit model is
-	 * shared, the user will be prompted using the @operationHandler. 
-	 * If the prompt returns true (the user wants to save) and the model is not shared, 
-	 * the entire edit model will be saved. You may pass in a boolean <code>wasDirty</code> to
-	 * indicate whether this edit model was dirty prior to making any changes and
-	 * calling this method. {@link EditModel#isDirty()}
-	 */
-	public void saveIfNecessaryWithPrompt(IProgressMonitor monitor, IOperationHandler operationHandler, boolean wasDirty) {
-
-		if (shouldSave(operationHandler, wasDirty))
-			saveIfNecessary(monitor);
-		else
-			handleSaveIfNecessaryDidNotSave(monitor);
-	}
-
-	/**
-	 * Default is to do nothing. This method is called if a saveIfNecessary or
-	 * saveIfNecessaryWithPrompt determines not to save. This provides subclasses with an
-	 * opportunity to do some other action.
-	 */
-	private void handleSaveIfNecessaryDidNotSave(IProgressMonitor monitor) {
-		// do nothing
-	}
-
-	/**
-	 * Should the resources be saved.
-	 */
-	private boolean shouldSave(IOperationHandler operationHandler, boolean wasDirty) {
-		return !wasDirty ? shouldSave() : shouldSave(operationHandler);
-	}
-
-	/**
-	 * Prompt for a save.
-	 */
-	private boolean promptToSave(IOperationHandler operationHandler) {
-		if (operationHandler == null)
-			return false;
-		return operationHandler.canContinue(EMFWorkbenchResourceHandler.getString("The_following_resources_ne_UI_"), getArtifactEditModel().getResourceURIs(true)); //$NON-NLS-1$ = "The following resources need to be saved but are currently shared, do you want to save now?"
-	}
-
-	/**
-	 * Should the resources be saved.
-	 */
-	private boolean shouldSave(IOperationHandler operationHandler) {
-		return shouldSave() || promptToSave(operationHandler);
-	}
-
-	/**
-	 * Should the resources be saved.
-	 */
-	private boolean shouldSave() {
-		return !isReadOnly() && isArtifactEditModelSelfManaged;
-	}
-
-	/**
-	 * <p>
-	 * Clients must call the following method when they have finished using the model, even if the
-	 * ArtifactEdit instance facade was created as read-only.
-	 * </p>
-	 * 
-	 * @see org.eclipse.wst.common.componentcore.IEditModelHandler#dispose()
-	 */
-	public void dispose() {
-		if(isBinary()){
-			binaryComponentHelper.dispose();
-		} else if (isArtifactEditModelSelfManaged && artifactEditModel != null)
-			artifactEditModel.releaseAccess(this);
-	}
-
-	/**
-	 * <p>
-	 * Returns the root object for read or write access (depending on how the current ArtifactEdit
-	 * was loaded).
-	 * </p>
-	 * 
-	 * @return The root object of the underlying model
-	 */
-	public EObject getContentModelRoot() {
-		if(isBinary())
-		   return binaryComponentHelper.getPrimaryRootObject();
-		if (artifactEditModel!=null)
-			return artifactEditModel.getPrimaryRootObject();
-		return null;
-	}
-
-	/**
-	 * <p>
-	 * Add a listener to track lifecylce events from the underlying EditModel.
-	 * </p>
-	 * 
-	 * @param listener
-	 *            A non-null EditModelListener
-	 */
-	public void addListener(EditModelListener listener) {
-		if(isBinary()){
-			
-		} else {
-			if (artifactEditModel!=null && listener!=null)
-				artifactEditModel.addListener(listener);
-		}
-	}
-
-	/**
-	 * <p>
-	 * Remove the supplied listener
-	 * </p>
-	 * 
-	 * @param listener
-	 *            A non-null EditModelListener
-	 *           
-	 */
-	public void removeListener(EditModelListener listener) {
-		if(isBinary()){
-		} else if (artifactEditModel!=null && !artifactEditModel.isDisposed()) {
-			artifactEditModel.removeListener(listener);
-		}
-	}
-
-	/**
-	 * <p>
-	 * This method may be removed soon. Avoid adding dependencies to it.
-	 * </p>
-	 * <p>
-	 * This method is considered internal and not published as API.
-	 * </p>
-	 * @param editModel
-	 * @return
-	 */
-	public boolean hasEditModel(EditModel editModel) {
-		if(isBinary()){
-			return false;
-		}
-		return artifactEditModel == editModel;
-	}
-	/**
-	 * 
-	 * @return IProject - returns the project of the underlying workbench component.
-	 */
-	public IProject getProject() {
-		if(isBinary()){
-			return null;
-		}
-		return project;
-	}
-	/**
-	 * 
-	 * @return IVirtualComponent - returns the underlying workbench component.
-	 */
-	public IVirtualComponent getComponent() {
-		if(isBinary()){
-			return binaryComponentHelper.getComponent();
-		}
-		return getArtifactEditModel().getVirtualComponent();
-	}
-
-	/**
-	 * @return The underlying managed edit model
-	 */
-	protected ArtifactEditModel getArtifactEditModel() {
-		if(isBinary()){
-			throwAttemptedBinaryEditModelAccess();
-		}
-		return artifactEditModel;
-	}
-	
-	protected BinaryComponentHelper getBinaryComponentHelper() {
-		return binaryComponentHelper;
-	}
-	
-	/**
-	 * @return The EMF command stack managed by the underlying editmodel
-	 */
-	public CommandStack getCommandStack() {
-		if(isBinary()){
-			return new BasicCommandStack();
-		}
-		return artifactEditModel.getCommandStack();
-	}
-	/**
-	 * 
-	 * @deprecated Use ((ArtifactEditModel)getAdapter(ArtifactEditModel.ADAPTER_TYPE)).deleteResource(aResource);
-	 */
-	public void deleteResource(Resource aResource) {
-		if(isBinary()){
-			throwAttemptedBinaryEditModelAccess();
-		}
-		artifactEditModel.deleteResource(aResource);
-	}
-	/**
-	 * @return The isDirty flag based the underlying editmodel's list of resources.
-	 */
-	public boolean isDirty() {
-		if(isBinary()){
-			return false;
-		}
-		return artifactEditModel.isDirty();
-	}
-
-	private void throwAttemptedReadOnlyModification() {
-		throw new IllegalStateException("Attempt to modify an ArtifactEdit instance facade that was loaded as read-only.");
-	}
-
-	protected void throwAttemptedBinaryEditModelAccess() {
-		throw new IllegalStateException("Attempt to modify an ArtifactEdit instance facade that was loaded as binary.");
-	}
-	
-	public boolean isReadOnly() {
-		return isReadOnly;
-	}
-
-	public boolean isBinary() {
-		return isBinary;
-	}
-	
-	/**
-	 * Force all of the known resource URIs to be loaded
-	 * if they are not already.
-	 */
-	public void forceLoadKnownResources() {
-		if(isBinary()){
-		
-		} else {
-			List uris = getArtifactEditModel().getKnownResourceUris();
-			URI uri = null;
-			for (int i = 0; i < uris.size(); i++) {
-				uri = (URI) uris.get(i);
-				getArtifactEditModel().getResource(uri);
-			}
-		}
-	}
-	
-	/**
-	 * Return a Resource for @aUri.
-	 * @deprecated Use ((ArtifactEditModel)getAdapter(ArtifactEditModel.ADAPTER_TYPE)).getResource(aResource);
-	 */
-	public Resource getResource(URI aUri) {
-		if(isBinary()){
-			return binaryComponentHelper.getResource(aUri);
-		}
-		return getArtifactEditModel().getResource(aUri);
-	}
-
-	public Object getAdapter(Class adapterType) {
-		if (adapterType == ArtifactEditModel.class)
-			return getArtifactEditModel();
-		return Platform.getAdapterManager().getAdapter(this, adapterType);
-	}
-
-	public void commandStackChanged(EventObject event) {
-		getArtifactEditModel().commandStackChanged(event);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/ComponentCore.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/ComponentCore.java
deleted file mode 100644
index 062a5e5..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/ComponentCore.java
+++ /dev/null
@@ -1,214 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeNode;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualFile;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualReference;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualResource;
-import org.eclipse.wst.common.componentcore.internal.util.ComponentImplManager;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-
-/**
- * Provides a handle creation factory for the Virtual Path API. Clients may use
- * this class to convert Platform IResource model elements to IVirtualResource
- * model elements.
- * <p>
- * ComponentCore provides a consistent entry point to the IVirtual Path model
- * that allows clients to group resources together in logical collections with a
- * path structure that varies from their actual source location structures.
- * </p>
- * 
- * @plannedfor 1.0
- */
-public class ComponentCore {
-
-	private static final IVirtualResource[] NO_RESOURCES = new VirtualResource[0];
-
-	/**
-	 * Return an IVirtualComponent with the given name (aComponentName)
-	 * contained by the given project (aProject). Component names should be
-	 * unique across a project.
-	 * 
-	 * @param aProject
-	 *            A valid, accessible project to contain the component
-	 * @return A handle to an IVirtualComponent that may or may not exist or
-	 *         null if passed project does not contain ModuleCoreNature.
-	 * @see org.eclipse.core.runtime.IProgressMonitor#create(int, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public static IVirtualComponent createComponent(IProject aProject) {
-		if (aProject == null || !aProject.isAccessible()){
-			return null;
-		}
-		return ComponentImplManager.instance().createComponent(aProject);
-	}
-
-	/**
-	 * Return an IVirtualComponent with the given name (aComponentName)
-	 * contained by the given project (aProject). Component names should be
-	 * unique across a project.
-	 * 
-	 * @param aProject
-	 *            A valid, accessible project to contain the component
-	 * @param checkForComponentFile
-	 *            A flag to indicate if the presence of the component file should be checked
-	 * @return A handle to an IVirtualComponent that may or may not exist or
-	 *         null if passed project does not contain ModuleCoreNature.
-	 * @see org.eclipse.core.runtime.IProgressMonitor#create(int, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public static IVirtualComponent createComponent(IProject aProject, boolean checkForComponentFile) {
-		if (aProject == null || !aProject.isAccessible()){
-			return null;
-		}
-		return ComponentImplManager.instance().createComponent(aProject, checkForComponentFile);
-	}
-
-	/**
-	 * Return an IVirtualComponent with the given name (aComponentName)
-	 * contained by the given project (aProject). Component names should be
-	 * unique across a project.
-	 * 
-	 * @param aProject
-	 *            A valid, accessible project to contain the component
-	 * @return A handle to an IVirtualComponent that may or may not exist or
-	 *         null if passed project does not contain ModuleCoreNature.
-	 * @deprecated
-	 * @see org.eclipse.core.runtime.IProgressMonitor#create(int, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public static IVirtualComponent createComponent(IProject aProject, String aName) {
-		return createComponent(aProject);
-	}
-
-	/**
-	 * Return an IVirtualComponent with the given name (aComponentName)
-	 * 
-	 * @param aComponentName
-	 *            A name to identify the component, the name can be
-	 *            lib/&lt;Absolute path of a jar&gt; or
-	 *            var/&lt;CLASSPATH_VARIABLE/library namer&gt;
-	 * @return A handle to an IVirtualComponent that may or may not exist.
-	 * @see org.eclipse.core.runtime.IProgressMonitor#create(int, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public static IVirtualComponent createArchiveComponent(IProject aProject, String aComponentName) {
-		return ComponentImplManager.instance().createArchiveComponent(aProject, aComponentName);
-	}
-
-	/**
-	 * Return an IVirtualFolder with a runtime path specified by aRuntimePath
-	 * contained by aProject, in a component named aComponentName. The resultant
-	 * IVirtualFolder may or may not exist.
-	 * 
-	 * @param aProject
-	 *            A valid, accessible project to contain the component
-	 * @param aRuntimePath
-	 *            The runtime path of the IVirtualFolder to return.
-	 * @return An IVirtualFolder contained by the specified component with the
-	 *         given runtime path
-	 * @see org.eclipse.core.runtime.IProgressMonitor#create(int, org.eclipse.core.runtime.IProgressMonitor)
-	 * @see IVirtualResource#createLink(IPath, int, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public static IVirtualFolder createFolder(IProject aProject, IPath aRuntimePath) {
-		return ComponentImplManager.instance().createFolder(aProject, aRuntimePath);
-	}
-
-	/**
-	 * Return an IVirtualFile with a runtime path specified by aRuntimePath
-	 * contained by aProject, in a component named aComponentName. IVirtualFiles
-	 * can only be created as links. Use
-	 * {@link IVirtualResource#getUnderlyingResource()} or
-	 * {@link IVirtualFile#getUnderlyingFile()} to create a resource with real
-	 * contents.
-	 * 
-	 * @param aProject
-	 *            A valid, accessible project to contain the component
-	 * @param aRuntimePath
-	 *            The runtime path of the IVirtualFolder to return.
-	 * @return An IVirtualFile contained by the specified component with the
-	 *         given runtime path
-	 * @see IVirtualResource#createLink(IPath, int, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public static IVirtualFile createFile(IProject aProject, IPath aRuntimePath) {
-		return new VirtualFile(aProject, aRuntimePath);
-	}
-
-	/**
-	 * Return an IVirtualReference that captures a relationship between
-	 * aComponent and aReferencedComponent. The IVirtualReference will be stored
-	 * with aComponent and target aReferencedComponent. IVirtualReferences may
-	 * span projects.
-	 * 
-	 * @param aComponent
-	 *            A valid, existing IVirtualComponent
-	 * @param aReferencedComponent
-	 *            A valid, existing IVirtualComponent
-	 * @return An IVirtualReference that captures the relationship between
-	 *         aComponent and aReferencedComponent.
-	 * @see IVirtualReference#create(int, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public static IVirtualReference createReference(IVirtualComponent aComponent, IVirtualComponent aReferencedComponent) {
-		return new VirtualReference(aComponent, aReferencedComponent);
-	}
-
-	public static IVirtualReference createReference(IVirtualComponent aComponent, IVirtualComponent aReferencedComponent, IPath runtimePath) {
-		return new VirtualReference(aComponent, aReferencedComponent, runtimePath);
-	}
-
-	/**
-	 * Return an array of IVirtualResources that represent the given IResource.
-	 * Each IResource could be mapped to multiple components, and thus an array
-	 * of each IVirtualResource that represents the IResource will be returned.
-	 * Each IVirtualResource may also map to other existing IResources, so the
-	 * mapping is not 1:1.
-	 * 
-	 * @param aResource
-	 *            An accessible IResource
-	 * @return An array of IVirtualResources from the model that represent the
-	 *         IResource.
-	 */
-	public static IVirtualResource[] createResources(IResource aResource) {
-		IProject proj = aResource.getProject();
-		StructureEdit se = null;
-		List foundResources = new ArrayList();
-		try {
-			se = StructureEdit.getStructureEditForRead(proj);
-			if (se != null) {
-				ComponentResource[] resources = se.findResourcesBySourcePath(aResource.getProjectRelativePath(), aResource.exists() ? ResourceTreeNode.CREATE_NONE : ResourceTreeNode.CREATE_RESOURCE_ALWAYS);
-				for (int i = 0; i < resources.length; i++) {
-					if (aResource.getType() == IResource.FILE)
-						foundResources.add(new VirtualFile(proj, resources[i].getRuntimePath()));
-					else
-						foundResources.add(ComponentCore.createFolder(proj, resources[i].getRuntimePath()));
-				}
-			}
-		} catch (UnresolveableURIException e) {
-			e.printStackTrace();
-		} finally {
-			if (se != null) {
-				se.dispose();
-			}
-		}
-		if (foundResources.size() > 0)
-			return (IVirtualResource[]) foundResources.toArray(new VirtualResource[foundResources.size()]);
-		return NO_RESOURCES;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/IEditModelHandler.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/IEditModelHandler.java
deleted file mode 100644
index 7d89b16..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/IEditModelHandler.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-
-/**
- * <p>
- * Provides a standard interface for managing the lifecycle of an Edit Model. Clients which use
- * instances of this interface are <b>required to invoke {@see #dispose()}</b> when they have
- * completed their usage. Once clients have disposed that instance, they will not be able to invoke
- * {@see #save(IProgressMonitor)}or {@see #saveIfNecessary(IProgressMonitor)}&nbsp;and should be wary of
- * using any model objects acquired from the handler, as they may be or become stale.
- * </p>
- * @see org.eclipse.wst.common.componentcore.internal.StructureEdit
- * @see org.eclipse.wst.common.componentcore.ArtifactEdit
- * @plannedfor 1.0
- */
-public interface IEditModelHandler {
-
-	/**
-	 * <p>
-	 * Force a save of the underlying edit model and keep track of progress using the supplied
-	 * progress monitor. Clients should avoid calling this version of save unless they are certain
-	 * they require the model to be saved. Clients are encouraged to use
-	 * {@see #saveIfNecessary(IProgressMonitor)}&nbsp;instead.
-	 * </p>
-	 * 
-	 * @param aMonitor
-	 *            A valid progress monitor or null
-	 */
-	void save(IProgressMonitor aMonitor);
-
-	/**
-	 * <p>
-	 * Save the underlying edit model, if no other consumers are using the edit model, and keep
-	 * track of progress using the supplied progress monitor. This version of save will only save if
-	 * the underlying edit model is not shared with other consumers.
-	 * </p>
-	 * 
-	 * @param aMonitor
-	 *            A valid progress monitor or null
-	 */
-	void saveIfNecessary(IProgressMonitor aMonitor);
-
-	/**
-	 * <p>
-	 * Clients must invoke this method when they have finished using the handler.
-	 * </p>
-	 */
-	void dispose();
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/ModuleCoreNature.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/ModuleCoreNature.java
deleted file mode 100644
index a3704cf..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/ModuleCoreNature.java
+++ /dev/null
@@ -1,678 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.IProjectNature;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.IJobManager;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.URIConverter;
-import org.eclipse.jem.util.emf.workbench.EMFWorkbenchContextBase;
-import org.eclipse.jem.util.emf.workbench.ISynchronizerExtender;
-import org.eclipse.jem.util.emf.workbench.ProjectResourceSet;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.wst.common.componentcore.internal.ArtifactEditModel;
-import org.eclipse.wst.common.componentcore.internal.ModuleStructuralModel;
-import org.eclipse.wst.common.componentcore.internal.ModulecorePlugin;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.impl.ArtifactEditModelFactory;
-import org.eclipse.wst.common.componentcore.internal.impl.ComponentCoreURIConverter;
-import org.eclipse.wst.common.componentcore.internal.impl.ModuleStructuralModelFactory;
-import org.eclipse.wst.common.componentcore.internal.impl.WTPModulesResourceFactory;
-import org.eclipse.wst.common.componentcore.internal.impl.WTPResourceFactoryRegistry;
-import org.eclipse.wst.common.componentcore.internal.util.IModuleConstants;
-import org.eclipse.wst.common.componentcore.internal.util.ModuleCoreMessages;
-import org.eclipse.wst.common.internal.emfworkbench.edit.EditModelRegistry;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModelNature;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * <p>
- * Allows projects to support flexible project structures. The ModuleCoreNature manages the
- * configuration of a module structural builder that prepares WorkbenchModules for deployment.
- * </p>
- * <p>
- * To determine if a project supports flexible project structures, check for the existence of the
- * ModuleCoreNature:
- * <p>
- * <code>(ModuleCoreNature.getModuleCoreNature(project) != null)</code>
- * </p>
- * <p>
- * If the project has a ModuleCoreNature, then the project supports flexible module structures.
- * </p>
- * <p>
- * In general, clients are expected to use the utility methods available on this class to acquire
- * the ModuleCoreNature instance from a given project ({@see #getModuleCoreNature(IProject)}
- * &nbsp;or to make a flexible project flexible by adding a ModuleCoreNature (
- * {@see #addModuleCoreNatureIfNecessary(IProject, IProgressMonitor)}).
- * </p> 
- * <a name="model-discussion"/>
-* <a name="module-structural-model"/>
-* <p>
-* Each ModuleCoreNature from a given project can provide access to the
-* {@see org.eclipse.wst.common.modulecore.ModuleStructuralModel}&nbsp; of the project.
-* {@see org.eclipse.wst.common.modulecore.ModuleStructuralModel}&nbsp; is a subclass of
-* {@see org.eclipse.wst.common.internal.emfworkbench.integration.EditModel}&nbsp;that manages
-* resources associated with the Module Structural Metamodel. As an EditModel, the
-* {@see org.eclipse.wst.common.modulecore.ModuleStructuralModel}&nbsp; references EMF resources,
-* that contain EMF models -- in this case, the EMF model of <i>.component </i> file.
-* </p>
-* <p>
-* Clients are encouraged to use the Edit Facade pattern (via
-* {@see org.eclipse.wst.common.modulecore.ArtifactEdit}&nbsp; or one if its relevant subclasses)
-* to work directly with the Module Structural Metamodel.
-* </p>
-* <a name="artifact-editmodel"/>
-* <p>
-* Each ModuleCoreNature from a given project can also provide access to the
-* {@see org.eclipse.wst.common.modulecore.ArtifactEditModel}&nbsp; for each
-* {@see org.eclipse.wst.common.modulecore.WorkbenchComponent}&nbsp; contained by the project. Like
-* {@see org.eclipse.wst.common.modulecore.ModuleStructuralModel},
-* {@see org.eclipse.wst.common.modulecore.ArtifactEditModel}&nbsp; is a subclass of
-* {@see org.eclipse.wst.common.internal.emfworkbench.integration.EditModel}&nbsp; that contains
-* EMF resources, which in turn contain the EMF models of module metadata files (such as J2EE
-* deployment descriptors).
-* </p>
-* <p>
-* The following diagram highlights the relationships of these subclasses of EditModel, and the
-* relationship of the EditModel to the EMF resources. In the diagram, "MetamodelResource" and
-* "MetamodelObject" are used as placeholders for the specific subclasses of
-* {@see org.eclipse.emf.ecore.resource.Resource}&nbsp;and {@see org.eclipse.emf.ecore.EObject}&nbsp;
-* respectively.
-* </p>
-* <table cellspacing="10" cellpadding="10">
-* <tr>
-* <td>
-* <p>
-* <img src="../../../../../overview/metamodel_components.jpg" />
-* </p>
-* </td>
-* </tr>
-* <tr>
-* <td>
-* <p>
-* <i>Figure 1: A component diagram of the Module Edit Models. </i>
-* </p>
-* </td>
-* </tr>
-* </table>
-* <p>
-* Clients are encouraged to use the Edit Facade pattern (via
-* {@see org.eclipse.wst.common.modulecore.ArtifactEdit}&nbsp; or what if its relevant subclasses)
-* to work directly with the Module Structural Metamodel.
-* </p>
-* <a name="accessor-key"/>
-* <p>
-* All EditModels have a lifecycle that must be enforced to keep the resources loaded that are in
-* use, and to unload resources that are not in use. To access an EditModel, clients are required to
-* supply an object token referred to as an accessor key. The accessor key allows the framework to
-* better track which clients are using the EditModel, and to ensure that only a client which has
-* accessed the EditModel with an accessor key may invoke save*()s on that EditModel.
-* </p> 
- * @see org.eclipse.wst.common.componentcore.internal.StructureEdit
- * @see org.eclipse.wst.common.componentcore.internal.StructureEdit#getStructureEditForRead(IProject)
- * @see org.eclipse.wst.common.componentcore.internal.StructureEdit#getStructureEditForWrite(IProject)
- * @see org.eclipse.wst.common.componentcore.ArtifactEdit
- * @see org.eclipse.wst.common.componentcore.ArtifactEdit#getArtifactEditForRead(org.eclipse.wst.common.componentcore.internal.WorkbenchComponent)
- * @see org.eclipse.wst.common.componentcore.ArtifactEdit#getArtifactEditForWrite(org.eclipse.wst.common.componentcore.internal.WorkbenchComponent)
- * @plannedfor 1.0
- */
-public class ModuleCoreNature extends EditModelNature implements IProjectNature, IModuleConstants, ISynchronizerExtender {
-	
-    public static final String VALIDATION_BUILDER_ID = ValidationPlugin.VALIDATION_BUILDER_ID;
-    private ModuleStructuralModel cachedWriteHandle;
-    private ModuleStructuralModel cachedReadHandle;
-	/**
-	 * <p>
-	 * Find and return the ModuleCoreNature of aProject, if available.
-	 * <p>
-	 * <b>This method may return null. </b>
-	 * </p>
-	 * 
-	 * @param aProject
-	 *            An accessible project
-	 * @return The ModuleCoreNature of aProject, if it exists
-	 */
-	public static ModuleCoreNature getModuleCoreNature(IProject aProject) {
-		try {
-			if (aProject != null && aProject.isAccessible())
-				return (ModuleCoreNature) aProject.getNature(IModuleConstants.MODULE_NATURE_ID);
-		} catch (CoreException e) {
-			//Ignore
-		}
-		return null;
-	}
-	// The existence of this Nature plus the component file on disk makes a flexible project
-	public static boolean isFlexibleProject(IProject project) {
-		boolean foundNature = ModuleCoreNature.getModuleCoreNature(project) != null;
-		if (foundNature) {
-			return componentResourceExists(project);
-		}
-		return false;
-	}
-	public static boolean componentResourceExists(IProject project) {
-		
-		IFile compFile = project.getFile(StructureEdit.MODULE_META_FILE_NAME);
-		if (compFile.isAccessible())
-			return true;
-		else { //Need to check for legacy file locations also....
-			compFile = project.getFile(ModuleStructuralModel.R1_MODULE_META_FILE_NAME);
-			if (compFile.isAccessible())
-				return true;
-			else {
-				compFile = project.getFile(ModuleStructuralModel.R0_7_MODULE_META_FILE_NAME);
-				if (compFile.isAccessible())
-					return true;
-				else {
-					compFile = project.getFile(WTPModulesResourceFactory.FIRST_WTP_MODULES_SHORT_NAME);
-					return compFile.isAccessible();
-				}
-			}
-		}
-	}
-
-	/**
-	 * <p>
-	 * Adds a ModuleCoreNature to the project.
-	 * </p>
-	 * <p>
-	 * <b>This method may return null. </b>
-	 * </p>
-	 * 
-	 * @param aProject
-	 *            A accessible project.
-	 * @param aMonitor
-	 *            A progress monitor to track the time to completion
-	 * @return The ModuleCoreNature of aProject, if it exists
-	 */
-	public static ModuleCoreNature addModuleCoreNatureIfNecessary(final IProject aProject, IProgressMonitor aMonitor) {
-		try {
-			if (aProject.hasNature(IModuleConstants.MODULE_NATURE_ID))
-				return getModuleCoreNature(aProject);
-
-			IJobManager manager = Platform.getJobManager();
-			IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();	
-			if (aMonitor != null)
-				aMonitor.beginTask("Add ModuleCore Nature", 5); //$NON-NLS-1$
-			manager.beginRule(root, aMonitor);
-			try {
-				IProjectDescription description = aProject.getDescription();
-				String[] currentNatureIds = description.getNatureIds();
-				String[] newNatureIds = new String[currentNatureIds.length + 1];
-				System.arraycopy(currentNatureIds, 0, newNatureIds, 0, currentNatureIds.length);
-				newNatureIds[currentNatureIds.length] = IModuleConstants.MODULE_NATURE_ID;
-				description.setNatureIds(newNatureIds);
-				aProject.setDescription(description, aMonitor);
-			} catch (CoreException e) {
-				e.printStackTrace(); 				
-			} finally {
-				manager.endRule(root);
-			} 			
-			if (aMonitor != null)
-				aMonitor.done();
-		} catch (CoreException e) {
-			e.printStackTrace();
-		}
-		/* Return the new nature */
-		return getModuleCoreNature(aProject);
-	}
-
-	/**
-	 * <p>
-	 * Return a {@see ModuleStructuralModel}&nbsp;for read-only access.
-	 * </p>
-	 * <p>
-	 * Clients are encouraged to use {@see ModuleCore#getModuleCoreForRead(IProject)}&nbsp;to work
-	 * with the Module Structural Metamodels of flexible projects.
-	 * </p>
-	 * <p>
-	 * See the discussion what a {@see ModuleStructuralModel}&nbsp; is and <a
-	 * href="#module-structural-model">how it relates to the Module Structural Metamodel </a>.
-	 * </p>
-	 * <p>
-	 * Also see the discussion of <a href="#accessor-key">the purpose of an accessor key </a>.
-	 * </p>
-	 * 
-	 * @param anAccessorKey
-	 *            Typically client supplies the object that invoked this method, or a proxy (
-	 *            <code>new Object()</code>) in the case of other static methods requesting a
-	 *            {@see ModuleStructuralModel}.
-	 * @return A {@see ModuleStructuralModel}for the project of the current nature.
-	 */
-	public ModuleStructuralModel getModuleStructuralModelForRead(Object anAccessorKey) {
-		// Return self managed edit model - will always cache locally
-		ModuleStructuralModel editModel = (ModuleStructuralModel)getEmfContext().getExistingEditModel(ModuleStructuralModelFactory.MODULE_STRUCTURAL_MODEL_ID, null,true);
-		if (editModel == null) {
-			editModel = (ModuleStructuralModel)EditModelRegistry.getInstance().createEditModelForRead(ModuleStructuralModelFactory.MODULE_STRUCTURAL_MODEL_ID, getEmfContext(), null);
-			synchronized (editModel) {
-				getEmfContext().cacheEditModel(editModel, null);
-				editModel.access(anAccessorKey);
-			}
-		} else {
-			synchronized (editModel) {
-				editModel.access(anAccessorKey);
-			}
-		}
-		return editModel;
-	}
-
-	/**
-	 * <p>
-	 * Return a {@see ModuleStructuralModel}&nbsp;for write access.
-	 * </p>
-	 * <p>
-	 * Clients are encouraged to use {@see ModuleCore#getModuleCoreForWrite(IProject)}&nbsp;to work
-	 * with the Module Structural Metamodels of flexible projects.
-	 * </p>
-	 * <p>
-	 * See the discussion what a {@see ModuleStructuralModel}&nbsp; is and <a
-	 * href="#module-structural-model">how it relates to the Module Structural Metamodel </a>.
-	 * </p>
-	 * <p>
-	 * Also see the discussion of <a href="#accessor-key">the purpose of an accessor key </a>.
-	 * </p>
-	 * 
-	 * @param anAccessorKey
-	 *            Typically client supplies the object that invoked this method, or a proxy (
-	 *            <code>new Object()</code>) in the case of other static methods requesting a
-	 *            {@see ModuleStructuralModel}.
-	 * @return A {@see ModuleStructuralModel}for the project of the current nature.
-	 */
-	public ModuleStructuralModel getModuleStructuralModelForWrite(Object anAccessorKey) {
-		// Return self managed edit model - will always cache locally
-		ModuleStructuralModel editModel = (ModuleStructuralModel)getEmfContext().getExistingEditModel(ModuleStructuralModelFactory.MODULE_STRUCTURAL_MODEL_ID, null,false);
-		if (editModel == null) {
-			editModel = (ModuleStructuralModel)EditModelRegistry.getInstance().createEditModelForWrite(ModuleStructuralModelFactory.MODULE_STRUCTURAL_MODEL_ID, getEmfContext(), null);
-			synchronized (editModel) {
-				getEmfContext().cacheEditModel(editModel, null);
-				editModel.access(anAccessorKey);
-			}
-		} else {
-			synchronized (editModel) {
-				editModel.access(anAccessorKey);
-			}
-		}
-		return editModel;
-	}
-
-	/**
-	 * <p>
-	 * Returns an {@see ArtifactEditModel}&nbsp; to work with the underlying content of an
-	 * individual {@see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent}&nbsp; contained in the project. {@see ArtifactEditModel}s
-	 * are used to manipulate the content models for individual {@see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent}s. In
-	 * general, a content model will contain an EMF representation of the module's relevant
-	 * deployment descriptor, and possibly other EMF resources as well.
-	 * </p>
-	 * <p>
-	 * {@see ArtifactEditModel}s that are returned from this method may not be used to modify and
-	 * persist changes to the underlying Module Content Metamodel. Clients that need to make changes
-	 * to the underlying Module Content Module, and that choose to work directly with the
-	 * {@see ArtifactEditModel}&nbsp; should use {@see #getArtifactEditModelForWrite(URI, Object)}.
-	 * </p>
-	 * <p>
-	 * Clients are encouraged to use {@see ArtifactEdit}&nbsp;or one of its relevant subclasses to
-	 * work with the module content model, instead of working with directly with the EditModel:
-	 * </p>
-	 * <p>
-	 * <code>ArtifactEdit editFacade = ArtifactEdit.getArtifactEditForRead(aWorkbenchModule);</code>
-	 * </p>
-	 * <p>
-	 * When a client is aware of the underlying type of module, more specific Edit Facades may be
-	 * acquired:
-	 * </p>
-	 * <p>
-	 * <code>WebEdit editFacade = WebEdit.getWebEditForRead(aWorkbenchModule);</code>
-	 * </p>
-	 * <p>
-	 * If a particular Edit Facade is not applicable to the supplied {@see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent}, then
-	 * <b>null </b> will be returned.
-	 * </p>
-	 * 
-	 * <p>
-	 * See the discussion what a {@see ArtifactEditModel}&nbsp; is and <a
-	 * href="#artifact-editmodel">how it relates to the Module Content Metamodel </a>.
-	 * </p>
-	 * <p>
-	 * Also see the discussion of <a href="#accessor-key">the purpose of an accessor key </a>.
-	 * </p>
-	 * 
-	 * @param aModuleURI
-	 *            A fully qualified URI of the form "module:/resource/ <project-name>/
-	 *            <module-deployed-name>"
-	 * @param anAccessorKey
-	 *            Typically client supplies the object that invoked this method, or a proxy (
-	 *            <code>new Object()</code>) in the case of other static methods requesting a
-	 *            {@see ModuleStructuralModel}.
-	 * @return
-	 * @see ArtifactEdit
-	 * @see ArtifactEdit#getArtifactEditForRead(org.eclipse.wst.common.componentcore.internal.WorkbenchComponent)
-	 */
-	public ArtifactEditModel getArtifactEditModelForRead(URI aModuleURI, Object anAccessorKey) {
-		return getArtifactEditModelForRead(aModuleURI, anAccessorKey, null);
-	}
-	
-	/**
-	 * @param aModuleURI - used to lookup project
-	 * @param anAccessorKey - used to set client accessor
-	 * @param projectType - used to determine editmodel factory
-	 * @param params - passed for specialized processing in factory
-	 * @return ArtifactEditModel instance
-	 */
-	public ArtifactEditModel getArtifactEditModelForRead(URI aModuleURI, Object anAccessorKey, String projectType, Map params) {
-		
-		if (params == null)
-			params = new HashMap();
-		params.put(ArtifactEditModelFactory.PARAM_MODULE_URI, aModuleURI);
-		if (projectType !=null)
-			return (ArtifactEditModel) getEditModelForRead(projectType, anAccessorKey, params);
-		try {
-			IProject aProject = StructureEdit.getContainingProject(aModuleURI);
-			IFacetedProject facetedProject = ProjectFacetsManager.create(aProject);
-			if (facetedProject != null) {
-				String[] editModelIDs = EditModelRegistry.getInstance().getRegisteredEditModelIDs();
-				for (int i=0; i<editModelIDs.length; i++) {
-					try {
-						IProjectFacet facet = ProjectFacetsManager.getProjectFacet(editModelIDs[i]);
-						if (facet != null && facetedProject.hasProjectFacet(facet)) {
-							ArtifactEditModel editModel = (ArtifactEditModel) getEditModelForRead(editModelIDs[i], anAccessorKey, params);
-							if (editModel !=null)
-								return editModel;
-						}
-					} catch (IllegalArgumentException e) {
-						// Ignore exceptions that come from ProjectFacetsManager
-						continue;
-					} catch (Exception e) {
-						ModulecorePlugin.logError(Status.ERROR, ModuleCoreMessages.Acquiring_ArtifactEdit_For_Read_Exception, e);
-					}
-				}
-			}
-		} catch (Exception e){
-			ModulecorePlugin.logError(Status.ERROR, ModuleCoreMessages.Acquiring_ArtifactEdit_For_Read_Exception, e);
-		}
-		return null;
-	}
-	
-	public ArtifactEditModel getArtifactEditModelForRead(URI aModuleURI, Object anAccessorKey, String projectType) {
-		Map params = new HashMap();
-		return getArtifactEditModelForRead(aModuleURI, anAccessorKey, projectType, params);
-	}
-
-	/**
-	 * <p>
-	 * Returns an {@see ArtifactEditModel}&nbsp; to work with the underlying content of an
-	 * individual {@see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent}&nbsp; contained in the project. {@see ArtifactEditModel}s
-	 * are used to manipulate the content models for individual {@see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent}s. In
-	 * general, a content model will contain an EMF representation of the module's relevant
-	 * deployment descriptor, and possibly other EMF resources as well.
-	 * </p>
-	 * 
-	 * <p>
-	 * {@see ArtifactEditModel}s that are returned from this method may be used to modify and
-	 * persist changes to the underlying Module Content Metamodel. For clients that do not expect to
-	 * make modifications are encouraged to use {@see #getArtifactEditModelForRead(URI, Object)}
-	 * &nbsp; instead.
-	 * </p>
-	 * <p>
-	 * Clients are encouraged to use {@see ArtifactEdit}&nbsp;or one of its relevant subclasses to
-	 * work with the module content model, instead of working with directly with the EditModel:
-	 * </p>
-	 * <p>
-	 * <code>ArtifactEdit editFacade = ArtifactEdit.getArtifactEditForWrite(aWorkbenchModule);</code>
-	 * </p>
-	 * <p>
-	 * When a client is aware of the underlying type of module, more specific Edit Facades may be
-	 * acquired:
-	 * </p>
-	 * <p>
-	 * <code>WebEdit editFacade = WebEdit.getWebEditForWrite(aWorkbenchModule);</code>
-	 * </p>
-	 * <p>
-	 * If a particular Edit Facade is not applicable to the supplied {@see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent}, then
-	 * <b>null </b> will be returned.
-	 * </p>
-	 * 
-	 * <p>
-	 * See the discussion what a {@see ArtifactEditModel}&nbsp; is and <a
-	 * href="#artifact-editmodel">how it relates to the Module Content Metamodel </a>.
-	 * </p>
-	 * <p>
-	 * Also see the discussion of <a href="#accessor-key">the purpose of an accessor key </a>.
-	 * </p>
-	 * 
-	 * @param aModuleURI
-	 *            A fully qualified URI of the form "module:/resource/ <project-name>/
-	 *            <module-deployed-name>"
-	 * @param anAccessorKey
-	 *            Typically client supplies the object that invoked this method, or a proxy (
-	 *            <code>new Object()</code>) in the case of other static methods requesting a
-	 *            {@see ModuleStructuralModel}.
-	 * @return
-	 * @see ArtifactEdit
-	 * @see ArtifactEdit#getArtifactEditForRead(org.eclipse.wst.common.componentcore.internal.WorkbenchComponent)
-	 */
-	public ArtifactEditModel getArtifactEditModelForWrite(URI aModuleURI, Object anAccessorKey) {
-		return getArtifactEditModelForWrite(aModuleURI, anAccessorKey, null);
-	}
-	/**
-	 * @param aModuleURI - used to lookup project
-	 * @param anAccessorKey - used to set client accessor
-	 * @param projectType - used to determine editmodel factory
-	 * @param params - passed for specialized processing in factory
-	 * @return ArtifactEditModel instance
-	 */
-	public ArtifactEditModel getArtifactEditModelForWrite(URI aModuleURI, Object anAccessorKey, String projectType, Map params) {
-		
-		if (params == null)
-			params = new HashMap();
-		params.put(ArtifactEditModelFactory.PARAM_MODULE_URI, aModuleURI);
-		if (projectType != null)
-			return  (ArtifactEditModel) getEditModelForWrite(projectType, anAccessorKey, params);
-		try {
-			IProject aProject = StructureEdit.getContainingProject(aModuleURI);
-			IFacetedProject facetedProject = ProjectFacetsManager.create(aProject);
-			if (facetedProject != null) {
-				String[] editModelIDs = EditModelRegistry.getInstance().getRegisteredEditModelIDs();
-				for (int i=0; i<editModelIDs.length; i++) {
-					try {
-						IProjectFacet facet = ProjectFacetsManager.getProjectFacet(editModelIDs[i]);
-						if (facet != null && facetedProject.hasProjectFacet(facet)) {
-							ArtifactEditModel editModel = (ArtifactEditModel) getEditModelForWrite(editModelIDs[i], anAccessorKey, params);
-							if (editModel !=null)
-								return editModel;
-						}
-					} catch (IllegalArgumentException e) {
-						// Ignore exceptions that come from ProjectFacetsManager
-						continue;
-					} catch (Exception e) {
-						ModulecorePlugin.logError(Status.ERROR, ModuleCoreMessages.Acquiring_ArtifactEdit_For_Write_Exception, e);
-					}
-				}
-			}
-		} catch (Exception e){
-			ModulecorePlugin.logError(Status.ERROR, ModuleCoreMessages.Acquiring_ArtifactEdit_For_Write_Exception, e);
-		}
-		return null;
-	}
-	public ArtifactEditModel getArtifactEditModelForWrite(URI aModuleURI, Object anAccessorKey, String projectType) {
-		Map params = new HashMap();
-		return getArtifactEditModelForWrite(aModuleURI, anAccessorKey, projectType, params);
-	}
-
-	public String getNatureID() {
-		return MODULE_NATURE_ID;
-	}
-
-
-	/**
-	 * <p>
-	 * This method should not be invoked by clients.
-	 * </p>
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.IEMFContextContributor#primaryContributeToContext(org.eclipse.jem.util.emf.workbench.EMFWorkbenchContextBase)
-	 */
-	public void primaryContributeToContext(EMFWorkbenchContextBase aNature) {
-		if (emfContext == aNature)
-			return;
-		emfContext = aNature;
-		getEmfContext().setDefaultToMOF5Compatibility(true);
-		// Overriding superclass to use our own URI converter, which knows about binary projects
-		ProjectResourceSet projectResourceSet = aNature.getResourceSet();
-		projectResourceSet.setResourceFactoryRegistry(WTPResourceFactoryRegistry.INSTANCE);
-		projectResourceSet.setURIConverter(createURIConverter(getProject(), projectResourceSet));
-		
-		// initializeCacheEditModel();
-		// addAdapterFactories(set);
-		// set.getSynchronizer().addExtender(this); // added so we can be informed of closes to the
-		// new J2EEResourceDependencyRegister(set); // This must be done after the URIConverter is
-		projectResourceSet.getSynchronizer().addExtender(this); // added so we can be informed of closes
-		cacheModuleStructuralModels();
-	}
-	
-	/**
-	 * @see org.eclipse.jem.util.emf.workbench.nature.EMFNature.primConfigure
-	 */
-	protected void primConfigure() throws CoreException {
-		super.primConfigure();
-		// add Validation Builder to all flex Project's builder list
-		ProjectUtilities.addToBuildSpec(VALIDATION_BUILDER_ID,project);
-
-	}
-	
-	/**
-	 * @param project
-	 * @return
-	 */
-	private URIConverter createURIConverter(IProject aProject, ProjectResourceSet aResourceSet ) {
-		ComponentCoreURIConverter uriConverter = new ComponentCoreURIConverter(aProject, aResourceSet.getSynchronizer()); 
-		uriConverter.addInputContainer(getProject());
-		return uriConverter;
-	}
-	
-
-	/**
-	 * <p>
-	 * This method should not be invoked by clients.
-	 * </p>
-	 */
-	public ResourceSet getResourceSet() {
-		return getEmfContextBase().getResourceSet();
-	}
-
-	/**
-	 * <p>
-	 * This method should not be invoked by clients.
-	 * </p>
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.IEMFContextContributor#secondaryContributeToContext(org.eclipse.jem.util.emf.workbench.EMFWorkbenchContextBase)
-	 */
-	public void secondaryContributeToContext(EMFWorkbenchContextBase aNature) {
-		//Default
-	}
-
-	/**
-	 * <p>
-	 * This method should not be invoked by clients.
-	 * </p>
-	 * 
-	 * @see org.eclipse.jem.util.emf.workbench.nature.EMFNature#configure()
-	 */
-	public void configure() throws CoreException {
-		super.configure();
-		
-	}
-
-	private void cacheModuleStructuralModels() {
-		if (cachedWriteHandle == null)
-			cachedWriteHandle = getModuleStructuralModelForWrite(this);
-		if (cachedReadHandle == null)
-			cachedReadHandle = getModuleStructuralModelForRead(this);
-	}
-
-	protected String getPluginID() {
-		return MODULE_PLUG_IN_ID;
-	}
-
-	public EditModel getExistingEditModel(String artifactEditModelId,Map params, boolean isReadOnly) {
-		return getEmfContext().getExistingEditModel(artifactEditModelId,params,isReadOnly);
-	}
-
-	public void shutdown() {
-		super.shutdown();
-		if (cachedWriteHandle != null) {
-			if (cachedWriteHandle.isDirty())
-				cachedWriteHandle.saveIfNecessary(this);
-			cachedWriteHandle.dispose();
-			cachedWriteHandle = null;
-		}
-		if (cachedReadHandle != null) {
-			if (cachedReadHandle.isDirty())
-				cachedReadHandle.saveIfNecessary(this);
-			cachedReadHandle.dispose();
-			cachedReadHandle = null;
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.ISynchronizerExtender#projectChanged(org.eclipse.core.resources.IResourceDelta)
-	 */
-	public void projectChanged(IResourceDelta delta) {
-		if (delta.getKind() == IResourceDelta.OPEN) {
-			if (cachedWriteHandle == null)
-				cachedWriteHandle = getModuleStructuralModelForWrite(this);
-			if (cachedReadHandle == null)
-				cachedReadHandle = getModuleStructuralModelForRead(this);
-		}
-	
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emfworkbench.ISynchronizerExtender#projectClosed()
-	 */
-	public void projectClosed() {
-//		StringBuffer buffer = new StringBuffer("Disposing Module models for project: ");
-//		buffer.append(this.getProject());
-//		System.out.println(buffer.toString());
-		this.emfContext = null;
-		if (cachedWriteHandle != null) {
-			if (cachedWriteHandle.isDirty())
-				cachedWriteHandle.saveIfNecessary(this);
-			cachedWriteHandle.dispose();
-			cachedWriteHandle = null;
-		}
-		if (cachedReadHandle != null) {
-			cachedReadHandle.dispose();
-			cachedReadHandle = null;
-		}
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/UnresolveableURIException.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/UnresolveableURIException.java
deleted file mode 100644
index 3957c00..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/UnresolveableURIException.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore;
-
-import org.eclipse.emf.common.util.URI;
-
-/**
- * <p>
- * Thrown whenever a URI cannot be appropriately resolved.
- * </p>
- *  
- * @plannedfor 1.0
- */
-public class UnresolveableURIException extends Exception {
-
-	/**
-	 * 
-	 */
-	private static final long serialVersionUID = 1L;
-
-	public UnresolveableURIException(URI anUnresolveableURI) {
-		super("Could not resolve: " + anUnresolveableURI);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetDataModelConfigAdapter.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetDataModelConfigAdapter.java
deleted file mode 100644
index 431c7ee..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetDataModelConfigAdapter.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik - initial API and implementation
- ******************************************************************************/
-
-package org.eclipse.wst.common.componentcore.datamodel;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.project.facet.core.ActionConfig;
-import org.eclipse.wst.common.project.facet.core.IFacetedProjectWorkingCopy;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent;
-import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class FacetDataModelConfigAdapter
-
-    extends ActionConfig
-    
-{
-    private final IDataModel dm;
-    
-    public FacetDataModelConfigAdapter( final IDataModel dm )
-    {
-        this.dm = dm;
-    }
-    
-    public void setProjectFacetVersion( final IProjectFacetVersion fv )
-    {
-        dm.setProperty( IFacetDataModelProperties.FACET_VERSION, fv );
-    }
-    
-    public void setFacetedProjectWorkingCopy( final IFacetedProjectWorkingCopy fpjwc )
-    {
-        dm.setProperty( IFacetDataModelProperties.FACETED_PROJECT_WORKING_COPY, fpjwc );
-        
-        final IFacetedProjectListener nameChangeListener = new IFacetedProjectListener()
-        {
-            public void handleEvent( final IFacetedProjectEvent event )
-            {
-                dm.setStringProperty( IFacetDataModelProperties.FACET_PROJECT_NAME, fpjwc.getProjectName() );
-            }
-        };
-        
-        fpjwc.addListener( nameChangeListener, IFacetedProjectEvent.Type.PROJECT_NAME_CHANGED );
-        nameChangeListener.handleEvent( null );
-    }
-
-    public IStatus validate()
-    {
-        return dm.validate();
-    }
-
-    public static final class Factory
-    
-        implements IAdapterFactory
-        
-    {
-        private static final Class[] ADAPTER_TYPES = { ActionConfig.class };
-        
-        public Object getAdapter( final Object adaptable, 
-                                  final Class adapterType )
-        {
-            if( adapterType == ActionConfig.class )
-            {
-                return new FacetDataModelConfigAdapter( (IDataModel) adaptable );
-            }
-            else
-            {
-                return null;
-            }
-        }
-
-        public Class[] getAdapterList()
-        {
-            return ADAPTER_TYPES;
-        }
-    }
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetDataModelProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetDataModelProvider.java
deleted file mode 100644
index 59a3b2d..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetDataModelProvider.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel;
-
-import java.util.Set;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties;
-import org.eclipse.wst.common.componentcore.internal.operation.FacetDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelProvider;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation;
-import org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibleOperationImpl;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject.Action.Type;
-
-public class FacetDataModelProvider extends AbstractDataModelProvider implements IFacetDataModelProperties {
-
-	public static final String NOTIFICATION_OPERATION = "FacetDataModelProvider.NOTIFICATION_OPERATION"; //$NON-NLS-1$
-
-	public Set getPropertyNames() {
-		Set names = super.getPropertyNames();
-		names.add(FACETED_PROJECT_WORKING_COPY);
-		names.add(FACET_PROJECT_NAME);
-		names.add(FACET_ID);
-		names.add(FACET_VERSION_STR);
-		names.add(FACET_TYPE);
-		names.add(FACET_VERSION);
-		names.add(FACET_ACTION);
-		names.add(SHOULD_EXECUTE);
-		names.add(NOTIFICATION_OPERATION);
-		return names;
-	}
-
-	public Object getDefaultProperty(String propertyName) {
-		if (FACET_VERSION.equals(propertyName)) {
-			return ProjectFacetsManager.getProjectFacet(getStringProperty(FACET_ID)).getVersion(getStringProperty(FACET_VERSION_STR));
-		} else if (FACET_ACTION.equals(propertyName)) {
-			return new IFacetedProject.Action((Type) model.getProperty(FACET_TYPE), (IProjectFacetVersion) model.getProperty(FACET_VERSION), model);
-		} else if (SHOULD_EXECUTE.equals(propertyName)) {
-			return Boolean.TRUE;
-		} else if (NOTIFICATION_OPERATION.equals(propertyName)) {
-			return getFacetNotificationOperation();
-		}
-		return super.getDefaultProperty(propertyName);
-	}
-
-	public boolean propertySet(String propertyName, Object propertyValue) {
-		if (FACET_ACTION.equals(propertyName)) {
-			throw new RuntimeException();
-		}
-		return super.propertySet(propertyName, propertyValue);
-	}
-
-	public final IDataModelOperation getDefaultOperation() {
-		return new FacetDataModelOperation(model);
-	}
-
-	protected IDataModelOperation getFacetNotificationOperation() {
-		return new DataModelPausibleOperationImpl(new AbstractDataModelOperation(this.model) {
-			public String getID() {
-				return "FacetDataModelProvider.Notification." + model.getProperty(FACET_TYPE) + "." + model.getStringProperty(FACET_ID); //$NON-NLS-1$//$NON-NLS-2$ 
-			}
-
-			public org.eclipse.core.runtime.IStatus execute(IProgressMonitor monitor, org.eclipse.core.runtime.IAdaptable info) throws ExecutionException {
-				return AbstractDataModelProvider.OK_STATUS;
-			}
-		});
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetInstallDataModelProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetInstallDataModelProvider.java
deleted file mode 100644
index 5022348..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetInstallDataModelProvider.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel;
-
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
-import org.eclipse.wst.common.frameworks.datamodel.DataModelPropertyDescriptor;
-import org.eclipse.wst.common.project.facet.core.IActionConfigFactory;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-public class FacetInstallDataModelProvider extends FacetDataModelProvider implements IActionConfigFactory {
-
-	public static final String MASTER_PROJECT_DM = "FacetInstallDataModelProvider.MASTER_PROJECT_DM"; //$NON-NLS-1$
-	
-	public Set getPropertyNames() {
-		Set names = super.getPropertyNames();
-		names.add(MASTER_PROJECT_DM);
-		return names;
-	}
-	
-	public FacetInstallDataModelProvider() {
-		super();
-	}
-
-	public Object getDefaultProperty(String propertyName) {
-		if (FACET_TYPE.equals(propertyName)) {
-			return FACET_TYPE_INSTALL;
-		} else if (FACET_VERSION_STR.equals(propertyName)) {
-			IProjectFacetVersion version = (IProjectFacetVersion) getProperty(FACET_VERSION);
-			return version.getVersionString();
-		} else if (FACET_VERSION.equals(propertyName)) {
-			IProjectFacetVersion version = ProjectFacetsManager.getProjectFacet(getStringProperty(FACET_ID)).getDefaultVersion();
-			return version;
-		}
-		return super.getDefaultProperty(propertyName);
-	}
-
-	public boolean propertySet(String propertyName, Object propertyValue) {
-		if (FACET_TYPE.equals(propertyName)) {
-			throw new RuntimeException();
-		} else if (FACET_VERSION_STR.equals(propertyName)) {
-			DataModelPropertyDescriptor[] descriptors = getValidPropertyDescriptors(FACET_VERSION);
-			for (int i = 0; i < descriptors.length; i++) {
-				if (descriptors[i].getPropertyDescription().equals(propertyValue)) {
-					setProperty(FACET_VERSION, descriptors[i].getPropertyValue());
-					break;
-				}
-			}
-		} else if (null != propertyValue && FACET_VERSION.equals(propertyName)) {
-			IProjectFacetVersion version = (IProjectFacetVersion) propertyValue;
-			setProperty(FACET_VERSION_STR, version.getVersionString());
-		}
-		return super.propertySet(propertyName, propertyValue);
-	}
-
-	protected DataModelPropertyDescriptor[] cachedVersionDescriptors;
-	protected DataModelPropertyDescriptor[] cachedVersionStringDescriptors;
-
-	public DataModelPropertyDescriptor[] getValidPropertyDescriptors(String propertyName) {
-		if (FACET_VERSION.equals(propertyName)) {
-			if (null == cachedVersionDescriptors) {
-				Set versions = ProjectFacetsManager.getProjectFacet(getStringProperty(FACET_ID)).getVersions();
-				List list = Collections.list(Collections.enumeration(versions));
-				Collections.sort(list, new Comparator(){
-					public int compare(Object o1, Object o2) {
-						return ((IProjectFacetVersion)o1).getVersionString().compareTo(((IProjectFacetVersion)o2).getVersionString());
-					}
-				});
-				
-				cachedVersionDescriptors = new DataModelPropertyDescriptor[list.size()];
-				Iterator iterator = list.iterator();
-				for (int i = 0; i < cachedVersionDescriptors.length; i++) {
-					IProjectFacetVersion version = (IProjectFacetVersion) iterator.next();
-					cachedVersionDescriptors[i] = new DataModelPropertyDescriptor(version, version.getVersionString());
-				}
-			}
-			return cachedVersionDescriptors;
-		}
-		if (FACET_VERSION_STR.equals(propertyName)) {
-			if (null == cachedVersionStringDescriptors) {
-				DataModelPropertyDescriptor[] versionDescriptors = getValidPropertyDescriptors(FACET_VERSION);
-				cachedVersionStringDescriptors = new DataModelPropertyDescriptor[versionDescriptors.length];
-				for (int i = 0; i < cachedVersionStringDescriptors.length; i++) {
-					cachedVersionStringDescriptors[i] = new DataModelPropertyDescriptor(versionDescriptors[i].getPropertyDescription());
-				}
-			}
-			return cachedVersionStringDescriptors;
-		}
-		return super.getValidPropertyDescriptors(propertyName);
-	}
-
-	public Object create() {
-		return DataModelFactory.createDataModel(this);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetProjectCreationDataModelProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetProjectCreationDataModelProvider.java
deleted file mode 100644
index d8cb5d6..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/FacetProjectCreationDataModelProvider.java
+++ /dev/null
@@ -1,460 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetProjectCreationDataModelProperties;
-import org.eclipse.wst.common.componentcore.internal.operation.FacetProjectCreationOperation;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelProvider;
-import org.eclipse.wst.common.frameworks.datamodel.DataModelEvent;
-import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
-import org.eclipse.wst.common.frameworks.datamodel.DataModelPropertyDescriptor;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelListener;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation;
-import org.eclipse.wst.common.frameworks.internal.operations.IProjectCreationPropertiesNew;
-import org.eclipse.wst.common.frameworks.internal.operations.ProjectCreationDataModelProviderNew;
-import org.eclipse.wst.common.frameworks.internal.plugin.WTPCommonMessages;
-import org.eclipse.wst.common.frameworks.internal.plugin.WTPCommonPlugin;
-import org.eclipse.wst.common.project.facet.core.FacetedProjectFramework;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IFacetedProjectWorkingCopy;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject.Action;
-import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent;
-import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntime;
-import org.eclipse.wst.common.project.facet.core.runtime.RuntimeManager;
-
-public class FacetProjectCreationDataModelProvider extends AbstractDataModelProvider implements IFacetProjectCreationDataModelProperties {
-
-	/**
-	 * Type java.util.Collection. This is a smallest Collection of
-	 * IProjectFacets that are absolutely required by this project type. This
-	 * Collection will be used to filter runtimes. This property is not meant to
-	 * be exposed to clients. Subclasses should initialize this Collection in
-	 * their init() methods
-	 */
-	public static final String REQUIRED_FACETS_COLLECTION = "FacetProjectCreationDataModelProvider.REQUIRED_FACETS_COLLECTION";
-	
-	public static final String FORCE_VERSION_COMPLIANCE = "FacetProjectCreationDataModelProvider.FORCE_VERSION_COMPLIANCE";
-	
-	public FacetProjectCreationDataModelProvider() {
-		super();
-	}
-
-	public Set getPropertyNames() {
-		Set names = super.getPropertyNames();
-		names.add(FACETED_PROJECT_WORKING_COPY);
-		names.add(FACET_PROJECT_NAME);
-		names.add(FACET_DM_MAP);
-		names.add(FACET_ACTION_MAP);
-		names.add(FACET_RUNTIME);
-		names.add(REQUIRED_FACETS_COLLECTION);
-		names.add(FORCE_VERSION_COMPLIANCE);
-		return names;
-	}
-
-	public void init() {
-		super.init();
-		
-		final IFacetedProjectWorkingCopy fpjwc = FacetedProjectFramework.createNewProject();
-		model.setProperty(FACETED_PROJECT_WORKING_COPY, fpjwc);
-		
-		fpjwc.addListener
-		(
-		    new IFacetedProjectListener()
-		    {
-                public void handleEvent( final IFacetedProjectEvent event )
-                {
-                    for( IFacetedProject.Action action : fpjwc.getProjectFacetActions() )
-                    {
-                        final Object config = action.getConfig();
-                        
-                        if( config != null && config instanceof IDataModel )
-                        {
-                            final IDataModel dm = (IDataModel) config;
-                            
-                            if( dm.getAllProperties().contains( FacetInstallDataModelProvider.MASTER_PROJECT_DM ) )
-                            {
-                                dm.setProperty( FacetInstallDataModelProvider.MASTER_PROJECT_DM, model );
-                            }
-                        }
-                    }
-                }
-		    },
-		    IFacetedProjectEvent.Type.PROJECT_FACETS_CHANGED
-		);
-
-        fpjwc.addListener
-        (
-            new IFacetedProjectListener()
-            {
-                public void handleEvent( final IFacetedProjectEvent event )
-                {
-                    model.notifyPropertyChange(FACET_RUNTIME, IDataModel.VALID_VALUES_CHG);
-                }
-            },
-            IFacetedProjectEvent.Type.AVAILABLE_RUNTIMES_CHANGED
-        );
-		
-		IDataModel projectDataModel = DataModelFactory.createDataModel(new ProjectCreationDataModelProviderNew());
-		projectDataModel.addListener(new IDataModelListener() {
-			public void propertyChanged(DataModelEvent event) 
-			{
-			    final String prop = event.getPropertyName();
-			    
-                if( event.getFlag() == IDataModel.VALUE_CHG &&
-                    prop.equals( IProjectCreationPropertiesNew.PROJECT_NAME ) )
-                {
-                    final String projectName = (String) event.getProperty();
-					getDataModel().setProperty(FACET_PROJECT_NAME, projectName);
-					fpjwc.setProjectName( projectName );
-				}
-                else if( prop.equals( IProjectCreationPropertiesNew.PROJECT_LOCATION ) )
-                {
-                    final String location = (String) event.getProperty();
-                    fpjwc.setProjectLocation( location == null ? null : new Path( location ) );
-                }
-			}
-		});
-		model.addNestedModel(NESTED_PROJECT_DM, projectDataModel);
-	}
-
-	protected class FacetActionMapImpl extends HashMap implements FacetActionMap {
-		private static final long serialVersionUID = 1L;
-		private boolean supressNotification = false;
-
-		public void add(Action action) {
-			put(action.getProjectFacetVersion().getProjectFacet().getId(), action);
-		}
-
-		public Action getAction(String facetID) {
-			return (Action) get(facetID);
-		}
-
-		public void clear() {
-			try {
-				supressNotification = true;
-				super.clear();
-			} finally {
-				supressNotification = false;
-				getDataModel().notifyPropertyChange(FACET_ACTION_MAP, IDataModel.VALUE_CHG);
-			}
-		}
-
-		public Object remove(Object key) {
-			try {
-				return super.remove(key);
-			} finally {
-				if (!supressNotification) {
-					getDataModel().notifyPropertyChange(FACET_ACTION_MAP, IDataModel.VALUE_CHG);
-				}
-			}
-		}
-
-		public Object put(Object key, Object value) {
-			try {
-				return super.put(key, value);
-			} finally {
-				if (!supressNotification) {
-					getDataModel().notifyPropertyChange(FACET_ACTION_MAP, IDataModel.VALUE_CHG);
-				}
-			}
-		}
-
-		public void putAll(Map m) {
-			try {
-				supressNotification = true;
-				super.putAll(m);
-			} finally {
-				supressNotification = false;
-				getDataModel().notifyPropertyChange(FACET_ACTION_MAP, IDataModel.VALUE_CHG);
-			}
-		}
-	}
-
-	protected class FacetDataModelMapImpl extends HashMap implements FacetDataModelMap, IDataModelListener {
-		private static final long serialVersionUID = 1L;
-		private boolean supressNotification = false;
-
-		public void add(IDataModel facetDataModel) {
-			put(facetDataModel.getProperty(IFacetDataModelProperties.FACET_ID), facetDataModel);
-		}
-
-		public IDataModel getFacetDataModel(String facetID) {
-			return (IDataModel) get(facetID);
-		}
-
-		public void clear() {
-			try {
-				supressNotification = true;
-				for (Iterator iterator = values().iterator(); iterator.hasNext();) {
-					((IDataModel) iterator.next()).removeListener(this);
-				}
-				super.clear();
-			} finally {
-				supressNotification = false;
-				getDataModel().notifyPropertyChange(FACET_DM_MAP, IDataModel.VALUE_CHG);
-			}
-		}
-
-		public Object put(Object key, Object value) {
-			try {
-				IDataModel dm = (IDataModel) value;
-				Object lastValue = super.put(key, value);
-				if (lastValue != null) {
-					((IDataModel) lastValue).removeListener(this);
-					((IDataModel) lastValue).setProperty(FacetInstallDataModelProvider.MASTER_PROJECT_DM, null);
-				}
-				dm.setProperty(FACET_PROJECT_NAME, getDataModel().getProperty(FACET_PROJECT_NAME));
-				dm.setProperty(FacetInstallDataModelProvider.MASTER_PROJECT_DM, FacetProjectCreationDataModelProvider.this.model);
-				dm.addListener(this);
-				return lastValue;
-			} finally {
-				if (!supressNotification) {
-					getDataModel().notifyPropertyChange(FACET_DM_MAP, IDataModel.VALUE_CHG);
-				}
-			}
-		}
-
-		public void putAll(Map m) {
-			try {
-				supressNotification = true;
-				super.putAll(m);
-			} finally {
-				supressNotification = false;
-				getDataModel().notifyPropertyChange(FACET_DM_MAP, IDataModel.VALUE_CHG);
-			}
-		}
-
-		public Object remove(Object key) {
-			try {
-				IDataModel dm = (IDataModel) super.remove(key);
-				dm.removeListener(this);
-				return dm;
-			} finally {
-				if (!supressNotification) {
-					getDataModel().notifyPropertyChange(FACET_DM_MAP, IDataModel.VALUE_CHG);
-				}
-			}
-		}
-
-		public void propertyChanged(DataModelEvent event) {
-			if (event.getPropertyName().equals(FACET_PROJECT_NAME)) {
-				if (containsValue(event.getDataModel())) {
-					getDataModel().setProperty(FACET_PROJECT_NAME, event.getProperty());
-				} else {
-					event.getDataModel().removeListener(this);
-				}
-			} else if (event.getPropertyName().equals(FACET_RUNTIME)) {
-				if (containsValue(event.getDataModel())) {
-					if (event.getFlag() == IDataModel.VALID_VALUES_CHG) {
-						getDataModel().notifyPropertyChange(FACET_RUNTIME, IDataModel.VALID_VALUES_CHG);
-					} else if(event.getFlag() == IDataModel.ENABLE_CHG) {
-						getDataModel().notifyPropertyChange(FACET_RUNTIME, IDataModel.ENABLE_CHG);
-					} else {
-						getDataModel().setProperty(FACET_RUNTIME, event.getProperty());
-					}
-				} else {
-					event.getDataModel().removeListener(this);
-				}
-			}
-		}
-
-	}
-
-	public boolean propertySet(String propertyName, Object propertyValue) {
-		if (FACET_PROJECT_NAME.equals(propertyName)) {
-			for (Iterator iterator = ((Map) getDataModel().getProperty(FACET_DM_MAP)).values().iterator(); iterator.hasNext();) {
-				((IDataModel) iterator.next()).setProperty(FACET_PROJECT_NAME, propertyValue);
-			}
-			IDataModel projModel = model.getNestedModel(NESTED_PROJECT_DM);
-			projModel.setProperty(IProjectCreationPropertiesNew.PROJECT_NAME, propertyValue);
-		} else if (FACET_RUNTIME.equals(propertyName)) {
-			IRuntime runtime = (IRuntime) propertyValue;
-			for (Iterator iterator = ((Map) getDataModel().getProperty(FACET_DM_MAP)).values().iterator(); iterator.hasNext();) {
-				IDataModel dm = (IDataModel) iterator.next();
-				if (dm.isProperty(FACET_RUNTIME)) {
-					dm.setProperty(FACET_RUNTIME, runtime);
-				}
-			}
-			if (runtime != null) {
-				if(getBooleanProperty(FORCE_VERSION_COMPLIANCE)){
-					Map facetDMs = (Map) getProperty(FACET_DM_MAP);
-	
-					for (Iterator iterator = facetDMs.values().iterator(); iterator.hasNext();) {
-						IDataModel facetDataModel = (IDataModel) iterator.next();
-						IProjectFacet facet = ProjectFacetsManager.getProjectFacet((String) facetDataModel.getProperty(IFacetDataModelProperties.FACET_ID));
-	
-						try {
-							IDataModel facetModel = ((FacetDataModelMap) facetDMs).getFacetDataModel(facet.getId());
-							IProjectFacetVersion oldVersion = (IProjectFacetVersion) facetModel.getProperty(IFacetDataModelProperties.FACET_VERSION);
-							IProjectFacetVersion newVersion = facet.getLatestSupportedVersion(runtime);
-							if (newVersion != null && (oldVersion == null || oldVersion.getVersionString().compareTo(newVersion.getVersionString()) > 0 || !runtime.supports(oldVersion))) {
-								facetModel.setProperty(IFacetDataModelProperties.FACET_VERSION, newVersion);
-							}
-						} catch (CoreException e) {
-							Logger.getLogger().logError(e);
-						}
-					}
-				}
-			}
-		}
-		else if( REQUIRED_FACETS_COLLECTION.equals(propertyName) )
-		{
-		    final IFacetedProjectWorkingCopy fpjwc 
-		        = (IFacetedProjectWorkingCopy) this.model.getProperty( FACETED_PROJECT_WORKING_COPY );
-		    
-	        final Collection<IProjectFacet> fixedFacets = (Collection<IProjectFacet>) propertyValue;
-	        
-	        fpjwc.setFixedProjectFacets( new HashSet<IProjectFacet>( fixedFacets ) );
-	        
-	        final FacetDataModelMap facetDmMap = (FacetDataModelMap) getProperty( FACET_DM_MAP );
-	        
-	        for( IProjectFacet facet : fixedFacets )
-	        {
-	            final IFacetedProject.Action action = fpjwc.getProjectFacetAction( facet );
-	            Object config = action.getConfig();
-	            
-	            if( ! ( config instanceof IDataModel ) )
-	            {
-	                config = Platform.getAdapterManager().getAdapter( config, IDataModel.class );
-	            }
-	            
-	            facetDmMap.add( (IDataModel) config );
-	        }
-		}
-		return super.propertySet(propertyName, propertyValue);
-	}
-
-	public Object getDefaultProperty(String propertyName) {
-		if (FACET_DM_MAP.equals(propertyName)) {
-			Object obj = new FacetDataModelMapImpl();
-			setProperty(FACET_DM_MAP, obj);
-			return obj;
-		} else if (FACET_ACTION_MAP.equals(propertyName)) {
-			Object obj = new FacetActionMapImpl();
-			setProperty(FACET_ACTION_MAP, obj);
-			return obj;
-		} else if(REQUIRED_FACETS_COLLECTION.equals(propertyName)){
-			Collection c = new ArrayList();
-			setProperty(REQUIRED_FACETS_COLLECTION, c);
-			return c;
-		} else if(FORCE_VERSION_COMPLIANCE.equals(propertyName)){
-			return Boolean.TRUE;
-		}
-		return super.getDefaultProperty(propertyName);
-	}
-
-	public DataModelPropertyDescriptor getPropertyDescriptor(String propertyName) {
-		if (FACET_RUNTIME.equals(propertyName)) {
-			IRuntime runtime = (IRuntime) getProperty(propertyName);
-			if (null != runtime) {
-				return new DataModelPropertyDescriptor(runtime, runtime.getLocalizedName());
-			}
-			return new DataModelPropertyDescriptor(null, WTPCommonPlugin.getResourceString(WTPCommonMessages.RUNTIME_NONE, null));
-		}
-		return super.getPropertyDescriptor(propertyName);
-	}
-
-	public DataModelPropertyDescriptor[] getValidPropertyDescriptors(String propertyName) {
-		if (FACET_RUNTIME.equals(propertyName)) 
-		{
-            final IFacetedProjectWorkingCopy fpjwc 
-                = (IFacetedProjectWorkingCopy) this.model.getProperty( FACETED_PROJECT_WORKING_COPY );
-            
-            final Set<IProjectFacet> fixedFacets = fpjwc.getFixedProjectFacets();
-            final ArrayList list = new ArrayList();
-
-            for( IRuntime rt : RuntimeManager.getRuntimes() ) 
-            {
-                // add this runtime in the list only if it supports all of the required facets
-
-                boolean supports = true;
-                
-                for( IProjectFacet facet : fixedFacets )
-                {
-                    if( ! rt.supports( facet ) )
-                    {
-                        supports = false;
-                        break;
-                    }
-                }
-                
-                if( supports ) 
-                {
-                    list.add(rt);
-                }
-            }
-
-            DataModelPropertyDescriptor[] descriptors = new DataModelPropertyDescriptor[list.size() + 1];
-			Iterator iterator = list.iterator();
-			for (int i = 0; i < descriptors.length - 1; i++) {
-				IRuntime runtime = (IRuntime) iterator.next();
-				descriptors[i] = new DataModelPropertyDescriptor(runtime, runtime.getLocalizedName());
-			}
-			if(descriptors.length > 2){
-				Arrays.sort(descriptors, 0, descriptors.length - 2, new Comparator() {
-					public int compare(Object arg0, Object arg1) {
-						DataModelPropertyDescriptor d1 = (DataModelPropertyDescriptor)arg0;
-						DataModelPropertyDescriptor d2 = (DataModelPropertyDescriptor)arg1;
-						return d1.getPropertyDescription().compareTo(d2.getPropertyDescription());
-					}
-				});
-			}
-			
-			descriptors[descriptors.length - 1] = new DataModelPropertyDescriptor(null, WTPCommonPlugin.getResourceString(WTPCommonMessages.RUNTIME_NONE, null));
-			return descriptors;
-		}
-		return super.getValidPropertyDescriptors(propertyName);
-	}
-
-	public IStatus validate(String propertyName) 
-	{
-		if (FACET_PROJECT_NAME.equals(propertyName)) 
-		{
-			IDataModel projModel = model.getNestedModel(NESTED_PROJECT_DM);
-			return projModel.validateProperty(IProjectCreationPropertiesNew.PROJECT_NAME);
-		}
-		else if( propertyName.equals( FACETED_PROJECT_WORKING_COPY ) )
-		{
-            final IFacetedProjectWorkingCopy fpjwc 
-                = (IFacetedProjectWorkingCopy) this.model.getProperty( FACETED_PROJECT_WORKING_COPY );
-            
-            return fpjwc.validate();
-		}
-		
-		return super.validate(propertyName);
-	}
-
-	public IDataModelOperation getDefaultOperation() {
-		return new FacetProjectCreationOperation(model);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/ProjectMigratorDataModelProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/ProjectMigratorDataModelProvider.java
deleted file mode 100644
index 21c3ca3..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/ProjectMigratorDataModelProvider.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel;
-
-import java.util.Set;
-
-import org.eclipse.wst.common.componentcore.datamodel.properties.IProjectMigratorDataModelProperties;
-import org.eclipse.wst.common.componentcore.internal.operation.ProjectMigratorDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelProvider;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation;
-
-public class ProjectMigratorDataModelProvider extends AbstractDataModelProvider implements IProjectMigratorDataModelProperties {
-
-	public Set getPropertyNames() {
-		Set names = super.getPropertyNames();
-		names.add(PROJECT_NAME);
-		return names;
-	}
-
-	public final IDataModelOperation getDefaultOperation() {
-		return new ProjectMigratorDataModelOperation(model);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IComponentCreationDataModelProperties.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IComponentCreationDataModelProperties.java
deleted file mode 100644
index c8dcf56..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IComponentCreationDataModelProperties.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel.properties;
-
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelProperties;
-import org.eclipse.wst.common.frameworks.internal.DoNotUseMeThisWillBeDeletedPost15;
-
-/**
- * <p>
- * IComponentCreationDataModelProperties provides properties to the DataModel associated with the
- * ComponentCreationDataModelProvider as well as all extending interfaces extending
- * IComponentCreationDataModelProperties specifically, but not limited to all J2EE component related
- * creation.
- * 
- * @see org.eclipse.wst.common.componentcore.internal.operation.ComponentCreationDataModelProvider
- *      </p>
- *      <p>
- *      This interface is not intended to be implemented by clients.
- *      </p>
- * 
- * @see org.eclipse.wst.common.frameworks.datamodel.IDataModelProvider
- * @see org.eclipse.wst.common.frameworks.datamodel.DataModelFactory
- * @see org.eclipse.wst.common.frameworks.datamodel.IDataModelProperties
- * 
- * @plannedfor 1.0
- */
-/**
- * This has been slated for removal post WTP 1.5. Do not use this class/interface
- * 
- * @deprecated
- * 
- * @see IConnectorFacetInstallDataModelProperties
- */
-public interface IComponentCreationDataModelProperties extends IDataModelProperties, DoNotUseMeThisWillBeDeletedPost15 {
-
-	/**
-	 * Required, type String. The user defined name of the target project for the component to be
-	 * created.
-	 */
-	public static final String PROJECT_NAME = "IComponentCreationDataModelProperties.PROJECT_NAME"; //$NON-NLS-1$
-	/**
-	 * Required, type String. The user defined name of the component to be created.
-	 */
-	public static final String COMPONENT_NAME = "IComponentCreationDataModelProperties.COMPONENT_NAME"; //$NON-NLS-1$
-	/**
-	 * Required, type String. The user defined location on disk of the target project for the
-	 * component to be created. Defaulted to default eclipse workspace location
-	 */
-	public static final String LOCATION = "IFlexibleProjectCreationDataModelProperties.LOCATION"; //$NON-NLS-1$
-
-
-	/**
-	 * Required, type String. The user defined deploy name of the component to be created. The
-	 * DataModelProvider will default the name to the COMPONENT_NAME.
-	 */
-	public static final String COMPONENT_DEPLOY_NAME = "IComponentCreationDataModelProperties.COMPONENT_DEPLOY_NAME"; //$NON-NLS-1$
-	/**
-	 * Required, type String. Nested operation to create a new project.
-	 */
-	public static final String NESTED_PROJECT_CREATION_DM = "IComponentCreationDataModelProperties.NESTED_PROJECT_CREATION_DM"; //$NON-NLS-1$
-	// TODO delete this
-	/**
-	 * Optional, type Boolean The default value is <code>Boolean.TRUE</code>. If this property is
-	 * set to <code>Boolean.TRUE</code> then a default deployment descriptor and supporting
-	 * bindings files will be generated.
-	 */
-	public static final String CREATE_DEFAULT_FILES = "IComponentCreationDataModelProperties.CREATE_DEFAULT_FILES"; //$NON-NLS-1$
-
-	/**
-	 * An unsettable result property used to retreive the created virtual component after the
-	 * operation has executed.
-	 */
-	public static final String COMPONENT = "IComponentCreationDataModelProperties.COMPONENT"; //$NON-NLS-1$
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/ICreateReferenceComponentsDataModelProperties.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/ICreateReferenceComponentsDataModelProperties.java
deleted file mode 100644
index 0dec083..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/ICreateReferenceComponentsDataModelProperties.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel.properties;
-
-public interface ICreateReferenceComponentsDataModelProperties {
-
-	/**
-	 * <p>
-	 * This required property is the {@link org.eclipse.wst.common.componentcore.resources.IVirtualComponent} which will reference the
-	 * {@link org.eclipse.wst.common.componentcore.resources.IVirtualComponent}s specified by {@link #TARGET_COMPONENT_LIST}.
-	 * </p>
-	 * <p>
-	 * For example, if {@link org.eclipse.wst.common.componentcore.resources.IVirtualComponent}s A, B, and C exist and references are required
-	 * from A to B and A to C, then {@link #SOURCE_COMPONENT} should be set to A, and
-	 * {@link #TARGET_COMPONENT_LIST} should be set to a {@link java.util.List} containing B and C.
-	 * </p>
-	 */
-	public static final String SOURCE_COMPONENT = "ICreateReferenceComponentsDataModelProperties.SOURCE_COMPONENT"; //$NON-NLS-1$
-
-	/**
-	 * <p>
-	 * This required property is the {@link java.util.List} containing the {@link org.eclipse.wst.common.componentcore.resources.IVirtualComponent}s that
-	 * will be referenced from the {@link org.eclipse.wst.common.componentcore.resources.IVirtualComponent} specified by {@link #SOURCE_COMPONENT}.
-	 * </p>
-	 */
-	public static final String TARGET_COMPONENT_LIST = "ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT"; //$NON-NLS-1$
-
-	/**
-	 * Optional, deploy path for the dependent component, default is "/"
-	 * Note: this is the default for the entire archive.  See {@link #TARGET_COMPONENTS_DEPLOY_PATH_MAP}
-	 */
-	public static final String TARGET_COMPONENTS_DEPLOY_PATH = "ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_DEPLOY_PATH"; //$NON-NLS-1$
-
-	/**
-	 * <p>
-	 * This optional property is the {@link Map} containing keys of {@link IVirtualComponent}s and
-	 * values of {@link String}s. This map is used to specify the String which should be used by
-	 * the {@link IVirtualComponent} specified by the {@link #SOURCE_COMPONENT} property to lookup
-	 * the deploy path. The {@link Set} of {@link IVirtualComponent}s in the
-	 * keys of this {@link Map} should have the same contents as the {@link List}.
-	 * </p>
-	 */
-	public static final String TARGET_COMPONENTS_DEPLOY_PATH_MAP = "ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_DEPLOY_PATH_MAP"; //$NON-NLS-1$
-
-	/**
-	 * <p>
-	 * This optional property is the {@link java.util.Map} containing keys of {@link org.eclipse.wst.common.componentcore.resources.IVirtualComponent}s and
-	 * values of {@link String}s. This map is used to specify the String which should be used by
-	 * the {@link org.eclipse.wst.common.componentcore.resources.IVirtualComponent} specified by the {@link #SOURCE_COMPONENT} property to lookup
-	 * the keyed {@link org.eclipse.wst.common.componentcore.resources.IVirtualComponent}. The {@link java.util.Set} of {@link org.eclipse.wst.common.componentcore.resources.IVirtualComponent}s in the
-	 * keys of this {@link java.util.Map} should have the same contents as the {@link java.util.List}.
-	 * </p>
-	 */
-	public static final String TARGET_COMPONENTS_TO_URI_MAP = "ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENTS_TO_URI_MAP"; //$NON-NLS-1$
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IFacetDataModelProperties.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IFacetDataModelProperties.java
deleted file mode 100644
index 91c694d..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IFacetDataModelProperties.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel.properties;
-
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelProperties;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject.Action;
-
-public interface IFacetDataModelProperties extends IDataModelProperties {
-
-	public static final Object FACET_TYPE_INSTALL = Action.Type.INSTALL;
-	public static final Object FACET_TYPE_UNINSTALL = Action.Type.UNINSTALL;
-	public static final Object FACET_TYPE_VERSION_CHANGE = Action.Type.VERSION_CHANGE;
-
-	public static final String FACET_PROJECT_NAME = "IFacetDataModelProperties.FACET_PROJECT_NAME"; //$NON-NLS-1$
-
-	public static final String FACET_TYPE = "IFacetDataModelProperties.FACET_TYPE"; //$NON-NLS-1$
-
-	public static final String FACET_ID = "IFacetDataModelProperties.FACET_ID"; //$NON-NLS-1$
-
-	public static final String FACET_VERSION_STR = "IFacetDataModelProperties.FACET_VERSION_STR"; //$NON-NLS-1$
-
-	/**
-	 * an IProjectFacetVersion
-	 */
-	public static final String FACET_VERSION = "IFacetDataModelPropeties.FACET_VERSION"; //$NON-NLS-1$
-	
-	/**
-	 * an IFacetedProject.Action
-	 */
-	public static final String FACET_ACTION = "IFacetDataModelProperties.FACET_ACTION"; //$NON-NLS-1$
-
-	public static final String SHOULD_EXECUTE = "IFacetDataModelProperties.SHOULD_EXECUTE"; //$NON-NLS-1$
-	
-	public static final String FACETED_PROJECT_WORKING_COPY = "IFacetDataModelProperties.FACETED_PROJECT_WORKING_COPY"; //$NON-NLS-1$
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IFacetInstallDataModelProperties.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IFacetInstallDataModelProperties.java
deleted file mode 100644
index 1ae3fa7..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IFacetInstallDataModelProperties.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel.properties;
-
-public interface IFacetInstallDataModelProperties extends IFacetDataModelProperties {
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IFacetProjectCreationDataModelProperties.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IFacetProjectCreationDataModelProperties.java
deleted file mode 100644
index 0d76a0f..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IFacetProjectCreationDataModelProperties.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel.properties;
-
-import java.util.Map;
-
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelProperties;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-
-public interface IFacetProjectCreationDataModelProperties extends IDataModelProperties {
-    
-    public static final String FACETED_PROJECT_WORKING_COPY 
-        = "IFacetProjectCreationDataModelProperties.FACETED_PROJECT_WORKING_COPY"; //$NON-NLS-1$";
-
-	/**
-	 * A String
-	 */
-	public static final String FACET_PROJECT_NAME = IFacetDataModelProperties.FACET_PROJECT_NAME;
-
-	/**
-	 * A Nested IDataModel of type IProjectCreationDataModelProperties
-	 */
-	public static final String NESTED_PROJECT_DM = "IFacetProjectCreationDataModelProperties.NESTED_PROJECT_DM"; //$NON-NLS-1$";
-
-	/**
-	 * An instanceof FacetDataModelMap.
-	 */
-	public static final String FACET_DM_MAP = "IFacetProjectCreationDataModelProperties.FACET_DM_MAP"; //$NON-NLS-1$
-
-	/**
-	 * An instance of FacetActionMap
-	 */
-	public static final String FACET_ACTION_MAP = "IFacetProjectCreationDataModelProperties.FACET_ACTION_MAP"; //$NON-NLS-1$
-
-	
-	/**
-	 * An instanceof of IRuntime
-	 */
-	public static final String FACET_RUNTIME = "IFacetProjectCreationDataModelProperties.FACET_RUNTIME"; //$NON-NLS-1$
-
-	
-	/**
-	 * This map is used for tracking individual IDataModels implementing IFacetDataModelProperties.
-	 * The facet ids are the keys for retieving the specific IFacetataModelProperties IDataModels
-	 */
-	public interface FacetDataModelMap extends Map {
-		public void add(IDataModel facetDataModel);
-		public IDataModel getFacetDataModel(String facetID);
-	}
-
-	/**
-	 * This map is used for tracing indivdual IFacetedProject.Actions for facets that either do not
-	 * have any config data, or facets whose config data is not an IDataModel.
-	 */
-	public interface FacetActionMap extends Map {
-		public void add(IFacetedProject.Action action);
-		public IFacetedProject.Action getAction(String facetID);
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IProjectMigratorDataModelProperties.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IProjectMigratorDataModelProperties.java
deleted file mode 100644
index 1e93fff..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IProjectMigratorDataModelProperties.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel.properties;
-
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelProperties;
-
-public interface IProjectMigratorDataModelProperties extends IDataModelProperties {
-
-
-	public static final String PROJECT_NAME = "IProjectMigratorDataModelProperties.PROJECT_NAME"; //$NON-NLS-1$
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IServerContextRootDataModelProperties.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IServerContextRootDataModelProperties.java
deleted file mode 100644
index c939138..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/IServerContextRootDataModelProperties.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.datamodel.properties;
-
-import org.eclipse.wst.common.componentcore.internal.operation.ServerContextRootDataModelProvider;
-
-public interface IServerContextRootDataModelProperties {
-	/**
-	 * This field should not be used.  It is not part of the API and may be modified in the future.
-	 */
-	public static Class _provider_class = ServerContextRootDataModelProvider.class;
-
-	public static final String PROJECT = "IServerContextRootDataModelProperties.PROJECT"; //$NON-NLS-1$	
-	public static final String CONTEXT_ROOT = "IServerContextRootDataModelProperties.CONTEXT_ROOT"; //$NON-NLS-1$
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/package.xml b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/package.xml
deleted file mode 100644
index 535937f..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/datamodel/properties/package.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<html>
-    <head>
-        <meta
-            name="root"
-            content="../../../../../../../" />
-        <title>Component creation and Referenced Component api overview</title>
-    </head>
-
-    <body>  
-		<abstract>
-        This package includes API  for creating components in a Flexible project and 
-        adding referenced components to existing components.(see <a href="ComponentCore.html">ComponentCore</a>). 
-        Clients should also review the <b>org.eclipse.wst.common.componentcore.resources</b>
-        package.
-		</abstract>
-
-	<a href="#top">top</a>
-    </body>
-</html>    
-    
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ArtifactEditModel.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ArtifactEditModel.java
deleted file mode 100644
index 9e38950..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ArtifactEditModel.java
+++ /dev/null
@@ -1,345 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.UnresolveableURIException;
-import org.eclipse.wst.common.componentcore.internal.impl.PlatformURLModuleConnection;
-import org.eclipse.wst.common.componentcore.internal.util.IModuleConstants;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-import org.eclipse.wst.common.frameworks.internal.enablement.EnablementManager;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IFacetedProjectListener;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * 
- * Provides resource life cycle management between an EditModel and a WTP flexible module pattern.
- * <p>
- * ArtifactEditModel provides a framework for managing a set of EMF resources within a unit of work.
- * Management of these resources includes basic services such as loads, saves, and synchronization
- * for the managed resources. ArtifactEditModels are reference counted so that a single instance can
- * be shared by more than one operation or editor.
- * </p>
- * <p>
- * AritfactEditModel utilizes
- * {@see org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext}&nbsp; to manage the life
- * cycle of an EMF {@see org.eclipse.emf.ecore.resource.Resource}&nbsp; in a given EMF
- * {@see org.eclipse.emf.ecore.resource.ResourceSet}. There is one ArtifactEditModel per
- * {@see org.eclipse.wst.common.modulecore.WorkbenchComponent}&nbsp;in each project.
- * </p>
- * 
- * @see org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext
- * @see org.eclipse.emf.ecore.resource.Resource
- * @see org.eclipse.emf.ecore.resource.ResourceSet
- * @see org.eclipse.wst.common.componentcore.internal.StructureEdit
- * @see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent
- * @see org.eclipse.wst.common.componentcore.internal.ComponentResource
- */
-
-public class ArtifactEditModel extends EditModel implements IAdaptable, IFacetedProjectListener {
-
-	public static final Class ADAPTER_TYPE = ArtifactEditModel.class;
-	private final IProject componentProject; 
-	private final IPath modulePath;
-	private URI rootURI;
-	private String rootContentType;
-	private final IVirtualComponent virtualComponent;
-	private final URI componentURI;
-
-	/**
-	 * <p>
-	 * Creates a ArtifactEditModel instance that uses information from the
-	 * <b>org.eclipse.wst.common.emfworkbench.integration.editModelFactory </b> extension point
-	 * associated with anEditModelId attached to the project managed by aContext for a specific
-	 * module referenced by aModuleURI. Resoures that are not recognized as defined Resources via
-	 * the appropriate EditModel extension points will be accessed as read-only.
-	 * </p>
-	 * <p>
-	 * This method is functionally equivalent to:
-	 * </p>
-	 * <p>
-	 * <code>ArtifactEditModel(anEditModelId, aContext, toMakeReadOnly, true, aModuleURI)</code>
-	 * </p>
-	 * 
-	 * @param anEditModelId
-	 *            A unique identifier for the EditModel defined by the appropriate
-	 *            <b>org.eclipse.wst.common.emfworkbench.integration.editModelFactory </b> extension
-	 *            point.
-	 * @param aContext
-	 *            A valid EMFWorkbenchContext which helps manage the lifecycle of EMF resources for
-	 *            a given project.
-	 * @param toMakeReadOnly
-	 *            True indicates that Resources loaded by the EditModel will not allow
-	 *            modifications.
-	 * @param aModuleURI
-	 *            A fully-qualified URI that conforms to the "module:" format.
-	 */
-
-	public ArtifactEditModel(String anEditModelId, EMFWorkbenchContext aContext, boolean toMakeReadOnly, URI aModuleURI) {
-		this(anEditModelId, aContext, toMakeReadOnly, true, aModuleURI);
-	}
-	
-	public ArtifactEditModel(String anEditModelId, EMFWorkbenchContext aContext, boolean toMakeReadOnly, boolean toAccessUnknownResourcesAsReadOnly, URI aModuleURI,URI rootURI,
-			String rootContentType) {
-		this(anEditModelId, aContext, toMakeReadOnly, toAccessUnknownResourcesAsReadOnly, aModuleURI);
-		this.rootURI = rootURI;
-		this.rootContentType = rootContentType;
-		
-	}
-	
-	
-	/**
-	 * 
-	 * <p>
-	 * Creates a ArtifactEditModel instance that uses information from the
-	 * <b>org.eclipse.wst.common.emfworkbench.integration.editModelFactory </b> extension point
-	 * associated with anEditModelId attached to the project managed by aContext for a specific
-	 * module referenced by aModuleURI. Resoures that are not recognized as defined
-	 * </p>*
-	 * 
-	 * @param anEditModelId
-	 *            A unique identifier for the EditModel defined by the appropriate
-	 *            <b>org.eclipse.wst.common.emfworkbench.integration.editModelFactory </b> extension
-	 *            point.
-	 * @param aContext
-	 *            A valid EMFWorkbenchContext which helps manage the lifecycle of EMF resources for
-	 *            a given project.
-	 * @param toMakeReadOnly
-	 *            True indicates that Resources loaded by the EditModel will not allow
-	 *            modifications.
-	 * @param toAccessUnknownResourcesAsReadOnly
-	 *            True indicates that Resources not recognized by the EditModel be loaded as
-	 *            read-only - such those loaded via {@see #getResource(URI)}.
-	 * @param aModuleURI
-	 *            A fully-qualified URI that conforms to the "module:" format.
-	 *  
-	 */
-
-	public ArtifactEditModel(String anEditModelId, EMFWorkbenchContext aContext, boolean toMakeReadOnly, boolean toAccessUnknownResourcesAsReadOnly, URI aModuleURI) {
-		super(anEditModelId, aContext, toMakeReadOnly, toAccessUnknownResourcesAsReadOnly);
-		IProject aProject = null;
-		try {
-			aProject = StructureEdit.getContainingProject(aModuleURI);
-			IFacetedProject facetProj;
-			facetProj = ProjectFacetsManager.create(project);
-			if (facetProj != null)
-				facetProj.addListener(this);
-		} catch (UnresolveableURIException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		} catch (CoreException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}finally {
-			componentProject = aProject;
-		}
-		
-		virtualComponent = ComponentCore.createComponent(componentProject);
-		componentURI = aModuleURI;
-		modulePath = new Path(aModuleURI.path());
-		processLoadedResources(componentProject);
-	}
-
-	public ArtifactEditModel(String editModelID, EMFWorkbenchContext context, boolean toMakeReadOnly, URI moduleURI, URI rootURI,
-			String rootContentType) {
-		this(editModelID, context, toMakeReadOnly, true, moduleURI);
-		this.rootURI = rootURI;
-		this.rootContentType = rootContentType;
-		
-	}
-
-	/**
-	 * <p>
-	 * Accesses resources within the underlying resource set. Takes a standard URI attaches module
-	 * protocol and information. This data can be used to determine if the resource is part of a
-	 * flexible module structure. If the resource does not exist in the resource set it will try and
-	 * load the resource.
-	 * </p>
-	 * 
-	 * @param aUri -
-	 *            location of resource
-	 * 
-	 * @return Resource (@see Resource)
-	 */
-	public Resource getResource(URI aUri) {
-		IPath requestPath;
-		//If requesting rootURI, use content type describer if available
-		if (rootURI != null && rootURI.equals(aUri) && rootContentType != null) {
-			requestPath = modulePath.append(new Path(rootContentType));
-			requestPath = requestPath.append(new Path(aUri.path()));
-		}
-		else {// First check if passed URI is already normalized...
-			requestPath = modulePath.append(new Path(aUri.path()));
-		}
-		URI resourceURI = URI.createURI(PlatformURLModuleConnection.MODULE_PROTOCOL + requestPath.toString());
-		return super.getResource(resourceURI);
-	}
-
-	public IProject getComponentProject() { 
-		return componentProject;
-	}
-
-	public URI getModuleURI() {
-		return componentURI;
-	}
-
-	/**
-	 * <p>
-	 * Accesses resoureces within the underlying resource set. Takes a starndard URI attaches module
-	 * information. This data can be used to determine if the resource is part of a flexible module
-	 * structure.
-	 * </p>
-	 * 
-	 * @param aUri -
-	 *            location of resource
-	 * 
-	 * @return Resource (@see Resource)
-	 */
-
-	public Resource getOrCreateResource(URI aUri) {
-
-		return super.getOrCreateResource(aUri);
-	}
-
-	/**
-	 * <p>
-	 * Overridden to prevent super() implementation, processLoadedResources(aModuleURI) used
-	 * instead. (@link processLoadedResources(URI aModuleURI)
-	 * </p>
-	 * 
-	 * @param aUri -
-	 *            location of resource
-	 */
-
-
-
-	protected void processLoadedResources() {
-	}
-
-	/**
-	 * <p>
-	 * Gathers resources from the underlying resource set, determines if interested (@link
-	 * processLoadedResources(URI aModuleURI))and request access (@link access(ReferencedResource
-	 * aResource))to each resource incrementing the write/read count.
-	 * </p>
-	 * 
-	 * @param aUri -
-	 *            location of resource
-	 */
-
-
-	protected void processLoadedResources(IProject aComponentProject) {
-		List loadedResources = getResourceSet().getResources();
-		if (!loadedResources.isEmpty()) {
-			processResourcesIfInterrested(loadedResources);
-		}
-	}
-
-	/**
-	 * <p>
-	 * Checks to make sure a flexible module structure exist for the resources in the resource set.
-	 * This is achieved by querying ModuleCore(@see ModuleCore) for existing
-	 * WorkbenchModuleResources (@see WorkbenchModuleResources). If the resource exist it processes
-	 * the resource (@link processResource(Resource aResource)). Processing the resource increments
-	 * the read/write count.
-	 * </p>*
-	 * 
-	 * @param theResources -
-	 *            list of resources to verify flexible module status, and process
-	 * @throws UnresolveableURIException
-	 *             could not WorkbenchResource with the corresponding URI.
-	 */
-	protected boolean processResourcesIfInterrested(List theResources) {
-		int size = theResources.size();
-		Resource resourceToProcess;
-		boolean processed = false; 
- 
-		IResource resourceResource;
-		IVirtualResource[] virtualResources;
-		for (int i = 0; i < size; i++) { 
-			resourceToProcess = (Resource) theResources.get(i);
-			if (resourceToProcess == null) continue;
-			String lastSegment = resourceToProcess.getURI().lastSegment();
-			if (null != lastSegment && lastSegment.endsWith(IModuleConstants.COMPONENT_FILE_NAME)) continue;
-			resourceResource = WorkbenchResourceHelper.getFile(resourceToProcess);
-			if (resourceResource != null) {
-				virtualResources = ComponentCore.createResources(resourceResource); 
-				for (int resourcesIndex = 0; resourcesIndex < virtualResources.length; resourcesIndex++) {
-					if (virtualComponent.equals(virtualResources[resourcesIndex].getComponent())) {
-						if (resourceToProcess !=null && isInterrestedInResource(resourceToProcess)) {
-							processResource(resourceToProcess);
-							processed = true;
-						}
-					}
-				}
-			}
-		}  
-		return processed;
-	}
-
-	/**
-	 * 
-	 * <p>
-	 * Generic way to retrieve containing information, within the platform.
-	 * </p>
-	 * 
-	 * @return instance of the adapterType for this adapter class from adapter factory stored in the
-	 *         adapter manager (@see AdapterManager)
-	 *  
-	 */
-
-	public Object getAdapter(Class adapterType) {
-		return Platform.getAdapterManager().getAdapter(this, adapterType);
-	}
-
-	public IVirtualComponent getVirtualComponent() {
-		return virtualComponent;
-	}
-
-	public void projectChanged() {
-		try {
-			EnablementManager.INSTANCE.notifyFunctionGroupChanged(null,getComponentProject());
-		} catch (CoreException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
-		
-	}
-	
-	protected void doDispose() {
-		//Remove the listener from the faceted project
-		try {
-			IFacetedProject facetProj = ProjectFacetsManager.create(getComponentProject());
-			if (facetProj != null)
-				facetProj.removeListener(this);
-		} catch (Exception e) {
-			Logger.getLogger().logError(e);
-		}
-		super.doDispose();
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/BinaryComponentHelper.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/BinaryComponentHelper.java
deleted file mode 100644
index ea71b40..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/BinaryComponentHelper.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-
-public abstract class BinaryComponentHelper {
-
-	private IVirtualComponent component;
-
-	protected BinaryComponentHelper(IVirtualComponent component) {
-		this.component = component;
-	}
-
-	public IVirtualComponent getComponent() {
-		return component;
-	}
-
-	public abstract EObject getPrimaryRootObject();
-
-	public abstract Resource getResource(URI uri);
-	
-	public void dispose(){
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentResource.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentResource.java
deleted file mode 100644
index efe8adc..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentResource.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/**
- * <copyright></copyright>
- * 
- * $Id: ComponentResource.java,v 1.6 2006/04/27 04:17:40 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc --> Provides an abstract mapping of workbench resources to deployable
- * resources.
- * <p>
- * The underlying eclipse resource could be a container or a file. However, if the
- * {@see #getSourcePath()}&nbsp; is a container, then the {@see #getDeployedPath()}&nbsp; will be
- * a container as well.
- * </p>Clients that require access to the underlying Eclipse Resource for a given
- * ComponentResource should use 
- * {@see org.eclipse.wst.common.modulecore.ModuleCore#getEclipseResource(ComponentResource)}&nbsp;
- * <p>
- * See the package overview for an <a href="package-summary.html">overview of the model components </a>.
- * </p>
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getSourcePath <em>Source Path</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getRuntimePath <em>Runtime Path</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getExclusions <em>Exclusions</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getComponent <em>Component</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getResourceType <em>Resource Type</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentResource()
- * @model
- * @generated
- */
-public interface ComponentResource extends EObject {
-	/**
-	 * Returns the value of the '<em><b>Source Path</b></em>' attribute.
-	 * <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of the '<em>Source Path</em>' attribute isn't clear, there really should
-	 * be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Source Path</em>' attribute.
-	 * @see #setSourcePath(IPath)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentResource_SourcePath()
-	 * @model dataType="org.eclipse.wst.common.componentcore.internal.IPath" required="true"
-	 * @generated
-	 */
-	IPath getSourcePath();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getSourcePath <em>Source Path</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Source Path</em>' attribute.
-	 * @see #getSourcePath()
-	 * @generated
-	 */
-	void setSourcePath(IPath value);
-
-	/**
-	 * Returns the value of the '<em><b>Runtime Path</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Runtime Path</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Runtime Path</em>' attribute.
-	 * @see #setRuntimePath(IPath)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentResource_RuntimePath()
-	 * @model dataType="org.eclipse.wst.common.componentcore.internal.IPath" required="true"
-	 * @generated
-	 */
-	IPath getRuntimePath();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getRuntimePath <em>Runtime Path</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Runtime Path</em>' attribute.
-	 * @see #getRuntimePath()
-	 * @generated
-	 */
-	void setRuntimePath(IPath value);
-
-	/**
-	 * Returns the value of the '<em><b>Exclusions</b></em>' attribute list.
-	 * The list contents are of type {@link java.lang.String}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Exclusions</em>' attribute list isn't clear, there really
-	 * should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Exclusions</em>' attribute list.
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentResource_Exclusions()
-	 * @model type="java.lang.String" default=""
-	 * @generated
-	 */
-	EList getExclusions();
-
-	/**
-	 * Returns the value of the '<em><b>Component</b></em>' container reference.
-	 * It is bidirectional and its opposite is '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getResources <em>Resources</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Component</em>' container reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Component</em>' container reference.
-	 * @see #setComponent(WorkbenchComponent)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentResource_Component()
-	 * @see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getResources
-	 * @model opposite="resources" required="true"
-	 * @generated
-	 */
-	WorkbenchComponent getComponent();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getComponent <em>Component</em>}' container reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Component</em>' container reference.
-	 * @see #getComponent()
-	 * @generated
-	 */
-	void setComponent(WorkbenchComponent value);
-
-	/**
-	 * Returns the value of the '<em><b>Resource Type</b></em>' attribute.
-	 * The default value is <code>""</code>.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Resource Type</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Resource Type</em>' attribute.
-	 * @see #setResourceType(String)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentResource_ResourceType()
-	 * @model default="" required="true"
-	 * @generated
-	 */
-	String getResourceType();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getResourceType <em>Resource Type</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Resource Type</em>' attribute.
-	 * @see #getResourceType()
-	 * @generated
-	 */
-	void setResourceType(String value);
-
-	IProject getOwningProject();
-	void setOwningProject(IProject aProject);
-
-} // ComponentResource
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentType.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentType.java
deleted file mode 100644
index 48a0703..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentType.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc --> 
- * Indicates how the {@see org.eclipse.wst.common.modulecore.WorkbenchComponent}&nbsp;should be handled by
- * the tooling.  
- * <p>
- * In particular, the {@see #getModuleTypeId()}&nbsp; is used to coordinate other
- * extensions such as EditModels and the module structure preparation builder.
- * </p>
- * 
- * <p>
- * See the package overview for an <a href="package-summary.html">overview of the model components </a>.
- * </p>
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ComponentType#getComponentTypeId <em>Component Type Id</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ComponentType#getVersion <em>Version</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ComponentType#getProperties <em>Properties</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ComponentType#getMetadataResources <em>Metadata Resources</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentType()
- * @model
- * @generated
- */
-public interface ComponentType extends EObject {
-	/**
-	 * Returns the value of the '<em><b>Component Type Id</b></em>' attribute.
-	 * The default value is <code>""</code>.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Component Type Id</em>' reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Component Type Id</em>' attribute.
-	 * @see #setComponentTypeId(String)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentType_ComponentTypeId()
-	 * @model default="" required="true"
-	 * @generated
-	 */
-	String getComponentTypeId();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ComponentType#getComponentTypeId <em>Component Type Id</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Component Type Id</em>' attribute.
-	 * @see #getComponentTypeId()
-	 * @generated
-	 */
-	void setComponentTypeId(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Metadata Resources</b></em>' attribute list.
-	 * The list contents are of type {@link org.eclipse.core.runtime.IPath}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Metadata Resources</em>' attribute list isn't clear, there
-	 * really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Metadata Resources</em>' attribute list.
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentType_MetadataResources()
-	 * @model type="org.eclipse.core.runtime.IPath" dataType="org.eclipse.wst.common.componentcore.internal.IPath"
-	 * @generated
-	 */
-	EList getMetadataResources();
-
-	/**
-	 * Returns the value of the '<em><b>Version</b></em>' attribute.
-	 * The default value is <code>""</code>.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Version</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Version</em>' attribute.
-	 * @see #setVersion(String)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentType_Version()
-	 * @model default="" required="true"
-	 * @generated
-	 */
-	String getVersion();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ComponentType#getVersion <em>Version</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Version</em>' attribute.
-	 * @see #getVersion()
-	 * @generated
-	 */
-	void setVersion(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Properties</b></em>' reference list.
-	 * The list contents are of type {@link org.eclipse.wst.common.componentcore.internal.Property}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Properties</em>' reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Properties</em>' reference list.
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getComponentType_Properties()
-	 * @model type="org.eclipse.wst.common.componentcore.internal.Property"
-	 * @generated
-	 */
-	EList getProperties();
-
-} // ComponentType
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentcoreFactory.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentcoreFactory.java
deleted file mode 100644
index 25de4f9..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentcoreFactory.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: ComponentcoreFactory.java,v 1.2 2006/04/27 04:17:40 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.emf.ecore.EFactory;
-import org.eclipse.wst.common.componentcore.internal.impl.ComponentcoreFactoryImpl;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Factory</b> for the model.
- * It provides a create method for each non-abstract class of the model.
- * <!-- end-user-doc -->
- * @see org.eclipse.wst.common.componentcore.internal.ComponentcorePackage
- * @generated
- */
-public interface ComponentcoreFactory extends EFactory {
-	/**
-	 * The singleton instance of the factory.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	ComponentcoreFactory eINSTANCE = ComponentcoreFactoryImpl.init();
-
-	/**
-	 * Returns a new object of class '<em>Workbench Component</em>'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return a new object of class '<em>Workbench Component</em>'.
-	 * @generated
-	 */
-	WorkbenchComponent createWorkbenchComponent();
-
-	/**
-	 * Returns a new object of class '<em>Component Resource</em>'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return a new object of class '<em>Component Resource</em>'.
-	 * @generated
-	 */
-	ComponentResource createComponentResource();
-
-	/**
-	 * Returns a new object of class '<em>Component Type</em>'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return a new object of class '<em>Component Type</em>'.
-	 * @generated
-	 */
-	ComponentType createComponentType();
-
-	/**
-	 * Returns a new object of class '<em>Property</em>'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return a new object of class '<em>Property</em>'.
-	 * @generated
-	 */
-	Property createProperty();
-
-	/**
-	 * Returns a new object of class '<em>Referenced Component</em>'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return a new object of class '<em>Referenced Component</em>'.
-	 * @generated
-	 */
-	ReferencedComponent createReferencedComponent();
-
-	/**
-	 * Returns a new object of class '<em>Project Components</em>'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return a new object of class '<em>Project Components</em>'.
-	 * @generated
-	 */
-	ProjectComponents createProjectComponents();
-
-	/**
-	 * Returns the package supported by this factory.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the package supported by this factory.
-	 * @generated
-	 */
-	ComponentcorePackage getComponentcorePackage();
-
-} //ComponentcoreFactory
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentcorePackage.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentcorePackage.java
deleted file mode 100644
index eed4fe3..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ComponentcorePackage.java
+++ /dev/null
@@ -1,1118 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: ComponentcorePackage.java,v 1.8 2006/04/27 04:17:40 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EDataType;
-import org.eclipse.emf.ecore.EEnum;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.wst.common.componentcore.internal.ComponentcoreFactory;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Package</b> for the model.
- * It contains accessors for the meta objects to represent
- * <ul>
- *   <li>each class,</li>
- *   <li>each feature of each class,</li>
- *   <li>each enum,</li>
- *   <li>and each data type</li>
- * </ul>
- * <!-- end-user-doc -->
- * @see org.eclipse.wst.common.componentcore.ComponentcoreFactory
- * @model kind="package"
- * @generated
- */
-public interface ComponentcorePackage extends EPackage {
-	/**
-	 * The package name.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	String eNAME = "componentcore";
-
-	/**
-	 * The package namespace URI.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	String eNS_URI = "componentcore.xmi";
-
-	/**
-	 * The package namespace name.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	String eNS_PREFIX = "org.eclipse.wst.common.componentcore";
-
-	/**
-	 * The singleton instance of the package.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	ComponentcorePackage eINSTANCE = org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl.init();
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl <em>Workbench Component</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getWorkbenchComponent()
-	 * @generated
-	 */
-	int WORKBENCH_COMPONENT = 0;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int WORKBENCH_COMPONENT__NAME = 0;
-
-	/**
-	 * The feature id for the '<em><b>Resources</b></em>' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int WORKBENCH_COMPONENT__RESOURCES = 1;
-
-	/**
-	 * The feature id for the '<em><b>Component Type</b></em>' containment reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int WORKBENCH_COMPONENT__COMPONENT_TYPE = 2;
-
-	/**
-	 * The feature id for the '<em><b>Referenced Components</b></em>' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int WORKBENCH_COMPONENT__REFERENCED_COMPONENTS = 3;
-
-	/**
-	 * The feature id for the '<em><b>Properties</b></em>' reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int WORKBENCH_COMPONENT__PROPERTIES = 4;
-
-	/**
-	 * The feature id for the '<em><b>Metadata Resources</b></em>' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int WORKBENCH_COMPONENT__METADATA_RESOURCES = 5;
-
-	/**
-	 * The number of structural features of the '<em>Workbench Component</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int WORKBENCH_COMPONENT_FEATURE_COUNT = 6;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentResourceImpl <em>Component Resource</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentResourceImpl
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getComponentResource()
-	 * @generated
-	 */
-	int COMPONENT_RESOURCE = 1;
-
-	/**
-	 * The feature id for the '<em><b>Source Path</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_RESOURCE__SOURCE_PATH = 0;
-
-	/**
-	 * The feature id for the '<em><b>Runtime Path</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_RESOURCE__RUNTIME_PATH = 1;
-
-	/**
-	 * The feature id for the '<em><b>Exclusions</b></em>' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_RESOURCE__EXCLUSIONS = 2;
-
-	/**
-	 * The feature id for the '<em><b>Component</b></em>' container reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_RESOURCE__COMPONENT = 3;
-
-	/**
-	 * The feature id for the '<em><b>Resource Type</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_RESOURCE__RESOURCE_TYPE = 4;
-
-	/**
-	 * The number of structural features of the '<em>Component Resource</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_RESOURCE_FEATURE_COUNT = 5;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentTypeImpl <em>Component Type</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentTypeImpl
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getComponentType()
-	 * @generated
-	 */
-	int COMPONENT_TYPE = 2;
-
-	/**
-	 * The feature id for the '<em><b>Component Type Id</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_TYPE__COMPONENT_TYPE_ID = 0;
-
-	/**
-	 * The feature id for the '<em><b>Version</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_TYPE__VERSION = 1;
-
-	/**
-	 * The feature id for the '<em><b>Properties</b></em>' reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_TYPE__PROPERTIES = 2;
-
-	/**
-	 * The feature id for the '<em><b>Metadata Resources</b></em>' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_TYPE__METADATA_RESOURCES = 3;
-
-	/**
-	 * The number of structural features of the '<em>Component Type</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int COMPONENT_TYPE_FEATURE_COUNT = 4;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.common.componentcore.internal.impl.PropertyImpl <em>Property</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.PropertyImpl
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getProperty()
-	 * @generated
-	 */
-	int PROPERTY = 3;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int PROPERTY__NAME = 0;
-
-	/**
-	 * The feature id for the '<em><b>Value</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int PROPERTY__VALUE = 1;
-
-	/**
-	 * The number of structural features of the '<em>Property</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int PROPERTY_FEATURE_COUNT = 2;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.common.componentcore.internal.impl.ReferencedComponentImpl <em>Referenced Component</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ReferencedComponentImpl
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getReferencedComponent()
-	 * @generated
-	 */
-	int REFERENCED_COMPONENT = 4;
-
-	/**
-	 * The feature id for the '<em><b>Handle</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCED_COMPONENT__HANDLE = 0;
-
-	/**
-	 * The feature id for the '<em><b>Runtime Path</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCED_COMPONENT__RUNTIME_PATH = 1;
-
-	/**
-	 * The feature id for the '<em><b>Dependency Type</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCED_COMPONENT__DEPENDENCY_TYPE = 2;
-
-	/**
-	 * The feature id for the '<em><b>Dependent Object</b></em>' reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCED_COMPONENT__DEPENDENT_OBJECT = 3;
-
-	/**
-	 * The feature id for the '<em><b>Archive Name</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCED_COMPONENT__ARCHIVE_NAME = 4;
-
-	/**
-	 * The number of structural features of the '<em>Referenced Component</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCED_COMPONENT_FEATURE_COUNT = 5;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.common.componentcore.internal.impl.ProjectComponentsImpl <em>Project Components</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ProjectComponentsImpl
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getProjectComponents()
-	 * @generated
-	 */
-	int PROJECT_COMPONENTS = 5;
-
-	/**
-	 * The feature id for the '<em><b>Project Name</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int PROJECT_COMPONENTS__PROJECT_NAME = 0;
-
-	/**
-	 * The feature id for the '<em><b>Components</b></em>' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int PROJECT_COMPONENTS__COMPONENTS = 1;
-
-	/**
-	 * The feature id for the '<em><b>Version</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int PROJECT_COMPONENTS__VERSION = 2;
-
-	/**
-	 * The number of structural features of the '<em>Project Components</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int PROJECT_COMPONENTS_FEATURE_COUNT = 3;
-
-	/**
-	 * The meta object id for the '{@link org.eclipse.wst.common.componentcore.internal.DependencyType <em>Dependency Type</em>}' enum.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.eclipse.wst.common.componentcore.internal.DependencyType
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getDependencyType()
-	 * @generated
-	 */
-	int DEPENDENCY_TYPE = 6;
-
-	/**
-	 * The meta object id for the '<em>IPath</em>' data type.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.eclipse.core.runtime.IPath
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getIPath()
-	 * @generated
-	 */
-	int IPATH = 7;
-
-	/**
-	 * The meta object id for the '<em>URI</em>' data type.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.eclipse.emf.common.util.URI
-	 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getURI()
-	 * @generated
-	 */
-	int URI = 8;
-
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent <em>Workbench Component</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Workbench Component</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent
-	 * @generated
-	 */
-	EClass getWorkbenchComponent();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getName <em>Name</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Name</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getName()
-	 * @see #getWorkbenchComponent()
-	 * @generated
-	 */
-	EAttribute getWorkbenchComponent_Name();
-
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getResources <em>Resources</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Resources</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getResources()
-	 * @see #getWorkbenchComponent()
-	 * @generated
-	 */
-	EReference getWorkbenchComponent_Resources();
-
-	/**
-	 * Returns the meta object for the containment reference '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getComponentType <em>Component Type</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference '<em>Component Type</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getComponentType()
-	 * @see #getWorkbenchComponent()
-	 * @generated
-	 */
-	EReference getWorkbenchComponent_ComponentType();
-
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getReferencedComponents <em>Referenced Components</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Referenced Components</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getReferencedComponents()
-	 * @see #getWorkbenchComponent()
-	 * @generated
-	 */
-	EReference getWorkbenchComponent_ReferencedComponents();
-
-	/**
-	 * Returns the meta object for the reference list '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getProperties <em>Properties</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the reference list '<em>Properties</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getProperties()
-	 * @see #getWorkbenchComponent()
-	 * @generated
-	 */
-	EReference getWorkbenchComponent_Properties();
-
-	/**
-	 * Returns the meta object for the attribute list '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getMetadataResources <em>Metadata Resources</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute list '<em>Metadata Resources</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getMetadataResources()
-	 * @see #getWorkbenchComponent()
-	 * @generated
-	 */
-	EAttribute getWorkbenchComponent_MetadataResources();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource <em>Component Resource</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Component Resource</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentResource
-	 * @generated
-	 */
-	EClass getComponentResource();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getSourcePath <em>Source Path</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Source Path</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentResource#getSourcePath()
-	 * @see #getComponentResource()
-	 * @generated
-	 */
-	EAttribute getComponentResource_SourcePath();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getRuntimePath <em>Runtime Path</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Runtime Path</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentResource#getRuntimePath()
-	 * @see #getComponentResource()
-	 * @generated
-	 */
-	EAttribute getComponentResource_RuntimePath();
-
-	/**
-	 * Returns the meta object for the attribute list '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getExclusions <em>Exclusions</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute list '<em>Exclusions</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentResource#getExclusions()
-	 * @see #getComponentResource()
-	 * @generated
-	 */
-	EAttribute getComponentResource_Exclusions();
-
-	/**
-	 * Returns the meta object for the container reference '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getComponent <em>Component</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the container reference '<em>Component</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentResource#getComponent()
-	 * @see #getComponentResource()
-	 * @generated
-	 */
-	EReference getComponentResource_Component();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getResourceType <em>Resource Type</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Resource Type</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentResource#getResourceType()
-	 * @see #getComponentResource()
-	 * @generated
-	 */
-	EAttribute getComponentResource_ResourceType();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.common.componentcore.internal.ComponentType <em>Component Type</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Component Type</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentType
-	 * @generated
-	 */
-	EClass getComponentType();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ComponentType#getComponentTypeId <em>Component Type Id</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Component Type Id</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentType#getComponentTypeId()
-	 * @see #getComponentType()
-	 * @generated
-	 */
-	EAttribute getComponentType_ComponentTypeId();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ComponentType#getVersion <em>Version</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Version</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentType#getVersion()
-	 * @see #getComponentType()
-	 * @generated
-	 */
-	EAttribute getComponentType_Version();
-
-	/**
-	 * Returns the meta object for the reference list '{@link org.eclipse.wst.common.componentcore.internal.ComponentType#getProperties <em>Properties</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the reference list '<em>Properties</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentType#getProperties()
-	 * @see #getComponentType()
-	 * @generated
-	 */
-	EReference getComponentType_Properties();
-
-	/**
-	 * Returns the meta object for the attribute list '{@link org.eclipse.wst.common.componentcore.internal.ComponentType#getMetadataResources <em>Metadata Resources</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute list '<em>Metadata Resources</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentType#getMetadataResources()
-	 * @see #getComponentType()
-	 * @generated
-	 */
-	EAttribute getComponentType_MetadataResources();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.common.componentcore.internal.Property <em>Property</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Property</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.Property
-	 * @generated
-	 */
-	EClass getProperty();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.Property#getName <em>Name</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Name</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.Property#getName()
-	 * @see #getProperty()
-	 * @generated
-	 */
-	EAttribute getProperty_Name();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.Property#getValue <em>Value</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Value</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.Property#getValue()
-	 * @see #getProperty()
-	 * @generated
-	 */
-	EAttribute getProperty_Value();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent <em>Referenced Component</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Referenced Component</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ReferencedComponent
-	 * @generated
-	 */
-	EClass getReferencedComponent();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getHandle <em>Handle</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Handle</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getHandle()
-	 * @see #getReferencedComponent()
-	 * @generated
-	 */
-	EAttribute getReferencedComponent_Handle();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getRuntimePath <em>Runtime Path</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Runtime Path</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getRuntimePath()
-	 * @see #getReferencedComponent()
-	 * @generated
-	 */
-	EAttribute getReferencedComponent_RuntimePath();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getDependencyType <em>Dependency Type</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Dependency Type</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getDependencyType()
-	 * @see #getReferencedComponent()
-	 * @generated
-	 */
-	EAttribute getReferencedComponent_DependencyType();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getDependentObject <em>Dependent Object</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the reference '<em>Dependent Object</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getDependentObject()
-	 * @see #getReferencedComponent()
-	 * @generated
-	 */
-	EReference getReferencedComponent_DependentObject();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getArchiveName <em>Archive Name</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Archive Name</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getArchiveName()
-	 * @see #getReferencedComponent()
-	 * @generated
-	 */
-	EAttribute getReferencedComponent_ArchiveName();
-
-	/**
-	 * Returns the meta object for class '{@link org.eclipse.wst.common.componentcore.internal.ProjectComponents <em>Project Components</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Project Components</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ProjectComponents
-	 * @generated
-	 */
-	EClass getProjectComponents();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ProjectComponents#getProjectName <em>Project Name</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Project Name</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ProjectComponents#getProjectName()
-	 * @see #getProjectComponents()
-	 * @generated
-	 */
-	EAttribute getProjectComponents_ProjectName();
-
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.eclipse.wst.common.componentcore.internal.ProjectComponents#getComponents <em>Components</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Components</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ProjectComponents#getComponents()
-	 * @see #getProjectComponents()
-	 * @generated
-	 */
-	EReference getProjectComponents_Components();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.eclipse.wst.common.componentcore.internal.ProjectComponents#getVersion <em>Version</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Version</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.ProjectComponents#getVersion()
-	 * @see #getProjectComponents()
-	 * @generated
-	 */
-	EAttribute getProjectComponents_Version();
-
-	/**
-	 * Returns the meta object for enum '{@link org.eclipse.wst.common.componentcore.internal.DependencyType <em>Dependency Type</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for enum '<em>Dependency Type</em>'.
-	 * @see org.eclipse.wst.common.componentcore.internal.DependencyType
-	 * @generated
-	 */
-	EEnum getDependencyType();
-
-	/**
-	 * Returns the meta object for data type '{@link org.eclipse.core.runtime.IPath <em>IPath</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for data type '<em>IPath</em>'.
-	 * @see org.eclipse.core.runtime.IPath
-	 * @model instanceClass="org.eclipse.core.runtime.IPath"
-	 *        annotation="keywords datatype='null'" 
-	 * @generated
-	 */
-	EDataType getIPath();
-
-	/**
-	 * Returns the meta object for data type '{@link org.eclipse.emf.common.util.URI <em>URI</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for data type '<em>URI</em>'.
-	 * @see org.eclipse.emf.common.util.URI
-	 * @model instanceClass="org.eclipse.emf.common.util.URI"
-	 *        annotation="keywords datatype='null'" 
-	 * @generated
-	 */
-	EDataType getURI();
-
-	/**
-	 * Returns the factory that creates the instances of the model.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the factory that creates the instances of the model.
-	 * @generated
-	 */
-	ComponentcoreFactory getComponentcoreFactory();
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * Defines literals for the meta objects that represent
-	 * <ul>
-	 *   <li>each class,</li>
-	 *   <li>each feature of each class,</li>
-	 *   <li>each enum,</li>
-	 *   <li>and each data type</li>
-	 * </ul>
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	interface Literals {
-		/**
-		 * The meta object literal for the '{@link org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl <em>Workbench Component</em>}' class.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getWorkbenchComponent()
-		 * @generated
-		 */
-		EClass WORKBENCH_COMPONENT = eINSTANCE.getWorkbenchComponent();
-
-		/**
-		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute WORKBENCH_COMPONENT__NAME = eINSTANCE.getWorkbenchComponent_Name();
-
-		/**
-		 * The meta object literal for the '<em><b>Resources</b></em>' containment reference list feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference WORKBENCH_COMPONENT__RESOURCES = eINSTANCE.getWorkbenchComponent_Resources();
-
-		/**
-		 * The meta object literal for the '<em><b>Component Type</b></em>' containment reference feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference WORKBENCH_COMPONENT__COMPONENT_TYPE = eINSTANCE.getWorkbenchComponent_ComponentType();
-
-		/**
-		 * The meta object literal for the '<em><b>Referenced Components</b></em>' containment reference list feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference WORKBENCH_COMPONENT__REFERENCED_COMPONENTS = eINSTANCE.getWorkbenchComponent_ReferencedComponents();
-
-		/**
-		 * The meta object literal for the '<em><b>Properties</b></em>' reference list feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference WORKBENCH_COMPONENT__PROPERTIES = eINSTANCE.getWorkbenchComponent_Properties();
-
-		/**
-		 * The meta object literal for the '<em><b>Metadata Resources</b></em>' attribute list feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute WORKBENCH_COMPONENT__METADATA_RESOURCES = eINSTANCE.getWorkbenchComponent_MetadataResources();
-
-		/**
-		 * The meta object literal for the '{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentResourceImpl <em>Component Resource</em>}' class.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentResourceImpl
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getComponentResource()
-		 * @generated
-		 */
-		EClass COMPONENT_RESOURCE = eINSTANCE.getComponentResource();
-
-		/**
-		 * The meta object literal for the '<em><b>Source Path</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute COMPONENT_RESOURCE__SOURCE_PATH = eINSTANCE.getComponentResource_SourcePath();
-
-		/**
-		 * The meta object literal for the '<em><b>Runtime Path</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute COMPONENT_RESOURCE__RUNTIME_PATH = eINSTANCE.getComponentResource_RuntimePath();
-
-		/**
-		 * The meta object literal for the '<em><b>Exclusions</b></em>' attribute list feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute COMPONENT_RESOURCE__EXCLUSIONS = eINSTANCE.getComponentResource_Exclusions();
-
-		/**
-		 * The meta object literal for the '<em><b>Component</b></em>' container reference feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference COMPONENT_RESOURCE__COMPONENT = eINSTANCE.getComponentResource_Component();
-
-		/**
-		 * The meta object literal for the '<em><b>Resource Type</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute COMPONENT_RESOURCE__RESOURCE_TYPE = eINSTANCE.getComponentResource_ResourceType();
-
-		/**
-		 * The meta object literal for the '{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentTypeImpl <em>Component Type</em>}' class.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentTypeImpl
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getComponentType()
-		 * @generated
-		 */
-		EClass COMPONENT_TYPE = eINSTANCE.getComponentType();
-
-		/**
-		 * The meta object literal for the '<em><b>Component Type Id</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute COMPONENT_TYPE__COMPONENT_TYPE_ID = eINSTANCE.getComponentType_ComponentTypeId();
-
-		/**
-		 * The meta object literal for the '<em><b>Version</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute COMPONENT_TYPE__VERSION = eINSTANCE.getComponentType_Version();
-
-		/**
-		 * The meta object literal for the '<em><b>Properties</b></em>' reference list feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference COMPONENT_TYPE__PROPERTIES = eINSTANCE.getComponentType_Properties();
-
-		/**
-		 * The meta object literal for the '<em><b>Metadata Resources</b></em>' attribute list feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute COMPONENT_TYPE__METADATA_RESOURCES = eINSTANCE.getComponentType_MetadataResources();
-
-		/**
-		 * The meta object literal for the '{@link org.eclipse.wst.common.componentcore.internal.impl.PropertyImpl <em>Property</em>}' class.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.PropertyImpl
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getProperty()
-		 * @generated
-		 */
-		EClass PROPERTY = eINSTANCE.getProperty();
-
-		/**
-		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute PROPERTY__NAME = eINSTANCE.getProperty_Name();
-
-		/**
-		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute PROPERTY__VALUE = eINSTANCE.getProperty_Value();
-
-		/**
-		 * The meta object literal for the '{@link org.eclipse.wst.common.componentcore.internal.impl.ReferencedComponentImpl <em>Referenced Component</em>}' class.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ReferencedComponentImpl
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getReferencedComponent()
-		 * @generated
-		 */
-		EClass REFERENCED_COMPONENT = eINSTANCE.getReferencedComponent();
-
-		/**
-		 * The meta object literal for the '<em><b>Handle</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute REFERENCED_COMPONENT__HANDLE = eINSTANCE.getReferencedComponent_Handle();
-
-		/**
-		 * The meta object literal for the '<em><b>Runtime Path</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute REFERENCED_COMPONENT__RUNTIME_PATH = eINSTANCE.getReferencedComponent_RuntimePath();
-
-		/**
-		 * The meta object literal for the '<em><b>Dependency Type</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute REFERENCED_COMPONENT__DEPENDENCY_TYPE = eINSTANCE.getReferencedComponent_DependencyType();
-
-		/**
-		 * The meta object literal for the '<em><b>Dependent Object</b></em>' reference feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference REFERENCED_COMPONENT__DEPENDENT_OBJECT = eINSTANCE.getReferencedComponent_DependentObject();
-
-		/**
-		 * The meta object literal for the '<em><b>Archive Name</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute REFERENCED_COMPONENT__ARCHIVE_NAME = eINSTANCE.getReferencedComponent_ArchiveName();
-
-		/**
-		 * The meta object literal for the '{@link org.eclipse.wst.common.componentcore.internal.impl.ProjectComponentsImpl <em>Project Components</em>}' class.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ProjectComponentsImpl
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getProjectComponents()
-		 * @generated
-		 */
-		EClass PROJECT_COMPONENTS = eINSTANCE.getProjectComponents();
-
-		/**
-		 * The meta object literal for the '<em><b>Project Name</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute PROJECT_COMPONENTS__PROJECT_NAME = eINSTANCE.getProjectComponents_ProjectName();
-
-		/**
-		 * The meta object literal for the '<em><b>Components</b></em>' containment reference list feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference PROJECT_COMPONENTS__COMPONENTS = eINSTANCE.getProjectComponents_Components();
-
-		/**
-		 * The meta object literal for the '<em><b>Version</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute PROJECT_COMPONENTS__VERSION = eINSTANCE.getProjectComponents_Version();
-
-		/**
-		 * The meta object literal for the '{@link org.eclipse.wst.common.componentcore.internal.DependencyType <em>Dependency Type</em>}' enum.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.eclipse.wst.common.componentcore.internal.DependencyType
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getDependencyType()
-		 * @generated
-		 */
-		EEnum DEPENDENCY_TYPE = eINSTANCE.getDependencyType();
-
-		/**
-		 * The meta object literal for the '<em>IPath</em>' data type.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.eclipse.core.runtime.IPath
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getIPath()
-		 * @generated
-		 */
-		EDataType IPATH = eINSTANCE.getIPath();
-
-		/**
-		 * The meta object literal for the '<em>URI</em>' data type.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.eclipse.emf.common.util.URI
-		 * @see org.eclipse.wst.common.componentcore.internal.impl.ComponentcorePackageImpl#getURI()
-		 * @generated
-		 */
-		EDataType URI = eINSTANCE.getURI();
-
-	}
-
-} //ComponentcorePackage
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/DependencyType.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/DependencyType.java
deleted file mode 100644
index 09914ab..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/DependencyType.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.emf.common.util.AbstractEnumerator;
-
-/**
- * 
- * <!-- begin-user-doc --> 
- * Indicates how a particular {@see org.eclipse.wst.common.modulecore.ReferencedComponent}&nbsp;should be
- * absorbed by a {@see org.eclipse.wst.common.modulecore.WorkbenchComponent}. 
- * <p>
- * Provides two types ("uses", "consumes") which are used by
- * {@see org.eclipse.wst.common.modulecore.ReferencedComponent}s to specify how the
- * {@see org.eclipse.wst.common.modulecore.ReferencedComponent}&nbsp; should be absorbed by the
- * containing {@see org.eclipse.wst.common.modulecore.WorkbenchComponent}.
- * </p>
- * For clients that need to create one of these objects from scratch,
- * {@see org.eclipse.wst.common.modulecore.ModuleCoreFactory}.
- * <p>
- * A representation of the literals of the enumeration '<em><b>Dependency Type</b></em>', and
- * utility methods for working with them.
- * </p>
- * <p> 
- * See the package overview for an <a href="package-summary.html">overview of the model components</a>.
- * </p>
- * <!-- end-user-doc --> <!-- end-user-doc --> <!-- begin-model-doc --> uses=0 consumes=1 <!--
- * end-model-doc -->
- * 
- * @see org.eclipse.wst.common.componentcore.internal.ModuleCorePackage#getDependencyType()
- * @model
- * @generated
- */
-public final class DependencyType extends AbstractEnumerator {
-	/**
-	 * The '<em><b>Uses</b></em>' literal value.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>Uses</b></em>' literal object isn't clear, there really should
-	 * be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @see #USES_LITERAL
-	 * @model name="uses"
-	 * @generated
-	 * @ordered
-	 */
-	public static final int USES = 0;
-
-	/**
-	 * The '<em><b>Consumes</b></em>' literal value.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>Consumes</b></em>' literal object isn't clear, there really
-	 * should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @see #CONSUMES_LITERAL
-	 * @model name="consumes"
-	 * @generated
-	 * @ordered
-	 */
-	public static final int CONSUMES = 1;
-
-	/**
-	 * The '<em><b>Uses</b></em>' literal object.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see #USES
-	 * @generated
-	 * @ordered
-	 */
-	public static final DependencyType USES_LITERAL = new DependencyType(USES, "uses");
-
-	/**
-	 * The '<em><b>Consumes</b></em>' literal object. <!-- begin-user-doc --> <!-- end-user-doc
-	 * -->
-	 * 
-	 * @see #CONSUMES
-	 * @generated
-	 * @ordered
-	 */
-	public static final DependencyType CONSUMES_LITERAL = new DependencyType(CONSUMES, "consumes");
-
-	/**
-	 * An array of all the '<em><b>Dependency Type</b></em>' enumerators.
-	 * <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final DependencyType[] VALUES_ARRAY =
-		new DependencyType[] {
-			USES_LITERAL,
-			CONSUMES_LITERAL,
-		};
-
-	/**
-	 * A public read-only list of all the '<em><b>Dependency Type</b></em>' enumerators. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 */
-	public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-	/**
-	 * Returns the '<em><b>Dependency Type</b></em>' literal with the specified name.
-	 * <!-- begin-user-doc --> 
-	 * @param name passes literal name
-	 * @return literal instance
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public static DependencyType get(String name) {
-		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-			DependencyType result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
-				return result;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the '<em><b>Dependency Type</b></em>' literal with the specified value.
-	 *  <!-- begin-user-doc -->
-	 * @param value passes literal value
-	 * @return literal instance
-	 *  <!-- end-user-doc -->
-	 * @generated
-	 */
-	public static DependencyType get(int value) {
-		switch (value) {
-			case USES: return USES_LITERAL;
-			case CONSUMES: return CONSUMES_LITERAL;
-		}
-		return null;	
-	}
-
-	/**
-	 * Only this class can construct instances.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	private DependencyType(int value, String name) {
-		super(value, name);
-	}
-
-} //DependencyType
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/IComponentProjectMigrator.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/IComponentProjectMigrator.java
deleted file mode 100644
index 0f66ad1..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/IComponentProjectMigrator.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.core.resources.IProject;
-
-public interface IComponentProjectMigrator {
-	public void migrateProject(IProject project);
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleCoreValidator.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleCoreValidator.java
deleted file mode 100644
index 0372d3c..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleCoreValidator.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.ILock;
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.xmi.XMIResource;
-import org.eclipse.wst.common.componentcore.ModuleCoreNature;
-import org.eclipse.wst.common.componentcore.internal.impl.WTPModulesResource;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorResource;
-import org.eclipse.wst.common.internal.emfworkbench.edit.EMFWorkbenchEditContextFactory;
-import org.eclipse.wst.common.project.facet.core.internal.FacetedProjectNature;
-import org.eclipse.wst.validation.internal.core.Message;
-import org.eclipse.wst.validation.internal.core.ValidationException;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IValidationContext;
-import org.eclipse.wst.validation.internal.provisional.core.IValidatorJob;
-
-
-public class ModuleCoreValidator implements IValidatorJob {
-		protected IReporter _reporter;
-
-		public ModuleCoreValidator() {
-			super();
-			// TODO Auto-generated constructor stub
-		}
-		
-		public Resource getPrimaryResource(IProject project) {
-			// see https://bugs.eclipse.org/bugs/show_bug.cgi?id=181334; Changing this method to call ModuleStructuralModel.getPrimaryResource() method instead.
-			// This does two things:
-			// 1. Reorders the locks to prevent deadlock between locking the resource (Bugzilla 181334),
-			//	  then the edit model and
-			// 2. Reuses code. (The code between this method and MSM.getPrimaryResource() is identical.
-			StructureEdit structureEdit = StructureEdit.getStructureEditForRead(project);
-			if (structureEdit != null) {
-				ModuleStructuralModel structuralModel = structureEdit.getModuleStructuralModel();
-				if (structuralModel != null) {
-					// acquiring the ModuleStructuralModel lock here first because the call to getPrimaryResource()
-					// will cause this lock to be acquired later resulting in a potential deadlock
-					ILock lock = EMFWorkbenchEditContextFactory.getProjectLockObject(structuralModel.getProject());
-					try{
-						if(null != lock){
-							lock.acquire();
-						}
-						synchronized(structuralModel){
-							return structuralModel.getPrimaryResource();
-						}
-					} finally{
-						if(null != lock){
-							lock.release();
-						}
-					}
-				}
-			}
-			return null;
-		}
-
-/* bug197531 - standardize compiler settings
-		private ResourceSet getResourceSet(IProject proj) {
-			ModuleCoreNature nature = ModuleCoreNature.getModuleCoreNature(proj);
-			return nature.getResourceSet();
-		}
-*/
-
-		public IStatus validateInJob(IValidationContext helper, IReporter reporter)
-				throws ValidationException {
-			_reporter = reporter;
-			//Remove all markers related to this validator
-			_reporter.removeAllMessages(this);
-			//Using the helper class, load the module model
-			IProject proj = (IProject) helper
-					.loadModel(ModuleCoreValidatorHelper.MODULECORE, null);
-			try {
-				if (proj.isAccessible() && proj.hasNature(ModuleCoreNature.MODULE_NATURE_ID)) {
-					if (needsMigrating(proj))
-						_reporter.addMessage(this, new Message("modulecore",
-								IMessage.HIGH_SEVERITY,
-								"NEEDSMIGRATING", null, proj));
-				}
-			} catch (CoreException e) {
-				// TODO Auto-generated catch block
-				e.printStackTrace();
-			}
-			
-			return Status.OK_STATUS;
-		}
-		public ISchedulingRule getSchedulingRule(IValidationContext helper) {
-			return null;
-		}
-
-		public void cleanup(IReporter reporter) {
-			_reporter = null;
-
-		}
-		private boolean needsMigrating(IProject project) throws CoreException {
-			XMIResource res = (XMIResource)getPrimaryResource(project);
-			boolean multiComps = false;
-			if (project==null)
-				return false;
-			boolean needsMigrating = (!project.hasNature(FacetedProjectNature.NATURE_ID)) || res == null || ((res != null) && ((WTPModulesResource)res).getRootObject() == null); //|| (res!=null && !res.isLoaded() && ((WTPModulesResource)res).getRootObject() != null);
-			if (!needsMigrating) {
-				if (res instanceof TranslatorResource && ((TranslatorResource)res).getRootObject() instanceof ProjectComponents) {
-					ProjectComponents components = (ProjectComponents) ((WTPModulesResource)res).getRootObject();
-					if (components.getComponents() != null) {
-						multiComps = components.getComponents().size() > 1;
-						return multiComps;
-					}
-				}
-			}
-			return needsMigrating;
-		}
-
-		public void validate(IValidationContext helper, IReporter reporter)
-				throws ValidationException {
-			// Forwarding to job method
-			validateInJob(helper, reporter);
-		}
-	}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleCoreValidatorHelper.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleCoreValidatorHelper.java
deleted file mode 100644
index 1969f61..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleCoreValidatorHelper.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.wst.validation.internal.operations.WorkbenchContext;
-
-
-public class ModuleCoreValidatorHelper extends WorkbenchContext {
-
-		public static final String MODULECORE = "MODULECORE";
-		public ModuleCoreValidatorHelper() {
-			super();
-			//	the following will register the helper's symbolic methods
-		    Class [] args = new Class[0] ;
-		    registerModel(MODULECORE, "loadModel", args);
-		}
-		/**
-		 * Load the Trading Session for validation
-		 */
-		public Object loadModel() {
-		return getProject();
-
-	}		
-		/**
-		 * Given a resource, return its non-eclipse-specific location. If this
-		 * resource, or type of resource, isn't handled by this helper, return
-		 * null.
-		 */
-		public String getPortableName(IResource resource) {
-			
-			return resource.getFullPath().toString();
-		}
-	}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleMigratorManager.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleMigratorManager.java
deleted file mode 100644
index 88a9078..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleMigratorManager.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import java.util.HashMap;
-import java.util.HashSet;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.wst.common.componentcore.ModuleCoreNature;
-import org.eclipse.wst.common.componentcore.datamodel.ProjectMigratorDataModelProvider;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IProjectMigratorDataModelProperties;
-import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.frameworks.internal.datamodel.IWorkspaceRunnableWithStatus;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-public class ModuleMigratorManager {
-
-	private static HashMap managerCache = new HashMap();
-	private static HashSet migrated = new HashSet();
-	private boolean migrating;
-	public ModuleMigratorManager() {
-		super();
-	}
-	public static ModuleMigratorManager getManager(IProject proj) {
-		ModuleMigratorManager manager = (ModuleMigratorManager)managerCache.get(proj);
-		if (manager == null) {
-			manager = new ModuleMigratorManager();
-			managerCache.put(proj,manager);
-		}
-		return manager;
-	}
-	private void migrateComponentsIfNecessary(IProject project, boolean multiComps) {
-		
-		setupAndMigrateComponentProject(project);
-		
-	}
-	private void setupAndMigrateComponentProject(IProject proj) {
-		migrated.add(proj);
-		IDataModel dm = DataModelFactory.createDataModel(new ProjectMigratorDataModelProvider());
-		dm.setStringProperty(IProjectMigratorDataModelProperties.PROJECT_NAME,proj.getName());
-		try {
-			dm.getDefaultOperation().execute(null,null);
-		} catch (ExecutionException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
-	}
-	public synchronized void migrateOldMetaData(IProject aProject, final boolean multiComps) throws CoreException {
-		migrating = true;
-		IWorkspaceRunnableWithStatus workspaceRunnable = new IWorkspaceRunnableWithStatus(aProject) {
-			public void run(IProgressMonitor pm) throws CoreException {
-				IProject aProj = (IProject)this.getInfo();
-				try {
-					if (aProj.isAccessible() && ModuleCoreNature.isFlexibleProject(aProj)) {
-						if (aProj.findMember(".wtpmodules") != null) {
-							moveOldMetaDataFile(aProj);
-						}
-						if (needsComponentMigration(aProj,multiComps))
-							migrateComponentsIfNecessary(aProj,multiComps);
-					}
-				} finally {
-					migrating = false;
-				}
-			}
-
-			private boolean needsComponentMigration(IProject aProj,boolean multiComps) throws CoreException {
-				
-			boolean needs = true;
-			if (multiComps)
-				return (needs && multiComps);
-			else
-				return ((aProj.findMember(StructureEdit.MODULE_META_FILE_NAME) == null) && (aProj.findMember(".settings/.component") == null)) || 
-						(ProjectFacetsManager.create(aProj) == null) && needs;
-			}
-		};
-		
-		ResourcesPlugin.getWorkspace().run(workspaceRunnable, null,IWorkspace.AVOID_UPDATE,null);
-		
-		
-		
-		
-	}
-	private void moveMetaDataFile(IProject project) {
-		IResource oldfile = project.findMember(".wtpmodules");
-		if (oldfile != null && oldfile.exists()) {
-			
-			try {
-					IFolder settingsFolder = project.getFolder(".settings");
-					if (!settingsFolder.exists())
-						settingsFolder.create(true,true,null);
-					oldfile.move(new Path(StructureEdit.MODULE_META_FILE_NAME),true,null);
-			} catch (CoreException e) {
-				Platform.getLog(ModulecorePlugin.getDefault().getBundle()).log(new Status(IStatus.ERROR, ModulecorePlugin.PLUGIN_ID, IStatus.ERROR, e.getMessage(), e));
-			}
-		} 
-	}
-	private void moveOldMetaDataFile(IProject project) {
-
-		try {
-				moveMetaDataFile(project);
-				IFolder depFolder = project.getFolder(".deployables");
-				if (depFolder.exists())
-					depFolder.delete(true, null);
-				project.refreshLocal(IResource.DEPTH_INFINITE, null);
-
-		} catch (Exception e) {
-		}
-	}
-	public boolean isMigrating() {
-		return migrating;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleStructuralModel.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleStructuralModel.java
deleted file mode 100644
index 2bdacb1..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModuleStructuralModel.java
+++ /dev/null
@@ -1,426 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.IJobChangeEvent;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.core.runtime.jobs.JobChangeAdapter;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.xmi.XMIResource;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeNode;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeRoot;
-import org.eclipse.wst.common.componentcore.internal.impl.WTPModulesResource;
-import org.eclipse.wst.common.componentcore.internal.impl.WTPModulesResourceFactory;
-import org.eclipse.wst.common.frameworks.internal.SaveFailedException;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedResource;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorResource;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidatorPresenter;
-import org.eclipse.wst.common.project.facet.core.internal.FacetedProjectNature;
-/**
- * Manages the underlying Module Structural Metamodel.
-* <a name="module-structural-model"/>
-* <p>
-* Each ModuleCoreNature from a given project can provide access to the
-* {@see org.eclipse.wst.common.modulecore.ModuleStructuralModel}&nbsp; of the project.
-* {@see org.eclipse.wst.common.modulecore.ModuleStructuralModel}&nbsp; is a subclass of
-* {@see org.eclipse.wst.common.internal.emfworkbench.integration.EditModel}&nbsp;that manages
-* resources associated with the Module Structural Metamodel. As an EditModel, the
-* {@see org.eclipse.wst.common.modulecore.ModuleStructuralModel}&nbsp; references EMF resources,
-* that contain EMF models -- in this case, the EMF model of <i>.component </i> file.
-* </p>
-* <p>
-* Clients are encouraged to use the Edit Facade pattern (via
-* {@see org.eclipse.wst.common.modulecore.ModuleCore}&nbsp; or one if its relevant subclasses)
-* to work directly with the Module Structural Metamodel.
-* </p> 
-* <p>
-* <a href="ModuleCoreNature.html#model-discussion">See the discussion</a> of how ModuleStructuralModel relates to the ArtifactEditModel and ModuleCoreNature.
-* <a name="accessor-key"/>
-* <p>
-* All EditModels have a lifecycle that must be enforced to keep the resources loaded that are in
-* use, and to unload resources that are not in use. To access an EditModel, clients are required to
-* supply an object token referred to as an accessor key. The accessor key allows the framework to
-* better track which clients are using the EditModel, and to ensure that only a client which has
-* accessed the EditModel with an accessor key may invoke save*()s on that EditModel.
-* </p>
-*/ 
-public class ModuleStructuralModel extends EditModel implements IAdaptable {
-	
-	public static final String R0_7_MODULE_META_FILE_NAME = ".component";
-	public static final String R1_MODULE_META_FILE_NAME = ".settings/.component";
-	public static final String MODULE_CORE_ID = "moduleCoreId"; //$NON-NLS-1$ 
-	private static final String PROJECT_VERSION_1_5 = "1.5.0";
-	private boolean useOldFormat = false;
-	public ModuleStructuralModel(String editModelID, EMFWorkbenchContext context, boolean readOnly) {
-        super(editModelID, context, readOnly);
-    }
-    /**
-	 * Release each of the referenced resources.
-	 */
-	protected void release(ReferencedResource aResource) {
-		if (isReadOnly() && aResource.getReadCount() != 0)
-			aResource.releaseFromRead();
-		else
-			aResource.releaseFromWrite();
-
-	}
-	protected boolean removeResource(Resource aResource) {
-		if (aResource != null) {
-			//First checking if resource is loaded (Which will prevent removing in middle of loading by checking resource adapter lock)
-			aResource.isLoaded();
-			synchronized (aResource) {
-				aResource.eAdapters().remove(resourceAdapter);
-				return getResources().remove(aResource);
-			}
-		}
-		return false;
-	}
-    
-    /* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emfworkbench.integration.EditModel#getPrimaryRootObject()
-	 */
-	public EObject getPrimaryRootObject() {
-		
-		try {
-			Resource res = prepareProjectModulesIfNecessary();
-			if (res == null)
-				return null;
-		} catch (CoreException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
-		EObject modelRoot = null;
-		modelRoot = super.getPrimaryRootObject();
-		if (modelRoot != null) {
-			// if the workspace tree is locked we cannot try to change the .component resource
-			if (ResourcesPlugin.getWorkspace().isTreeLocked())
-				return modelRoot;
-			List components = ((ProjectComponents)modelRoot).getComponents();
-			if (components.size()>0) {
-				WorkbenchComponent wbComp = (WorkbenchComponent)components.get(0);
-				// Check and see if we need to clean up spurrious redundant map entries
-				if (!isVersion15(modelRoot)) {
-					((ProjectComponents)modelRoot).setVersion(PROJECT_VERSION_1_5);
-					cleanupWTPModules(wbComp);
-				}
-			}
-		}
-		return modelRoot;
-	}
-	private boolean isVersion15(EObject modelRoot){
-		return ((ProjectComponents)modelRoot).getVersion().equals(PROJECT_VERSION_1_5);
-	}
-    
-	/**
-	 * This method is used to remove spurrious redundant entries from the .component file
-	 * 
-	 * @param wbComp
-	 */
-	public void cleanupWTPModules(WorkbenchComponent wbComp) {
-		if (wbComp == null)
-			return;
-		ResourceTreeRoot root = ResourceTreeRoot.getSourceResourceTreeRoot(wbComp);
-		List rootResources = getModuleResources(root);
-		// Only if we need to do a clean, do we clear, add all required root resource mappings, and save
-		if (!(wbComp.getResources().containsAll(rootResources) && wbComp.getResources().size()==rootResources.size())) {
-			final ModuleStructuralModel model = new ModuleStructuralModel(getEditModelID(),getEmfContext(),false);
-			if(model == null){
-				return;
-			}
-			boolean jobScheduled = false;
-			try {
-				final Object key = new Object();
-				model.access(key);
-				
-				wbComp.getResources().clear();
-				wbComp.getResources().addAll(rootResources);
-				URI uri = wbComp.eResource().getURI();
-				//need to get this resource into the model
-				Resource resource = model.getResource(uri);
-				//need to manually dirty this resource in order for it to save.
-				resource.setModified(true);
-				//this job is necessary to avoid the deadlock in 
-				//https://bugs.eclipse.org/bugs/show_bug.cgi?id=181253
-				class SaveJob extends Job {
-					
-					public SaveJob() {
-						super("Save ModuleStructuralModel Job");
-					}
-					
-					protected IStatus run(IProgressMonitor monitor) {
-						try {
-							model.save(key);
-							return OK_STATUS;
-						} finally {
-							disposeOnce();
-						}
-					}
-					
-					private boolean disposedAlready = false;
-					
-					public void disposeOnce(){
-						if(!disposedAlready){
-							disposedAlready = true;
-							model.dispose();
-						}
-					}
-				};
-				final SaveJob saveJob = new SaveJob();
-				saveJob.addJobChangeListener(new JobChangeAdapter(){
-					public void done(IJobChangeEvent event) {
-						saveJob.disposeOnce();
-					}
-				});
-				saveJob.setSystem(true);
-				saveJob.schedule();
-				jobScheduled = true;
-			} finally {
-				if (!jobScheduled && model != null)
-					model.dispose();
-			}
-		} 
-	}
-    
-	/**
-	 * This is a recursive method to find all the root level resources in the children's resource tree roots
-	 * 
-	 * @param node
-	 * @return List of module resources
-	 */
-	public List getModuleResources(ResourceTreeNode node) {
-		// If the resource node has module resources just return them
-		if (node.getModuleResources().length>0)
-			return Arrays.asList(node.getModuleResources());
-		// Otherwise, the root resource maps are really at the next level or lower
-		List rootResources = new ArrayList();
-		Map children = node.getChildren();
-		Iterator iter = children.values().iterator();
-		while (iter.hasNext()) {
-			ResourceTreeNode subNode = (ResourceTreeNode) iter.next();
-			// recursively call method to obtain module resources
-			rootResources.addAll(getModuleResources(subNode));
-		}
-		return rootResources;
-	}
-	public Resource prepareProjectModulesIfNecessary() throws CoreException {
-		XMIResource res;
-		if (!isComponentSynchronizedOrNull()) {
-			//Return if component file is out of sync from workspace
-			return null;
-		}
-		res = (XMIResource) getPrimaryResource();
-		if (res != null && resNeedsMigrating(res) && !useOldFormat)
-			return null;
-		if(res == null)
-			res = makeWTPModulesResource();		
-		try {
-			addProjectModulesIfNecessary(res);
-		} catch (IOException e) {		
-			Platform.getLog(ModulecorePlugin.getDefault().getBundle()).log(new Status(IStatus.ERROR, ModulecorePlugin.PLUGIN_ID, IStatus.ERROR, e.getMessage(), e));
-		} 
-		return res;
-	}
-	
-	/**
-	 * This methods checks the status of the component file, and first checks for existance, then if its locally synchronized
-	 * @return boolean
-	 */
-	private boolean isComponentSynchronizedOrNull() {
-		IFile componentFile = getProject().getFile(StructureEdit.MODULE_META_FILE_NAME);
-		IPath componentFileLocation = componentFile.getLocation();
-		if (componentFileLocation != null && !componentFileLocation.toFile().exists()) {
-			componentFile = getProject().getFile(R1_MODULE_META_FILE_NAME);
-			componentFileLocation = componentFile.getLocation();
-			if (componentFileLocation != null && !componentFileLocation.toFile().exists()) {
-				componentFile = getProject().getFile(R0_7_MODULE_META_FILE_NAME);
-				componentFileLocation = componentFile.getLocation();
-				if (componentFileLocation != null && !componentFileLocation.toFile().exists()) 
-					return true;
-			}
-		}
-		if (componentFileLocation == null)
-			return true;
-		else return componentFile.isSynchronized(IResource.DEPTH_ZERO);
-	}
-	
-	public IFile getComponentFile() {
-		IFile compFile = getProject().getFile(StructureEdit.MODULE_META_FILE_NAME);
-		if (compFile.isAccessible())
-			return compFile;
-		else { //Need to check for legacy file locations also....
-			compFile = getProject().getFile(ModuleStructuralModel.R1_MODULE_META_FILE_NAME);
-			if (compFile.isAccessible())
-				return compFile;
-			else {
-				compFile = getProject().getFile(ModuleStructuralModel.R0_7_MODULE_META_FILE_NAME);
-				if (compFile.isAccessible())
-					return compFile;
-			}
-		}
-		return getProject().getFile(StructureEdit.MODULE_META_FILE_NAME);
-	}
-	
-	public WTPModulesResource  makeWTPModulesResource() {
-		return (WTPModulesResource) createResource(WTPModulesResourceFactory.WTP_MODULES_URI_OBJ);
-	}
-	protected void runSaveOperation(IWorkspaceRunnable runnable, IProgressMonitor monitor) throws SaveFailedException {
-		try {
-			ResourcesPlugin.getWorkspace().run(runnable, null,IWorkspace.AVOID_UPDATE,monitor);
-		} catch (CoreException e) {
-			throw new SaveFailedException(e);
-		}
-	}
-	/**
-	 * @see org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidator#checkActivation(ResourceStateValidatorPresenter)
-	 */
-	public void checkActivation(ResourceStateValidatorPresenter presenter) throws CoreException {
-		super.checkActivation(presenter);
-	}
-	/**
-	 * Subclasses can override - by default this will return the first resource referenced by the
-	 * known resource URIs for this EditModel
-	 * 
-	 * @return
-	 */
-	public Resource getPrimaryResource() {
-		// Overriden to handle loading the .component resource in new and old forms
-		// First will try to load from .settings/org.eclipse.wst.common.component
-		// Second will try to load from the old location(s) .settings/.component or .component
-		
-		URI uri = URI.createURI(StructureEdit.MODULE_META_FILE_NAME);
-		WTPModulesResource res = (WTPModulesResource)getResource(uri);
-		if (res == null || !res.isLoaded()) {
-			removeResource(res);
-			uri = URI.createURI(R1_MODULE_META_FILE_NAME);
-			res = (WTPModulesResource)getResource(uri);
-			if (res == null || !res.isLoaded()) {
-				removeResource(res);
-				uri = URI.createURI(R0_7_MODULE_META_FILE_NAME);
-				res = (WTPModulesResource)getResource(uri);
-				if (res == null || !res.isLoaded()) {
-					removeResource(res);
-					res = null;
-				}
-			}
-		}
-		return res;
-	}
-	
-	public Object getAdapter(Class anAdapter) {
-		return Platform.getAdapterManager().getAdapter(this, anAdapter); 
-	}
-	
-	protected void addProjectModulesIfNecessary(XMIResource aResource) throws IOException {
-		
-		if (aResource != null) { 
-			if(aResource.getContents().isEmpty()) {
-				ProjectComponents projectModules = ComponentcorePackage.eINSTANCE.getComponentcoreFactory().createProjectComponents();
-				projectModules.setProjectName(project.getName());
-				aResource.getContents().add(projectModules); 
-				aResource.setID(projectModules, MODULE_CORE_ID);
-			}
-		}
-	}
-	private boolean resNeedsMigrating(XMIResource res) throws CoreException {
-		boolean multiComps = false;
-		if (project==null)
-			return false;
-		boolean needsMigrating = (!project.hasNature(FacetedProjectNature.NATURE_ID)) || res == null || ((res != null) && ((WTPModulesResource)res).getRootObject() == null); 
-		if (!needsMigrating) {
-			if (res instanceof TranslatorResource && ((TranslatorResource)res).getRootObject() instanceof ProjectComponents) {
-				ProjectComponents components = (ProjectComponents) ((WTPModulesResource)res).getRootObject();
-				if (components.getComponents() != null) {
-					multiComps = components.getComponents().size() > 1;
-					return multiComps;
-				}
-			}
-		}
-		return needsMigrating;
-	}
-	protected Resource getAndLoadLocalResource(URI aUri) {
-		
-			Resource resource = getLocalResource(aUri);
-			if (null != resource) {
-				if (!resource.isLoaded()) {
-					try {
-						resource.load(Collections.EMPTY_MAP); // reload it
-					} catch (IOException e) {
-						// Ignore
-					}
-				}
-			}
-			return resource;
-	}
-	
-	public void setUseOldFormat(boolean useOldFormat) {
-		this.useOldFormat = useOldFormat;
-	}
-	
-	public void saveIfNecessary(IProgressMonitor monitor, Object accessorKey) {
-		// Always force save
-		super.save(monitor, accessorKey);
-	}
-	@Override
-	public void access(Object accessorKey) {
-		
-		super.access(accessorKey);
-//		StringBuffer buffer = new StringBuffer("Access Module model (");
-//		buffer.append(this.hashCode());
-//		buffer.append(") Project: ");
-//		buffer.append(this.getProject());
-//		if (isReadOnly())
-//			buffer.append(" R = "); //$NON-NLS-1$
-//		else
-//			buffer.append(" W = "); //$NON-NLS-1$
-//		buffer.append(getRegistry().size());
-//		System.out.println(buffer.toString());
-				
-	}
-	@Override
-	public void releaseAccess(Object accessorKey) {
-		
-		super.releaseAccess(accessorKey);
-//		StringBuffer buffer = new StringBuffer("Release Module model (");
-//		buffer.append(this.hashCode());
-//		buffer.append(") Project: ");
-//		buffer.append(this.getProject());
-//		if (isReadOnly())
-//			buffer.append(" R = "); //$NON-NLS-1$
-//		else
-//			buffer.append(" W = "); //$NON-NLS-1$
-//		buffer.append(getRegistry().size());
-//		System.out.println(buffer.toString());
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModulecorePlugin.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModulecorePlugin.java
deleted file mode 100644
index abb55db..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ModulecorePlugin.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdapterManager;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.wst.common.componentcore.ArtifactEdit;
-import org.eclipse.wst.common.componentcore.internal.impl.PlatformURLModuleConnection;
-import org.eclipse.wst.common.componentcore.internal.impl.WTPModulesInit;
-import org.eclipse.wst.common.componentcore.internal.util.ArtifactEditAdapterFactory;
-import org.eclipse.wst.common.componentcore.internal.util.ModuleCoreEclipseAdapterFactory;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.osgi.framework.BundleContext;
-import java.lang.Throwable;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class ModulecorePlugin extends Plugin {
-	//The shared instance.
-	private static ModulecorePlugin plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	//plugin id
-	public static final String PLUGIN_ID = "org.eclipse.wst.common.modulecore"; //$NON-NLS-1$
-	
-	/**
-	 * The constructor.
-	 */
-	public ModulecorePlugin() {
-		super();
-		plugin = this;
-	}
-
-	/**
-	 * This method is called upon plug-in activation
-	 */
-	public synchronized void start(BundleContext context) throws Exception {
-		
-		super.start(context);
-		IAdapterManager manager = Platform.getAdapterManager();
-		
-		manager.registerAdapters(new ModuleCoreEclipseAdapterFactory(), ModuleStructuralModel.class);
-		manager.registerAdapters(new ArtifactEditAdapterFactory(), ArtifactEditModel.class);
-		manager.registerAdapters(new ArtifactEditAdapterFactory(), ArtifactEdit.class);
-		manager.registerAdapters(new ArtifactEditAdapterFactory(), IVirtualComponent.class);
-		manager.registerAdapters(new ModuleCoreEclipseAdapterFactory(), IResource.class);
-		
-		PlatformURLModuleConnection.startup();
-		WTPModulesInit.init();
-	}
-
-	/**
-	 * This method is called when the plug-in is stopped
-	 */
-	public void stop(BundleContext context) throws Exception {
-		super.stop(context);
-		plugin = null;
-		resourceBundle = null;
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static ModulecorePlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String key) {
-		ResourceBundle bundle = ModulecorePlugin.getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		try {
-			if (resourceBundle == null)
-				resourceBundle = ResourceBundle.getBundle("modulecore"); //$NON-NLS-1$
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-		return resourceBundle;
-	}
-	
-
-	/**
-	 * Record an error against this plugin's log. 
-	 * 
-	 * @param aCode
-	 * @param aMessage
-	 * @param anException
-	 */
-	public static void logError(int aCode, String aMessage,
-			Throwable anException) {
-		getDefault().getLog().log(
-				createErrorStatus(aCode, aMessage, anException));
-	}
-
-	/**
-	 * 
-	 * Record a message against this plugin's log. 
-	 * 
-	 * @param severity
-	 * @param aCode
-	 * @param aMessage
-	 * @param exception
-	 */
-	public static void log(int severity, int aCode, String aMessage,
-			Throwable exception) {
-		log(createStatus(severity, aCode, aMessage, exception));
-	}
-
-	/**
-	 * 
-	 * Record a status against this plugin's log. 
-	 * 
-	 * @param aStatus
-	 */
-	public static void log(IStatus aStatus) {
-		getDefault().getLog().log(aStatus);
-	}
-
-	/**
-	 * Create a status associated with this plugin.
-	 *  
-	 * @param severity
-	 * @param aCode
-	 * @param aMessage
-	 * @param exception
-	 * @return A status configured with this plugin's id and the given parameters.
-	 */
-	public static IStatus createStatus(int severity, int aCode,
-			String aMessage, Throwable exception) {
-		return new Status(severity, PLUGIN_ID, aCode,
-				aMessage != null ? aMessage : "No message.", exception); //$NON-NLS-1$
-	}
-
-	/**
-	 * 
-	 * @param aCode
-	 * @param aMessage
-	 * @param exception
-	 * @return A status configured with this plugin's id and the given parameters.
-	 */
-	public static IStatus createErrorStatus(int aCode, String aMessage,
-			Throwable exception) {
-		return createStatus(IStatus.ERROR, aCode, aMessage, exception);
-	}
-
-	public static IStatus createStatus(int severity, String message, Throwable exception) {
-		return new Status(severity, PLUGIN_ID, message, exception);
-	}
-
-	public static IStatus createStatus(int severity, String message) {
-		return createStatus(severity, message, null);
-	}
-
-	public static void logError(Throwable exception) {
-		Platform.getLog(Platform.getBundle(PLUGIN_ID)).log( createStatus(IStatus.ERROR, exception.getMessage(), exception));
-	}
-
-	public static void logError(CoreException exception) {
-		Platform.getLog(Platform.getBundle(PLUGIN_ID)).log( exception.getStatus() );
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ProjectComponents.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ProjectComponents.java
deleted file mode 100644
index 70a8a80..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ProjectComponents.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc --> 
- * Provides a root object to store and manage the
- * {@see org.eclipse.wst.common.modulecore.WorkbenchComponent}s. * 
- * <p>
- * See the package overview for an <a href="package-summary.html">overview of the model components </a>.
- * </p>
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ProjectComponents#getProjectName <em>Project Name</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ProjectComponents#getComponents <em>Components</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ProjectComponents#getVersion <em>Version</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getProjectComponents()
- * @model
- * @generated
- */
-public interface ProjectComponents extends EObject {
-	/**
-	 * Returns the value of the '<em><b>Project Name</b></em>' attribute.
-	 * The default value is <code>""</code>.
-	 * <!-- begin-user-doc
-	 * -->
-	 * <p>
-	 * If the meaning of the '<em>Project Name</em>' attribute isn't clear, there really should
-	 * be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Project Name</em>' attribute.
-	 * @see #setProjectName(String)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getProjectComponents_ProjectName()
-	 * @model default="" required="true"
-	 * @generated
-	 */
-	String getProjectName();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ProjectComponents#getProjectName <em>Project Name</em>}' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Project Name</em>' attribute.
-	 * @see #getProjectName()
-	 * @generated
-	 */
-	void setProjectName(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Components</b></em>' containment reference list.
-	 * The list contents are of type {@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Components</em>' containment reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Components</em>' containment reference list.
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getProjectComponents_Components()
-	 * @model type="org.eclipse.wst.common.componentcore.internal.WorkbenchComponent" containment="true"
-	 * @generated
-	 */
-	EList getComponents();
-
-	/**
-	 * Returns the value of the '<em><b>Version</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Version</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Version</em>' attribute.
-	 * @see #setVersion(String)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getProjectComponents_Version()
-	 * @model required="true"
-	 * @generated
-	 */
-	String getVersion();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ProjectComponents#getVersion <em>Version</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Version</em>' attribute.
-	 * @see #getVersion()
-	 * @generated
-	 */
-	void setVersion(String value);
-
-	public WorkbenchComponent findWorkbenchModule(String aDeployName);
-
-} // ProjectComponents
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ProjectMigratorRegistry.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ProjectMigratorRegistry.java
deleted file mode 100644
index f6883ca..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ProjectMigratorRegistry.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Oct 29, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.wst.common.componentcore.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.jem.util.RegistryReader;
-
-/**
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class ProjectMigratorRegistry extends RegistryReader {
-
-	static final String EXTENSION_NAME = "ComponentProjectMigrator"; //$NON-NLS-1$
-	static final String ELEMENT_MIGRATOR_EXTENSION = "migratorExtension"; //$NON-NLS-1$
-	static final String MIGRATOR_CLASS = "class"; //$NON-NLS-1$
-	private List projectMigrators = new ArrayList();
-	private static ProjectMigratorRegistry INSTANCE = null;
-
-	public ProjectMigratorRegistry() {
-		super(ModulecorePlugin.PLUGIN_ID, EXTENSION_NAME);
-	}
-
-	public static ProjectMigratorRegistry getInstance() {
-		if (INSTANCE == null) {
-			INSTANCE = new ProjectMigratorRegistry();
-			INSTANCE.readRegistry();
-		}
-		return INSTANCE;
-	}
-
-	/**
-	 * readElement() - parse and deal w/ an extension like: <earModuleExtension extensionClass =
-	 * "com.ibm.etools.web.plugin.WebModuleExtensionImpl"/>
-	 */
-	public boolean readElement(IConfigurationElement element) {
-		if (!element.getName().equals(ELEMENT_MIGRATOR_EXTENSION))
-			return false;
-
-		IComponentProjectMigrator migrator = null;
-		try {
-			migrator = (IComponentProjectMigrator) element.createExecutableExtension(MIGRATOR_CLASS);
-		} catch (CoreException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
-		if (migrator != null)
-			addModuleExtension(migrator);
-		return true;
-	}
-
-	public IComponentProjectMigrator[] getProjectMigrators(){
-		return (IComponentProjectMigrator[])projectMigrators.toArray(new IComponentProjectMigrator[projectMigrators.size()]);
-	}
-	private void addModuleExtension(IComponentProjectMigrator ext) {
-		projectMigrators.add(ext);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/Property.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/Property.java
deleted file mode 100644
index 350f111..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/Property.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: Property.java,v 1.2 2006/04/27 04:17:40 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Property</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.Property#getName <em>Name</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.Property#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getProperty()
- * @model
- * @generated
- */
-public interface Property extends EObject {
-	/**
-	 * Returns the value of the '<em><b>Name</b></em>' attribute.
-	 * The default value is <code>""</code>.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Name</em>' attribute.
-	 * @see #setName(String)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getProperty_Name()
-	 * @model default="" required="true"
-	 * @generated
-	 */
-	String getName();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.Property#getName <em>Name</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Name</em>' attribute.
-	 * @see #getName()
-	 * @generated
-	 */
-	void setName(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Value</b></em>' attribute.
-	 * The default value is <code>""</code>.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Value</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Value</em>' attribute.
-	 * @see #setValue(String)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getProperty_Value()
-	 * @model default="" required="true"
-	 * @generated
-	 */
-	String getValue();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.Property#getValue <em>Value</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Value</em>' attribute.
-	 * @see #getValue()
-	 * @generated
-	 */
-	void setValue(String value);
-
-} // Property
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ReferencedComponent.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ReferencedComponent.java
deleted file mode 100644
index dea5cf0..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/ReferencedComponent.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc --> 
- * Used to reference {@see org.eclipse.wst.common.modulecore.WorkbenchComponent}s either contained in
- * the same project or remotely. 
- * <p>
- * Each {@see org.eclipse.wst.common.modulecore.WorkbenchComponent}&nbsp; contains a list of its
- * DependentModules.
- * </p> 
- * <p>
- * The referenced {@see WorkbenchComponent}&nbsp; may be in the same project as the
- * {@see WorkbenchComponent}&nbsp; that contains the current ReferencedComponent. Use
- * {@see ModuleCore#isLocalDependency(ReferencedComponent)}&nbsp; to make the determination.
- * </p> 
- * <p>
- * See the package overview for an <a href="package-summary.html">overview of the model components </a>.
- * </p>
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getHandle <em>Handle</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getRuntimePath <em>Runtime Path</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getDependencyType <em>Dependency Type</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getDependentObject <em>Dependent Object</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getArchiveName <em>Archive Name</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getReferencedComponent()
- * @model
- * @generated
- */
-public interface ReferencedComponent extends EObject {
-	/**
-	 * Returns the value of the '<em><b>Handle</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * Returns a fully-qualified URI that conforms to the standard "module:" URI format. The handle
-	 * references the {@see WorkbenchComponent}represented by the current ReferencedComponent.
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Handle</em>' attribute.
-	 * @see #setHandle(URI)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getReferencedComponent_Handle()
-	 * @model dataType="org.eclipse.wst.common.componentcore.internal.URI" required="true"
-	 * @generated
-	 */
-	URI getHandle();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getHandle <em>Handle</em>}' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Handle</em>' attribute.
-	 * @see #getHandle()
-	 * @generated
-	 */
-	void setHandle(URI value);
-
-	/**
-	 * Returns the value of the '<em><b>Runtime Path</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Runtime Path</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Runtime Path</em>' attribute.
-	 * @see #setRuntimePath(IPath)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getReferencedComponent_RuntimePath()
-	 * @model dataType="org.eclipse.wst.common.componentcore.internal.IPath" required="true"
-	 * @generated
-	 */
-	IPath getRuntimePath();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getRuntimePath <em>Runtime Path</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Runtime Path</em>' attribute.
-	 * @see #getRuntimePath()
-	 * @generated
-	 */
-	void setRuntimePath(IPath value);
-
-	/**
-	 * Returns the value of the '<em><b>Dependency Type</b></em>' attribute. The literals are
-	 * from the enumeration {@link org.eclipse.wst.common.componentcore.internal.DependencyType}. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * See the class documentation {@see DependencyType}for information on the purpose of this
-	 * field.
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Dependency Type</em>' attribute.
-	 * @see org.eclipse.wst.common.componentcore.internal.DependencyType
-	 * @see #setDependencyType(DependencyType)
-	 * @see org.eclipse.wst.common.componentcore.internal.ModuleCorePackage#getDependentModule_DependencyType()
-	 * @model
-	 * @generated
-	 */
-	DependencyType getDependencyType();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getDependencyType <em>Dependency Type</em>}' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Dependency Type</em>' attribute.
-	 * @see org.eclipse.wst.common.componentcore.internal.DependencyType
-	 * @see #getDependencyType()
-	 * @generated
-	 */
-	void setDependencyType(DependencyType value);
-
-	/**
-	 * Returns the value of the '<em><b>Dependent Object</b></em>' reference.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Dependent Object</em>' reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Dependent Object</em>' reference.
-	 * @see #setDependentObject(EObject)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getReferencedComponent_DependentObject()
-	 * @model
-	 * @generated
-	 */
-	EObject getDependentObject();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getDependentObject <em>Dependent Object</em>}' reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Dependent Object</em>' reference.
-	 * @see #getDependentObject()
-	 * @generated
-	 */
-	void setDependentObject(EObject value);
-
-	/**
-	 * Returns the value of the '<em><b>Archive Name</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Archive Name</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Archive Name</em>' attribute.
-	 * @see #setArchiveName(String)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getReferencedComponent_ArchiveName()
-	 * @model
-	 * @generated
-	 */
-	String getArchiveName();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent#getArchiveName <em>Archive Name</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Archive Name</em>' attribute.
-	 * @see #getArchiveName()
-	 * @generated
-	 */
-	void setArchiveName(String value);
-
-} // ReferencedComponent
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/StructureEdit.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/StructureEdit.java
deleted file mode 100644
index 9b04b00..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/StructureEdit.java
+++ /dev/null
@@ -1,972 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.common.componentcore.internal;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.jobs.ILock;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.jem.util.UIContextDetermination;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.IEditModelHandler;
-import org.eclipse.wst.common.componentcore.ModuleCoreNature;
-import org.eclipse.wst.common.componentcore.UnresolveableURIException;
-import org.eclipse.wst.common.componentcore.internal.impl.ModuleURIUtil;
-import org.eclipse.wst.common.componentcore.internal.impl.PlatformURLModuleConnection;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeNode;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualReference;
-import org.eclipse.wst.common.componentcore.internal.util.EclipseResourceAdapter;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-import org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil;
-import org.eclipse.wst.common.internal.emfworkbench.edit.EMFWorkbenchEditContextFactory;
-import org.eclipse.wst.common.internal.emfworkbench.validateedit.IValidateEditContext;
-
-/**
- * <p>
- * Provides a Facade pattern for accessing the Web Tools Platform EMF Module Model. ModuleCore can
- * be used as a static utility or an instance adapter.
- * </p>
- * <p>
- * ModuleCore hides the management of accessing EditModels (
- * {@see org.eclipse.wst.common.modulecore.ModuleStructuralModel}) correctly. Each project has
- * exactly one ({@see org.eclipse.wst.common.modulecore.ModuleStructuralModel}) for read and
- * exactly one for write. Each of these is shared among all clients and reference counted as
- * necessary. Clients should use ModuleCore when working with the WTP Modules Strcutrual Model.
- * </p>
- * 
- * <p>
- * Each ModuleCore edit facade is designed to manage the EditModel lifecycle for clients. However,
- * while each ModuleCore is designed to be passed around as needed, clients must enforce the
- * ModuleCore lifecycle. The most common method of acquiring a ModuleCore edit facade is to use
- * {@see #getModuleCoreForRead(IProject)}&nbsp;or {@see #getModuleCoreForWrite(IProject)}.
- * </p>
- * <p>
- * When clients have concluded their use of their ModuleCore instance adapter , <b>clients must call
- * {@see #dispose()}</b>.
- * </p>
- * <p>
- * For more information about the underlying EditModel, see <a
- * href="ModuleCoreNature.html#module-structural-model">the discussion of the ModuleStructuralModel
- * </a>.
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- * 
- * @see org.eclipse.wst.common.componentcore.ModuleCoreNature
- * @see org.eclipse.wst.common.componentcore.internal.ModuleStructuralModel
- */
-public class StructureEdit implements IEditModelHandler {
-
-	public static final Class ADAPTER_TYPE = StructureEdit.class;
-
-	public static String MODULE_META_FILE_NAME = ".settings/org.eclipse.wst.common.component"; //$NON-NLS-1$
-
-	private final static ComponentcoreFactory COMPONENT_FACTORY = ComponentcoreFactory.eINSTANCE;
-	private static final ComponentResource[] NO_RESOURCES = new ComponentResource[0];
-	
-	private final ModuleStructuralModel structuralModel;
-	private final Map dependentCores = new HashMap();
-	private IProject aProject;
-	private boolean isStructuralModelSelfManaged;
-	private boolean isReadOnly;
-
-	private static final WorkbenchComponent[] NO_COMPONENTS = new WorkbenchComponent[0];
-
-	/**
-	 * 
-	 * <p>
-	 * Each ModuleCore edit facade is tied to a specific project. A project
-	 * may have multiple ModuleCore edit facades live at any given time.
-	 * </p>
-	 * <p>
-	 * Use to acquire a ModuleCore facade for a specific project that will not
-	 * be used for editing. Invocations of any save*() API on an instance
-	 * returned from This method will throw exceptions.
-	 * </p>
-	 * 
-	 * @param aProject
-	 *            The IProject that contains the WTP Modules model to load
-	 * @return A ModuleCore edit facade to access the WTP Modules Model, null
-	 *         for non-flexible projects
-	 */
-	public static StructureEdit getStructureEditForRead(IProject aProject) {
-		ModuleCoreNature nature = ModuleCoreNature.getModuleCoreNature(aProject);
-		return nature != null ? new StructureEdit(nature, true) : null;
-	}
-
-	/**
-	 * 
-	 * <p>
-	 * Each ModuleCore edit facade is tied to a specific project. A project may have multiple
-	 * ModuleCore edit facades live at any given time.
-	 * </p>
-	 * <p>
-	 * Use to acquire a ModuleCore facade for a specific project that may be used to modify the
-	 * model.
-	 * </p>
-	 * 
-	 * @param aProject
-	 *            The IProject that contains the WTP Modules model to load
-	 * @return A ModuleCore edit facade to access the WTP Modules Model
-	 */
-	public static StructureEdit getStructureEditForWrite(IProject aProject) {
-		ModuleCoreNature nature = ModuleCoreNature.getModuleCoreNature(aProject);
-		return nature != null ? new StructureEdit(nature, false) : null;
-	}
-
-	/**
-	 * <p>
-	 * A convenience API to fetch the {@see ModuleCoreNature}&nbsp;for a particular module URI. The
-	 * module URI must be of the valid form, or an exception will be thrown. The module URI must be
-	 * contained by a project that has a {@see ModuleCoreNature}&nbsp;or null will be returned.
-	 * </p>
-	 * <p>
-	 * <b>This method may return null. </b>
-	 * </p>
-	 * 
-	 * @param aModuleURI
-	 *            A valid, fully-qualified module URI
-	 * @return The ModuleCoreNature of the project associated with aModuleURI
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */
-	public static ModuleCoreNature getModuleCoreNature(URI aModuleURI) throws UnresolveableURIException {
-		IProject container = getContainingProject(aModuleURI);
-		if (container != null)
-			return ModuleCoreNature.getModuleCoreNature(container);
-		return null;
-	}
-
-	/**
-	 * <p>
-	 * For {@see WorkbenchComponent}s that are contained within a project, the containing project
-	 * can be determined with the {@see WorkbenchComponent}'s fully-qualified module URI.
-	 * </p>
-	 * <p>
-	 * The following method will return the the corresponding project for the supplied module URI,
-	 * if it can be determined.
-	 * </p>
-	 * <p>
-	 * The method will not return an inaccessible project.
-	 * </p>
-	 * <p>
-	 * <b>This method may return null. </b>
-	 * </p>
-	 * 
-	 * @param aModuleURI
-	 *            A valid, fully-qualified module URI
-	 * @return The project that contains the module referenced by the module URI
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */
-	public static IProject getContainingProject(WorkbenchComponent aComponent) {	
-		IProject project = ProjectUtilities.getProject(aComponent);
-		if (project != null && project.isAccessible())
-			return project;
-		return null;
-	}
-	
-	/**
-	 * <p>
-	 * For {@see WorkbenchComponent}s that are contained within a project, the containing project
-	 * can be determined with the {@see WorkbenchComponent}'s fully-qualified module URI.
-	 * </p>
-	 * <p>
-	 * The following method will return the the corresponding project for the supplied module URI,
-	 * if it can be determined.
-	 * </p>
-	 * <p>
-	 * The method will not return an inaccessible project.
-	 * </p>
-	 * <p>
-	 * <b>This method may return null. </b>
-	 * </p>
-	 * 
-	 * @param aModuleURI
-	 *            A valid, fully-qualified module URI
-	 * @return The project that contains the module referenced by the module URI
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */
-	public static IProject getContainingProject(URI aModuleURI) throws UnresolveableURIException {
-		ModuleURIUtil.ensureValidFullyQualifiedModuleURI(aModuleURI);
-		String projectName = aModuleURI.segment(ModuleURIUtil.ModuleURI.PROJECT_NAME_INDX);
-		if (projectName == null || projectName.length() == 0)
-			throw new UnresolveableURIException(aModuleURI);
-		IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
-		if (project.isAccessible())
-			return project;
-		return null;
-	}
-
-	/**
-	 * <p>
-	 * Returns the corresponding Eclipse IResource, if it can be determined, for the given
-	 * {@see ComponentResource}. The {@see ComponentResource#getSourcePath()} &nbsp;must return a
-	 * valid resource path for This method to return a valid value. The returned value may be either
-	 * an {@see org.eclipse.core.resources.IFile}&nbsp;or {@see org.eclipse.core.resources.IFolder}.
-	 * A client may use the return value of {@see IResource#getType()}&nbsp;to determine what type
-	 * of resource was returned. (@see IResource#FILE} or {@see IResource#FOLDER}).
-	 * </p>
-	 * <p>
-	 * <b>This method may return null. </b>
-	 * </p>
-	 * 
-	 * @param aModuleResource
-	 *            A ComponentResource with a valid sourcePath
-	 * @return The corresponding Eclipse IResource, if available.
-	 */
-	public static IResource getEclipseResource(ComponentResource aModuleResource) {
-		EclipseResourceAdapter eclipseResourceAdapter = (EclipseResourceAdapter) ExtendedEcoreUtil.getAdapter(aModuleResource,aModuleResource.eAdapters(), EclipseResourceAdapter.ADAPTER_TYPE);
-		if (eclipseResourceAdapter != null)
-			return eclipseResourceAdapter.getEclipseResource();
-		eclipseResourceAdapter = new EclipseResourceAdapter();
-		aModuleResource.eAdapters().add(eclipseResourceAdapter);
-		return eclipseResourceAdapter.getEclipseResource();
-	}
-
-	/**
-	 * <p>
-	 * Parses the supplied URI for the deployed name name of the {@see WorkbenchComponent}&nbsp;referenced
-	 * by the URI.
-	 * </p>
-	 * 
-	 * @param aFullyQualifiedModuleURI
-	 *            A valid, fully-qualified module URI
-	 * @return The deployed name of the referenced {@see WorkbenchComponent}
-	 * @throws UnresolveableURIException
-	 *             If the supplied URI is invalid or unresolveable
-	 */
-	public static String getDeployedName(URI aFullyQualifiedModuleURI) throws UnresolveableURIException {
-		return ModuleURIUtil.getDeployedName(aFullyQualifiedModuleURI);
-	}
-
-	//public static ComponentType getComponentType(IVirtualContainer aComponent) {
-	public static ComponentType getComponentType(IVirtualComponent aComponent) {
-		StructureEdit componentCore = null;
-		ComponentType componentType = null;
-		try {
-			componentCore = StructureEdit.getStructureEditForRead(aComponent.getProject());
-			WorkbenchComponent wbComponent = componentCore.getComponent();
-			componentType = wbComponent.getComponentType();
-		} finally {
-			if (componentCore != null)
-				componentCore.dispose();
-		}
-		return componentType;
-	}
-
-	public static IVirtualReference createVirtualReference(IVirtualComponent context, ReferencedComponent referencedComponent) {
-
-		IVirtualComponent targetComponent = null;
-		IProject targetProject = null;
-		URI uri = referencedComponent.getHandle();
-		if (uri == null)
-			return null;
-		boolean isClassPathURI = ModuleURIUtil.isClassPathURI(uri);
-		if( !isClassPathURI ){
-			try { 
-				targetProject = StructureEdit.getContainingProject(uri);
-			} catch(UnresolveableURIException uurie) {
-				//Ignore
-			} 
-			// if the project cannot be resolved, assume it's local - really it probably deleted 
-			
-			targetComponent = ComponentCore.createComponent(targetProject);  
-				
-
-		}else{
-			String archiveType = ""; //$NON-NLS-1$
-			String archiveName = ""; //$NON-NLS-1$
-			try {
-				archiveType = ModuleURIUtil.getArchiveType(uri);
-				archiveName = ModuleURIUtil.getArchiveName(uri);
-				
-			} catch (UnresolveableURIException e) {
-				//Ignore
-			}
-			targetComponent = ComponentCore.createArchiveComponent(context.getProject(), archiveType + IPath.SEPARATOR + archiveName ); 
-		}
-		return new VirtualReference(context, targetComponent, referencedComponent.getRuntimePath(), referencedComponent.getDependencyType().getValue());
-	}
-
-	protected StructureEdit(ModuleCoreNature aNature, boolean toAccessAsReadOnly) {
-		if (toAccessAsReadOnly)
-			structuralModel = aNature.getModuleStructuralModelForRead(this);
-		else
-			structuralModel = aNature.getModuleStructuralModelForWrite(this);
-		aProject = aNature.getProject();
-		isReadOnly = toAccessAsReadOnly;
-		isStructuralModelSelfManaged = true;
-	}
-
-	/**
-	 * <p>
-	 * The following constructor is used to manage an already loaded model. Clients should use the
-	 * following line if they intend to use this constructor: <br>
-	 * <br>
-	 * <code>ModuleCore componentCore = (ModuleCore) aStructuralModel.getAdapter(ModuleCore.ADAPTER_TYPE)</code>.
-	 * </p>
-	 * 
-	 * @param aStructuralModel
-	 *            The edit model to be managed by this ModuleCore
-	 */
-	public StructureEdit(ModuleStructuralModel aStructuralModel) {
-		structuralModel = aStructuralModel;
-		aProject = aStructuralModel.getProject();
-	}
-
-	/**
-	 * <p>
-	 * Force a save of the underlying model. The following method should be used with care. Unless
-	 * required, use {@see #saveIfNecessary(IProgressMonitor) instead.
-	 * </p>
-	 * {@inheritDoc}
-	 * 
-	 * @see org.eclipse.wst.common.componentcore.IEditModelHandler#save()
-	 * @throws IllegalStateException
-	 *             If the ModuleCore object was created as read-only
-	 */
-	public void save(IProgressMonitor aMonitor) {
-		if (isReadOnly)
-			throwAttemptedReadOnlyModification();
-		else if (validateEdit().isOK()) { 
-			synchronized (structuralModel) {
-				if (!structuralModel.isDisposed())
-					structuralModel.save(aMonitor, this);
-			}
-		}
-	}
-
-	/**
-	 * <p>
-	 * Save the underlying model only if no other clients are currently using the model. If the
-	 * model is not shared, it will be saved. If it is shared, the save will be deferred.
-	 * </p>
-	 * {@inheritDoc}
-	 * 
-	 * @see org.eclipse.wst.common.componentcore.IEditModelHandler#saveIfNecessary()
-	 * @throws IllegalStateException
-	 *             If the ModuleCore object was created as read-only
-	 */
-	public void saveIfNecessary(IProgressMonitor aMonitor) {
-		if (isReadOnly)
-			throwAttemptedReadOnlyModification();
-		else if (validateEdit().isOK()) { 
-				if (!structuralModel.isDisposed())
-					structuralModel.saveIfNecessary(aMonitor, this);
-		}
-	}
-
-	/**
-	 * <p>
-	 * Clients must call the following method when they have finished using the model, even if the
-	 * ModuleCore edit facade was created as read-only.
-	 * </p>
-	 * {@inheritDoc}
-	 * 
-	 * @see org.eclipse.wst.common.componentcore.IEditModelHandler#dispose()
-	 */
-	public void dispose() {	
-		if (isStructuralModelSelfManaged && structuralModel!=null) {
-			synchronized (structuralModel) {
-				if (!structuralModel.isDisposed())
-					structuralModel.releaseAccess(this);
-			}	
-		}
-		if (dependentCores!=null && dependentCores.size() > 0) {
-			synchronized (dependentCores) {
-				for (Iterator cores = dependentCores.values().iterator(); cores.hasNext();) {
-					StructureEdit core = (StructureEdit) cores.next();
-					if (core != null)
-						core.dispose();
-				}
-			}
-		}
-	}
-
-	/**
-	 * <p>
-	 * Creates a default WTP Module Structural Metamodel file if necessary.
-	 * </p>
-	 */
-	public void prepareProjectComponentsIfNecessary() {
-		
-		synchronized (structuralModel) {
-			if (!structuralModel.isDisposed()) {
-				try {
-					structuralModel.prepareProjectModulesIfNecessary();
-				} catch (CoreException e) {
-					// TODO Auto-generated catch block
-					e.printStackTrace();
-				}
-			}
-		}
-	}
-
-	/**
-	 * <p>
-	 * When loaded for write, the current ModuleCore may return the root object, which can be used
-	 * to add or remove {@see WorkbenchComponent}s. If a client needs to just read the existing
-	 * {@see WorkbenchComponent}s, use {@see #getWorkbenchModules()}.
-	 * </p>
-	 * <p>
-	 * Deadlock Warning: Calling this method requires two locks.  First the component file's file lock
-	 * is required and then the EMFWorkbenchEditContextFactory's projectILock is required.  If another
-	 * thread acquires these same two locks in the opposite order, deadlock could occur.
-	 * </p>
-	 * 
-	 * @return The root object of the underlying model
-	 */
-	public ProjectComponents getComponentModelRoot() {
-		IFile file = structuralModel.getComponentFile();
-		if (!file.isSynchronized(IResource.DEPTH_ONE)) {
-			try {
-				File iofile = file.getFullPath().toFile();
-				if (iofile.exists() || file.exists())
-					file.refreshLocal(IResource.DEPTH_ONE, null);
-			} catch (CoreException ce) {
-				//ignore
-			}
-		}	
-		ProjectComponents comps = null;
-		ILock lock = EMFWorkbenchEditContextFactory.getProjectLockObject(structuralModel.getProject());
-		try{
-			if(null != lock){
-				lock.acquire();
-			}
-			synchronized(structuralModel){
-				if (!structuralModel.isDisposed())
-					comps = (ProjectComponents) structuralModel.getPrimaryRootObject();
-			}
-		} finally{
-			if(null != lock){
-				lock.release();
-			}
-		}
-		
-		return comps;
-	}
-
-	/**
-	 * <p>
-	 * Return the an array of ComponentResource which basically represent the source containers of a
-	 * WorkbenchResource.
-	 * <p>
-	 * 
-	 * @param component
-	 * @return
-	 */
-	public ComponentResource[] getSourceContainers(WorkbenchComponent component) {
-		// TODO Api in progress: Need to return the Java Source containers of the project
-		// TODO MDE: I don't know if I agree with the placement of this method.
-		return null;
-	}
-
-	/**
-	 * <p>
-	 * Clients that wish to modify the individual {@see WorkbenchComponent}&nbsp;instances may use
-	 * this method. If clients need to add or remove {@see WorkbenchComponent}&nbsp;instances, use
-	 * {@see #getProjectModules()}&nbsp;to get the root object and then access the contained
-	 * {@see WorkbenchComponent}s through {@see ProjectComponents#getWorkbenchModules()}.
-	 * 
-	 * @return The WorkbenchModules of the underlying model, if any.
-	 */
-	public WorkbenchComponent[] getWorkbenchModules() {
-		ProjectComponents pc = getComponentModelRoot();
-		if(pc != null) {
-			List wbModules = pc.getComponents();
-			return (WorkbenchComponent[]) wbModules.toArray(new WorkbenchComponent[wbModules.size()]);
-		}
-		return NO_COMPONENTS;
-	}
-
-	/**
-	 * <p>
-	 * Create a {@see WorkbenchComponent}&nbsp;with the given deployed name. The returned module
-	 * will be contained by the root object of the current ModuleCore (so no need to re-add it to
-	 * the Module Module root object). The current ModuleCore must not be read-only to invoke This
-	 * method.
-	 * </p>
-	 * 
-	 * @param aDeployName
-	 *            A non-null String that will be assigned as the deployed-name
-	 * @return A {@see WorkbenchComponent}associated with the current ModuleCore with the supplied
-	 *         deployed name
-	 * @throws IllegalStateException
-	 *             If the current ModuleCore was created as read-only
-	 */
-	public WorkbenchComponent createWorkbenchModule(String aDeployName) {
-		if (isReadOnly)
-			throwAttemptedReadOnlyModification();
-		WorkbenchComponent module = COMPONENT_FACTORY.createWorkbenchComponent();
-		module.setName(aDeployName);
-		getComponentModelRoot().getComponents().add(module);
-		return module;
-	}
-
-	/**
-	 * <p>
-	 * Create a {@see ComponentResource}&nbsp;with the sourcePath of aResource. The current
-	 * ModuleCore must not be read-only to invoke This method.
-	 * </p>
-	 * 
-	 * @param aModule
-	 *            A non-null {@see WorkbenchComponent}to contain the created
-	 *            {@see ComponentResource}
-	 * @param aResource
-	 *            A non-null IResource that will be used to set the sourcePath
-	 * @return A {@see ComponentResource}associated with the current ModuleCore with its sourcePath
-	 *         equivalent to aResource
-	 * @throws IllegalStateException
-	 *             If the current ModuleCore was created as read-only
-	 */
-	public ComponentResource createWorkbenchModuleResource(IResource aResource) {
-		if (isReadOnly)
-			throwAttemptedReadOnlyModification();
-
-		ComponentResource moduleResource = COMPONENT_FACTORY.createComponentResource(); 
-		moduleResource.setSourcePath(aResource.getProjectRelativePath().makeAbsolute());
-		return moduleResource;
-	}
-
-	/**
-	 * <p>
-	 * Create a {@see ComponentType}&nbsp;with the sourcePath of aResource. The returned resource
-	 * will be associated with the current ModuleCore. The current ModuleCore must not be read-only
-	 * to invoke This method.
-	 * </p>
-	 * 
-	 * @param aResource
-	 *            A non-null IResource that will be used to set the sourcePath
-	 * @return A {@see ComponentResource}associated with the current ModuleCore with its sourcePath
-	 *         equivalent to aResource
-	 * @throws IllegalStateException
-	 *             If the current ModuleCore was created as read-only
-	 */
-	public ComponentType createModuleType(String aModuleTypeId) {
-		if (isReadOnly)
-			throwAttemptedReadOnlyModification();
-
-		ComponentType moduleType = COMPONENT_FACTORY.createComponentType();
-		moduleType.setComponentTypeId(aModuleTypeId);
-		return moduleType;
-	}
-
-	/**
-	 * <p>
-	 * Search the given module (indicated by aModuleURI) for the {@see ComponentResource}s
-	 * identified by the module-relative path (indicated by aDeployedResourcePath).
-	 * </p>
-	 * @deprecated To be removed at next Integration Build 04/14/05 MDE. No substitute. (No clients).
-	 * 
-	 * @param aModuleURI
-	 *            A valid, fully-qualified module URI
-	 * @param aDeployedResourcePath
-	 *            A module-relative path to a deployed file
-	 * @return An array of WorkbenchModuleResources that contain the URI specified by the
-	 *         module-relative aDeployedResourcePath
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */
-	public ComponentResource[] findResourcesByRuntimePath(URI aModuleURI, URI aDeployedResourcePath) throws UnresolveableURIException {
-		WorkbenchComponent module = getComponent();
-		return module.findResourcesByRuntimePath(new Path(aDeployedResourcePath.path()));
-	} 
-
-	/**
-	 * <p>
-	 * Search the the module (indicated by the root of aModuleResourcePath) for the
-	 * {@see ComponentResource}s identified by the module-qualified path (indicated by
-	 * aDeployedResourcePath).
-	 * </p>
-	 * @deprecated To be removed at next Integration Build 04/14/05 MDE Use IPath Signature instead.
-	 * 
-	 * @param aModuleResourcePath
-	 *            A valid fully-qualified URI of a deployed resource within a specific
-	 *            WorkbenchComponent
-	 * @return An array of WorkbenchModuleResources that contain the URI specified by
-	 *         aModuleResourcePath
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */
-	public ComponentResource[] findResourcesByRuntimePath(URI aModuleResourcePath) throws UnresolveableURIException {
-
-		URI deployedURI = ModuleURIUtil.trimToDeployPathSegment(aModuleResourcePath);
-		IPath deployedPath = new Path(deployedURI.path());
-		return findResourcesByRuntimePath(ModuleURIUtil.getDeployedName(aModuleResourcePath), deployedPath);
-	}
-	
-	/**
-	 * <p>
-	 * Search the the module (indicated by the root of aModuleResourcePath) for the
-	 * {@see ComponentResource}s identified by the module-qualified path (indicated by
-	 * aDeployedResourcePath).
-	 * </p> 
-	 * 
-	 * @param aModuleResourcePath
-	 *            A valid fully-qualified URI of a deployed resource within a specific
-	 *            WorkbenchComponent
-	 * @return An array of WorkbenchModuleResources that contain the URI specified by
-	 *         aModuleResourcePath
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */
-	public ComponentResource[] findResourcesByRuntimePath(String aModuleName, IPath aModuleResourcePath) {   
-		WorkbenchComponent module = getComponent();
-		return module.findResourcesByRuntimePath(aModuleResourcePath);
-	}
-	public ComponentResource[] findResourcesBySourcePath(URI aWorkspaceRelativePath) throws UnresolveableURIException {
-		return findResourcesBySourcePath(aWorkspaceRelativePath,ResourceTreeNode.CREATE_NONE);
-	}
-	/**
-	 * <p>
-	 * Locates the {@see ComponentResource}s that contain the supplied resource in their source
-	 * path. There are no representations about the containment of the {@see ComponentResource}s
-	 * which are returned. The only guarantee is that the returned elements are contained within the
-	 * same project.
-	 * </p>
-	 * <p>
-	 * The sourcePath of each {@see ComponentResource}&nbsp;will be mapped to either an IFile or an
-	 * IFolder. As a result, if the {@see ComponentResource}&nbsp;is a container mapping, the path
-	 * of the supplied resource may not be identical the sourcePath of the {@see ComponentResource}.
-	 * </p>
-	 * @deprecated To be removed at next Integration Build 04/14/05 MDE Use IPath Signature instead.
-	 * 
-	 * @param aWorkspaceRelativePath
-	 *            A valid fully-qualified workspace-relative path of a given resource
-	 * @return An array of WorkbenchModuleResources which have sourcePaths that contain the given
-	 *         resource
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */
-	public ComponentResource[] findResourcesBySourcePath(URI aWorkspaceRelativePath, int resourceFlag) throws UnresolveableURIException {
-		return findResourcesBySourcePath(new Path(aWorkspaceRelativePath.path()),resourceFlag);
-	}	
-	public ComponentResource[] findResourcesBySourcePath(IPath aProjectRelativePath) throws UnresolveableURIException {
-		return findResourcesBySourcePath(aProjectRelativePath,ResourceTreeNode.CREATE_NONE);
-	}
-	/**
-	 * <p>
-	 * Locates the {@see WorkbenchComponent}s that contains the resource with the given source
-	 * path. There are no representations about the containment of the {@see ComponentResource}s
-	 * which are returned. The only guarantee is that the returned elements are contained within the
-	 * same project.
-	 * </p>
-	 * <p>
-	 * The sourcePath of each {@see ComponentResource}&nbsp;will be mapped to either an IFile or an
-	 * IFolder. As a result, if the {@see ComponentResource}&nbsp;is a container mapping, the path
-	 * of the supplied resource may not be identical the sourcePath of the {@see ComponentResource}.
-	 * </p> 
-	 * 
-	 * @param aProjectRelativePath
-	 *            A valid project-relative path of a given resource
-	 *        resourceFlag
-	 *        	  A bit flag that determines if Resources should be created during the search
-	 *        		CREATE_NONE 
-	 * 				CREATE_RESOURCE_ALWAYS
-	 * 				CREATE_TREENODE_IFNEC
-	 * @return An array of WorkbenchModuleResources which have sourcePaths that contain the given
-	 *         resource
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */
-	public WorkbenchComponent findComponent(IPath aProjectRelativeResourcePath, int resourceFlag) throws UnresolveableURIException {
-		ProjectComponents projectModules = getComponentModelRoot();
-		if (projectModules == null) return null;
-		EList modules = projectModules.getComponents();
-
-		WorkbenchComponent module = null;
-		boolean resourceExists = false;
-		for (int i = 0; i < modules.size(); i++) {
-			module = (WorkbenchComponent) modules.get(i);
-			resourceExists = module.exists(aProjectRelativeResourcePath,resourceFlag);
-			if (!resourceExists && aProjectRelativeResourcePath.segments().length > 1) { 
-				resourceExists = module.exists(aProjectRelativeResourcePath.removeFirstSegments(1),resourceFlag);
-			}
-		if (resourceExists)
-			return module;
-		}
-		return null;
-	}
-	/**
-	 * <p>
-	 * Locates the {@see ComponentResource}s that contain the supplied resource in their source
-	 * path. There are no representations about the containment of the {@see ComponentResource}s
-	 * which are returned. The only guarantee is that the returned elements are contained within the
-	 * same project.
-	 * </p>
-	 * <p>
-	 * The sourcePath of each {@see ComponentResource}&nbsp;will be mapped to either an IFile or an
-	 * IFolder. As a result, if the {@see ComponentResource}&nbsp;is a container mapping, the path
-	 * of the supplied resource may not be identical the sourcePath of the {@see ComponentResource}.
-	 * </p> 
-	 * 
-	 * @param aProjectRelativePath
-	 *            A valid project-relative path of a given resource
-	 *         resourceFlag
-	 *        	  A bit flag that determines if Resources should be created during the search
-	 *        		CREATE_NONE 
-	 * 				CREATE_RESOURCE_ALWAYS
-	 * 				CREATE_TREENODE_IFNEC
-	 * @return An array of WorkbenchModuleResources which have sourcePaths that contain the given
-	 *         resource
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */
-	public ComponentResource[] findResourcesBySourcePath(IPath aProjectRelativePath, int resourceFlag) throws UnresolveableURIException {
-		ProjectComponents projectModules = getComponentModelRoot();
-		if (projectModules==null)
-			return NO_RESOURCES;
-		EList modules = projectModules.getComponents();
-
-		WorkbenchComponent module = null;
-		ComponentResource[] resources = null;
-		List foundResources = new ArrayList();
-		for (int i = 0; i < modules.size(); i++) {
-			module = (WorkbenchComponent) modules.get(i);
-			resources = module.findResourcesBySourcePath(aProjectRelativePath,resourceFlag);
-			if (resources != null && resources.length != 0)
-				foundResources.addAll(Arrays.asList(resources));
-			else if (aProjectRelativePath.segments().length > 1) { 
-				resources = module.findResourcesBySourcePath(aProjectRelativePath.removeFirstSegments(1),resourceFlag);
-				if (resources != null && resources.length != 0)
-					foundResources.addAll(Arrays.asList(resources));
-			}
-		}
-		if (foundResources.size() > 0)
-			return (ComponentResource[]) foundResources.toArray(new ComponentResource[foundResources.size()]);
-		return NO_RESOURCES;
-	}
-
-	/**
-	 * <p>
-	 * Returns the {@see WorkbenchComponent}&nbsp;contained by the current ModuleCore with the
-	 * deploy name aModuleName.
-	 * </p>
-	 * <p>
-	 * <b>This method may return null. </b>
-	 * </p>
-	 * 
-	 * @param aModuleName
-	 * @return The {@see WorkbenchComponent}contained by the current ModuleCore with the deploy
-	 *         name aModuleName
-	 * @see WorkbenchComponent#getDeployedName()
-	 * @deprecated - Use getComponent() - Only one component per project
-	 */
-	public WorkbenchComponent findComponentByName(String aModuleName) {
-		return getComponentModelRoot() != null ? getComponentModelRoot().findWorkbenchModule(aModuleName) : null;
-	}
-
-	/**
-	 * <p>
-	 * Locate and return the {@see WorkbenchComponent}&nbsp;referenced by the fully-qualified
-	 * aModuleURI. The method will work correctly even if the requested {@see WorkbenchComponent}
-	 * &nbsp;is contained by another project.
-	 * </p>
-	 * 
-	 * @param aModuleURI
-	 *            A valid, fully-qualified module URI
-	 * @return The {@see WorkbenchComponent}referenced by aModuleURI
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 * @see WorkbenchComponent#getHandle()
-	 */
-	public WorkbenchComponent findComponentByURI(URI aModuleURI) throws UnresolveableURIException {
-		if (aModuleURI == null)
-			return null;
-		if(aModuleURI.scheme() == null && aModuleURI.segmentCount() == 1)
-			return getComponent();
-		ModuleURIUtil.ensureValidFullyQualifiedModuleURI(aModuleURI);
-		String projectName = aModuleURI.segment(ModuleURIUtil.ModuleURI.PROJECT_NAME_INDX);
-		/* Accessing a local module */
-		if (getProject()!=null && getProject().getName().equals(projectName))
-			return getComponent();
-		StructureEdit dependentCore = getDependentModuleCore(aModuleURI);
-		if (dependentCore != null)
-			return dependentCore.getComponent();
-		return null;
-	}
-
-	/**
-	 * <p>
-	 * Searches the available {@see WorkbenchComponent}s as available through
-	 * {@see #getWorkbenchModules()}&nbsp;for {@see WorkbenchComponent}s that have a
-	 * {@see WorkbenchComponent#getModuleType()}with a a module type Id as specified by
-	 * aModuleTypeId.
-	 * </p>
-	 * 
-	 * @param aModuleTypeId
-	 *            A non-null module type id ({@see ComponentType#getModuleTypeId()})
-	 * @return A non-null array of the {@see WorkbenchComponent}s that match the given module type
-	 *         id
-	 */
-//	public WorkbenchComponent[] findComponentsByType(String aModuleTypeId) {
-//		WorkbenchComponent[] availableModules = getWorkbenchModules();
-//		ComponentType moduleType;
-//		List results = new ArrayList();
-//		for (int i = 0; i < availableModules.length; i++) {
-//			moduleType = availableModules[i].getComponentType();
-//			if (moduleType != null && aModuleTypeId.equals(moduleType.getComponentTypeId()))
-//				results.add(availableModules[i]);
-//		}
-//		if (results.size() == 0)
-//			return NO_MODULES;
-//		return (WorkbenchComponent[]) results.toArray(new WorkbenchComponent[results.size()]);
-//	}
-	
-	/**
-	 * Find and return the ReferencedComponent that represents the depedency from aComponent to aReferencedComponent.
-	 * <p>This method could return null.</p>
-	 * @param aComponent
-	 * @param aReferencedComponent
-	 * @return
-	 */
-	public ReferencedComponent findReferencedComponent(WorkbenchComponent aComponent, WorkbenchComponent aReferencedComponent) {
-		if(aComponent == null || aReferencedComponent == null)
-			return null;
-		
-		IProject referencedProject = getContainingProject(aReferencedComponent);
-		EList referencedComponents = aComponent.getReferencedComponents();
-		String dependentProjectName = null;
-		for (Iterator iter = referencedComponents.iterator(); iter.hasNext();) {
-			ReferencedComponent referencedComponent = (ReferencedComponent) iter.next();
-			dependentProjectName = referencedComponent.getHandle().segment(ModuleURIUtil.ModuleURI.PROJECT_NAME_INDX);
-			if(referencedProject.getName().equals(dependentProjectName)) 
-				return referencedComponent;			
-			
-		}
-		return null;
-	}
-
-	/**
-	 * <p>
-	 * Returns true if the {@see ReferencedComponent}&nbsp;references a {@see WorkbenchComponent}(
-	 * {@see ReferencedComponent#getHandle()}) which is contained by the project that the current
-	 * ModuleCore is managing. The following method will determine if the dependency can be
-	 * satisfied by the current project.
-	 * </p>
-	 * 
-	 * @param aDependentModule
-	 * @return True if the {@see ReferencedComponent}references a {@see WorkbenchComponent}managed
-	 *         directly by the current ModuleCore
-	 */
-	public boolean isLocalDependency(ReferencedComponent aDependentModule) {
-		if (aDependentModule == null || aDependentModule.getHandle()==null)
-			return false;
-		URI dependentHandle = aDependentModule.getHandle();
-		// with no scheme and a simple name, the referenced component must be local
-		if(dependentHandle.scheme() == null && dependentHandle.segmentCount() == 1)  
-			return true; 
-		try {
-
-			String localProjectName = getProject().getName();
-			if(ModuleURIUtil.ensureValidFullyQualifiedModuleURI(dependentHandle, false)) {
-				String dependentProjectName = aDependentModule.getHandle().segment(ModuleURIUtil.ModuleURI.PROJECT_NAME_INDX);
-				return localProjectName.equals(dependentProjectName);
-			}
-		} catch (UnresolveableURIException e) {
-			// Ignore
-		}
-		return false;
-	}
-
-	/**
-	 * @param aModuleURI
-	 *            A valid, fully-qualified module URI
-	 * @return The ModuleCore facade for the supplied URI
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */
-	private StructureEdit getDependentModuleCore(URI aModuleURI) throws UnresolveableURIException {
-		StructureEdit dependentCore = (StructureEdit) dependentCores.get(aModuleURI);
-		if (dependentCore != null)
-			return dependentCore;
-		synchronized (dependentCores) {
-			dependentCore = (StructureEdit) dependentCores.get(aModuleURI);
-			if (dependentCore == null) {
-				IProject container = getContainingProject(aModuleURI);
-				if (container != null) {
-					dependentCore = getStructureEditForRead(container);
-					dependentCores.put(aModuleURI, dependentCore);
-				} else
-					throw new UnresolveableURIException(aModuleURI);
-			}
-		}
-		return dependentCore;
-	}
-
-	private void throwAttemptedReadOnlyModification() {
-		throw new IllegalStateException("Attempt to modify a ModuleCore edit facade that was loaded as read-only.");
-	}
-
-	/**
-	 * temporary method to return first module in the project
-	 * 
-	 * @return first module in the project
-	 * @deprecated
-	 */
-	public WorkbenchComponent getFirstModule() {
-		return getComponent();
-	}
-	/**
-	 * returns the one and only component in the project
-	 * 
-	 * @return the component in the project if exists or null
-	 * 
-	 */
-	public WorkbenchComponent getComponent() {
-		WorkbenchComponent[] comps = getWorkbenchModules();
-		if (comps.length > 0)
-			return comps[0];
-		return null;
-	}
-
-	public static URI createComponentURI(IProject aContainingProject, String aComponentName) {
-		return URI.createURI(PlatformURLModuleConnection.MODULE_PROTOCOL + IPath.SEPARATOR + PlatformURLModuleConnection.RESOURCE_MODULE + aContainingProject.getName() + IPath.SEPARATOR + aComponentName);
-	}
-
-	
-	protected IProject getProject() {
-		return aProject;
-	}
-	
-	public ModuleStructuralModel getModuleStructuralModel() {
-		return structuralModel;
-	}
-	
-	/**
-	 * Validate edit for resource state
-	 */
-	protected IStatus validateEdit() {
-		IValidateEditContext validator = (IValidateEditContext) UIContextDetermination.createInstance(IValidateEditContext.CLASS_KEY);
-		return validator.validateState(getModuleStructuralModel());
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/WorkbenchComponent.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/WorkbenchComponent.java
deleted file mode 100644
index e8d7586..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/WorkbenchComponent.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc --> 
- * An EMF representation of a development-time module contained by an Eclipse project. 
- * <p> 
- * See the package overview for an <a href="package-summary.html">overview of the model components</a>.
- * </p>
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getName <em>Name</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getResources <em>Resources</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getComponentType <em>Component Type</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getReferencedComponents <em>Referenced Components</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getProperties <em>Properties</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getMetadataResources <em>Metadata Resources</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getWorkbenchComponent()
- * @model
- * @generated
- */
-public interface WorkbenchComponent extends EObject {
-	/**
-	 * Returns the value of the '<em><b>Name</b></em>' attribute.
-	 * The default value is <code>""</code>.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Name</em>' attribute.
-	 * @see #setName(String)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getWorkbenchComponent_Name()
-	 * @model default="" required="true"
-	 * @generated
-	 */
-	String getName();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getName <em>Name</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Name</em>' attribute.
-	 * @see #getName()
-	 * @generated
-	 */
-	void setName(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Resources</b></em>' containment reference list.
-	 * The list contents are of type {@link org.eclipse.wst.common.componentcore.internal.ComponentResource}.
-	 * It is bidirectional and its opposite is '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource#getComponent <em>Component</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Resources</em>' reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Resources</em>' containment reference list.
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getWorkbenchComponent_Resources()
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentResource#getComponent
-	 * @model type="org.eclipse.wst.common.componentcore.internal.ComponentResource" opposite="component" containment="true"
-	 * @generated
-	 */
-	EList getResources();
-
-	/**
-	 * Returns the value of the '<em><b>Component Type</b></em>' containment reference.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Component Type</em>' reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Component Type</em>' containment reference.
-	 * @see #setComponentType(ComponentType)
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getWorkbenchComponent_ComponentType()
-	 * @model containment="true" required="true"
-	 * @generated
-	 */
-	ComponentType getComponentType();
-
-	/**
-	 * Sets the value of the '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent#getComponentType <em>Component Type</em>}' containment reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Component Type</em>' containment reference.
-	 * @see #getComponentType()
-	 * @generated
-	 */
-	void setComponentType(ComponentType value);
-
-	/**
-	 * Returns the value of the '<em><b>Referenced Components</b></em>' containment reference list.
-	 * The list contents are of type {@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Referenced Components</em>' reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Referenced Components</em>' containment reference list.
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getWorkbenchComponent_ReferencedComponents()
-	 * @model type="org.eclipse.wst.common.componentcore.internal.ReferencedComponent" containment="true"
-	 * @generated
-	 */
-	EList getReferencedComponents();
-
-	/**
-	 * Returns the value of the '<em><b>Properties</b></em>' reference list.
-	 * The list contents are of type {@link org.eclipse.wst.common.componentcore.internal.Property}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Properties</em>' reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Properties</em>' reference list.
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getWorkbenchComponent_Properties()
-	 * @model type="org.eclipse.wst.common.componentcore.internal.Property"
-	 * @generated
-	 */
-	EList getProperties();
-
-	/**
-	 * Returns the value of the '<em><b>Metadata Resources</b></em>' attribute list.
-	 * The list contents are of type {@link org.eclipse.core.runtime.IPath}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Metadata Resources</em>' attribute list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Metadata Resources</em>' attribute list.
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#getWorkbenchComponent_MetadataResources()
-	 * @model type="org.eclipse.core.runtime.IPath" dataType="org.eclipse.wst.common.componentcore.internal.IPath"
-	 * @generated
-	 */
-	EList getMetadataResources();
-
-	URI getHandle();
-
-	ComponentResource[] findResourcesByRuntimePath(IPath aDeployPath);
-	
-	ComponentResource[] findResourcesBySourcePath(IPath aSourcePath, int resourceFlag);
-	
-	boolean exists(IPath aSourcePath, int resourceFlag);
-
-} // WorkbenchComponent
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraph.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraph.java
deleted file mode 100644
index 74341f2..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraph.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.builder;
-
-import java.util.Collections;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-
-/**
- * @deprecated use {@link IDependencyGraph}
- */
-public class DependencyGraph {
-
-	private static final DependencyGraph INSTANCE = new DependencyGraph();
-
-	public static DependencyGraph getInstance() {
-		return INSTANCE;
-	}
-
-	public IProject[] getReferencingComponents(IProject target) {
-		Set<IProject> referencingComponents = IDependencyGraph.INSTANCE.getReferencingComponents(target);
-		return (IProject[]) referencingComponents.toArray(new IProject[referencingComponents.size()]);
-	}
-
-	public void addReference(IProject target, IProject referencingComponent) {
-		// do nothing
-	}
-
-	public void removeReference(IProject target, IProject referencingComponent) {
-		// do nothing
-	}
-
-	protected Set internalGetReferencingComponents(IProject target) {
-		return Collections.EMPTY_SET;
-	}
-
-	public void clear() {
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphImpl.java
deleted file mode 100644
index 678b9bd..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphImpl.java
+++ /dev/null
@@ -1,502 +0,0 @@
-package org.eclipse.wst.common.componentcore.internal.builder;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.ListenerList;
-import org.eclipse.core.runtime.SafeRunner;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.internal.ModulecorePlugin;
-import org.eclipse.wst.common.componentcore.internal.impl.WTPModulesResourceFactory;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-public class DependencyGraphImpl implements IDependencyGraph {
-
-	/**
-	 * Don't read or write the graph without first obtaining the graphLock.
-	 */
-	private Object graphLock = new Object();
-
-	/**
-	 * If projects and and B both depend on C an entry in this graph would be {C ->
-	 * {A, B} }
-	 */
-	private Map<IProject, Set<IProject>> graph = null;
-	
-	private long modStamp = 0;
-
-	private Map<String, Object> referenceOptions = new HashMap<String, Object>();
-	
-	
-	/**
-	 * This is not public; only {@link IDependencyGraph#INSTANCE} should be
-	 * used.
-	 * 
-	 * @return
-	 */
-	static IDependencyGraph getInstance() {
-		if (instance == null) {
-			instance = new DependencyGraphImpl();
-			instance.initGraph();
-		}
-		return instance;
-	}
-
-	private static DependencyGraphImpl instance = null;
-
-	private DependencyGraphImpl() {
-	}
-
-	public long getModStamp() {
-		synchronized (graphLock) {
-			return modStamp;
-		}
-	}
-
-	public Set<IProject> getReferencingComponents(IProject targetProject) {
-		waitForAllUpdates(null);
-		synchronized (graphLock) {
-			Set<IProject> set = graph.get(targetProject);
-			if (set == null) {
-				return Collections.EMPTY_SET;
-			} else {
-				for (Iterator<IProject> iterator = set.iterator(); iterator.hasNext();) {
-					IProject project = iterator.next();
-					if (!project.isAccessible()) {
-						iterator.remove();
-					}
-				}
-				Set<IProject> copy = new HashSet<IProject>();
-				copy.addAll(set);
-				return copy;
-			}
-		}
-	}
-
-	private class DependencyGraphResourceChangedListener implements IResourceChangeListener, IResourceDeltaVisitor {
-		// only registered for post change events
-		public void resourceChanged(IResourceChangeEvent event) {
-			try {
-				preUpdate();
-				event.getDelta().accept(this);
-			} catch (CoreException e) {
-				ModulecorePlugin.logError(e);
-			} finally {
-				postUpdate();
-			}
-		}
-
-		public boolean visit(IResourceDelta delta) throws CoreException {
-			IResource resource = delta.getResource();
-			switch (resource.getType()) {
-			case IResource.ROOT:
-				return true;
-			case IResource.PROJECT: {
-				int kind = delta.getKind();
-				if ((IResourceDelta.ADDED & kind) != 0) {
-					queueProjectAdded((IProject) resource);
-					return false;
-				} else if ((IResourceDelta.REMOVED & kind) != 0) {
-					queueProjectDeleted((IProject) resource);
-					return false;
-				} else if ((IResourceDelta.CHANGED & kind) != 0) {
-					int flags = delta.getFlags();
-					if ((IResourceDelta.OPEN & flags) != 0) {
-						boolean isOpen = ((IProject) resource).isOpen();
-						if (isOpen) {
-							queueProjectAdded((IProject) resource);
-						} else {
-							queueProjectDeleted((IProject) resource);
-						}
-						return false;
-					}
-					return true;
-				}
-				return false;
-			}
-			case IResource.FOLDER:
-				if (resource.getName().equals(".settings")) {
-					return true;
-				}
-				return false;
-			case IResource.FILE:
-				String name = resource.getName();
-				if (name.equals(WTPModulesResourceFactory.WTP_MODULES_SHORT_NAME)) {
-					update(resource.getProject());
-				}
-			default:
-				return false;
-			}
-		}
-	};
-
-	private DependencyGraphResourceChangedListener listener = null;
-
-	/**
-	 * The graph is built lazily once. Afterwards, the graph is updated as
-	 * necessary.
-	 */
-	private void initGraph() {
-		synchronized (graphLock) {
-			referenceOptions.put("GET_JAVA_REFS", Boolean.FALSE);
-			try {
-				preUpdate();
-				graph = new HashMap<IProject, Set<IProject>>();
-				listener = new DependencyGraphResourceChangedListener();
-				ResourcesPlugin.getWorkspace().addResourceChangeListener(listener, IResourceChangeEvent.POST_CHANGE);
-				initAll();
-			} finally {
-				postUpdate();
-			}
-		}
-	}
-	
-	private void initAll(){
-		synchronized (graphLock) {
-			try{
-				preUpdate();
-				IProject[] allProjects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-				for (IProject sourceProject : allProjects) {
-					queueProjectAdded(sourceProject);
-				}	
-			} finally{
-				postUpdate();
-			}
-			
-		}
-	}
-
-	private void removeAllReferences(IProject project) {
-		synchronized (graphLock) {
-			graph.remove(project);
-			for (Iterator<Set<IProject>> iterator = graph.values().iterator(); iterator.hasNext();) {
-				iterator.next().remove(project);
-			}
-			modStamp++;
-		}
-	}
-
-	private void removeReference(IProject sourceProject, IProject targetProject) {
-		synchronized (graphLock) {
-			Set<IProject> referencingProjects = graph.get(targetProject);
-			if (referencingProjects != null) {
-				referencingProjects.remove(sourceProject);
-			}
-			modStamp++;
-		}
-	}
-
-	private void addReference(IProject sourceProject, IProject targetProject) {
-		synchronized (graphLock) {
-			Set<IProject> referencingProjects = graph.get(targetProject);
-			if (referencingProjects == null) {
-				referencingProjects = new HashSet<IProject>();
-				graph.put(targetProject, referencingProjects);
-			}
-			referencingProjects.add(sourceProject);
-			modStamp++;
-		}
-	}
-
-	public static final Object GRAPH_UPDATE_JOB_FAMILY = new Object();
-
-	private static final int JOB_DELAY = 100;
-
-	private final GraphUpdateJob graphUpdateJob = new GraphUpdateJob();
-	private final Object jobLock = new Object();
-
-	private class GraphUpdateJob extends Job {
-
-		public GraphUpdateJob() {
-			super("Graph Update Job");
-			setSystem(true);
-			//[Bug 238685] need to lock on workspace to avoid dead lock
-			setRule(ResourcesPlugin.getWorkspace().getRoot());
-		}
-
-		public boolean belongsTo(Object family) {
-			if (family == GRAPH_UPDATE_JOB_FAMILY) {
-				return true;
-			}
-			return super.belongsTo(family);
-		}
-
-		// We use the listener list as a thread safe queue.
-		private class Queue extends ListenerList {
-			public synchronized Object[] getListeners() {
-				Object[] data = super.getListeners();
-				clear();
-				return data;
-			}
-
-			public synchronized boolean isEmpty() {
-				return super.isEmpty();
-			}
-		};
-
-		private Queue projectsAdded = new Queue();
-
-		private Queue projectsRemoved = new Queue();
-
-		private Queue projectsUpdated = new Queue();
-
-		public void queueProjectAdded(IProject project) {
-			synchronized (graphLock) {
-				modStamp++;
-			}
-			projectsAdded.add(project);
-		}
-
-		public void queueProjectDeleted(IProject project) {
-			synchronized (graphLock) {
-				modStamp++;
-			}
-			projectsRemoved.add(project);
-		}
-
-		public void queueProjectUpdated(IProject project) {
-			synchronized (graphLock) {
-				modStamp++;
-			}
-			projectsUpdated.add(project);
-		}
-
-		@Override
-		public boolean shouldSchedule() {
-			boolean isEmpty = projectsAdded.isEmpty() && projectsRemoved.isEmpty() && projectsUpdated.isEmpty();
-			return !isEmpty;
-		}
-
-		protected IStatus run(IProgressMonitor monitor) {
-			final Object[] removed = projectsRemoved.getListeners();
-			final Object[] updated = projectsUpdated.getListeners();
-			final Object[] added = projectsAdded.getListeners();
-			if (removed.length == 0 && updated.length == 0 && added.length == 0) {
-				return Status.OK_STATUS;
-			}
-			synchronized (graphLock) {
-				modStamp++;
-			}
-			SafeRunner.run(new ISafeRunnable() {
-				public void handleException(Throwable e) {
-					ModulecorePlugin.logError(e);
-				}
-
-				public void run() throws Exception {
-					// this is the simple case; just remove them all
-					synchronized (graphLock) {
-						for (Object o : removed) {
-							IProject project = (IProject) o;
-							removeAllReferences(project);
-						}
-					}
-					// get the updated queue in case there are any adds
-					// if there are any added projects, then unfortunately the
-					// entire workspace needs to be processed
-					if (added.length > 0) {
-						IProject[] allProjects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-						for (IProject sourceProject : allProjects) {
-							IVirtualComponent component = ComponentCore.createComponent(sourceProject);
-							if (component != null) {
-								IVirtualReference[] references = null;
-								if(referenceOptions != null && component instanceof VirtualComponent) {
-									references = ((VirtualComponent)component).getReferences(referenceOptions);
-								} else {
-									references = component.getReferences();
-								}
-								for (IVirtualReference ref : references) {
-									IVirtualComponent targetComponent = ref.getReferencedComponent();
-									if (targetComponent != null) {
-										IProject targetProject = targetComponent.getProject();
-										if (targetProject != null && !targetProject.equals(sourceProject)) {
-											addReference(sourceProject, targetProject);
-										}
-									}
-								}
-							}
-						}
-					} else if (updated.length > 0) {
-						IProject[] allProjects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-						Set<IProject> validRefs = new HashSet<IProject>();
-						for (Object o : updated) {
-							IProject sourceProject = (IProject) o;
-							IVirtualComponent component = ComponentCore.createComponent(sourceProject);
-							if (component != null) {
-								validRefs.clear();
-								IVirtualReference[] references = null;
-								if(referenceOptions != null && component instanceof VirtualComponent) {
-									references = ((VirtualComponent)component).getReferences(referenceOptions);
-								} else {
-									references = component.getReferences();
-								}
-								for (IVirtualReference ref : references) {
-									IVirtualComponent targetComponent = ref.getReferencedComponent();
-									if (targetComponent != null) {
-										IProject targetProject = targetComponent.getProject();
-										if (targetProject != null && !targetProject.equals(sourceProject)) {
-											validRefs.add(targetProject);
-										}
-									}
-								}
-								synchronized (graphLock) {
-									for (IProject targetProject : allProjects) {
-										// if the reference was identified
-										// above, be sure to add it
-										// otherwise, remove it
-										if (validRefs.remove(targetProject)) {
-											addReference(sourceProject, targetProject);
-										} else {
-											removeReference(sourceProject, targetProject);
-										}
-									}
-								}
-							} else {
-								// if this project is not a component, then it
-								// should be completely removed.
-								removeAllReferences(sourceProject);
-							}
-						}
-					}
-					boolean scheduleUpdate = false;
-					synchronized (graphLock) {
-						if(referenceOptions != null){
-							scheduleUpdate = true;
-							referenceOptions = null;
-						}
-					}
-					if(scheduleUpdate){
-						initAll();
-					}
-					
-				}
-			});
-			// System.err.println(IDependencyGraph.INSTANCE);
-			return Status.OK_STATUS;
-		}
-	};
-
-	/**
-	 * @deprecated use {@link #update(IProject, int)}
-	 */
-	public void queueProjectAdded(IProject project) {
-		update(project, IDependencyGraph.ADDED);
-	}
-
-	/**
-	 * @deprecated use {@link #update(IProject, int)}
-	 */
-	public void queueProjectDeleted(IProject project) {
-		update(project, IDependencyGraph.REMOVED);
-	}
-
-	/**
-	 * @deprecated use {@link #update(IProject, int)}
-	 */
-	public void update(IProject project) {
-		update(project, IDependencyGraph.MODIFIED);
-	}
-
-	public void update(IProject project, final int updateType){
-		switch(updateType){
-		case IDependencyGraph.MODIFIED:
-			graphUpdateJob.queueProjectUpdated(project);
-			break;
-		case IDependencyGraph.ADDED:
-			graphUpdateJob.queueProjectAdded(project);
-			break;
-		case IDependencyGraph.REMOVED:
-			graphUpdateJob.queueProjectDeleted(project);
-			break;
-		}
-		synchronized (jobLock) {
-			if (pauseCount > 0) {
-				return;
-			}
-		}
-		graphUpdateJob.schedule(JOB_DELAY);
-	}
-	
-	
-	
-	private int pauseCount = 0;
-
-	/**
-	 * Pauses updates; any caller of this method must ensure through a
-	 * try/finally block that resumeUpdates is subsequently called.
-	 */
-	public void preUpdate() {
-		synchronized (jobLock) {
-			pauseCount++;
-		}
-	}
-
-	public void postUpdate() {
-		synchronized (jobLock) {
-			if (pauseCount > 0) {
-				pauseCount--;
-			}
-			if (pauseCount > 0) {
-				return;
-			}
-		}
-		graphUpdateJob.schedule(JOB_DELAY);
-	}
-
-	/**
-	 * Blocks until the graph is finished updating
-	 */
-	public void waitForAllUpdates(IProgressMonitor monitor) {
-		Thread graphUpdateThread = graphUpdateJob.getThread();
-		if(graphUpdateThread != null && graphUpdateThread != Thread.currentThread()) {
-			try {
-				graphUpdateJob.join();
-			} catch (InterruptedException e) {
-				ModulecorePlugin.logError(e);
-			}
-		}
-			
-		if(graphUpdateJob.shouldSchedule()){
-			graphUpdateJob.run(monitor);
-		}
-	}
-
-	public String toString() {
-		synchronized (graphLock) {
-			StringBuffer buff = new StringBuffer("Dependency Graph:\n{\n");
-			for (Iterator<Map.Entry<IProject, Set<IProject>>> iterator = graph.entrySet().iterator(); iterator.hasNext();) {
-				Map.Entry<IProject, Set<IProject>> entry = iterator.next();
-				buff.append("  " + entry.getKey().getName() + " -> {");
-				for (Iterator<IProject> mappedProjects = entry.getValue().iterator(); mappedProjects.hasNext();) {
-					buff.append(mappedProjects.next().getName());
-					if (mappedProjects.hasNext()) {
-						buff.append(", ");
-					}
-				}
-				buff.append("}\n");
-			}
-			buff.append("}");
-			return buff.toString();
-		}
-
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphManager.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphManager.java
deleted file mode 100644
index 0b275c8..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/DependencyGraphManager.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.builder;
-
-import org.eclipse.core.resources.IProject;
-
-/**
- * @deprecated use {@link IDependencyGraph}
- */
-public class DependencyGraphManager {
-
-	private static DependencyGraphManager INSTANCE = null;
-
-	private DependencyGraphManager() {
-		super();
-	}
-
-	public synchronized static final DependencyGraphManager getInstance() {
-		if (INSTANCE == null)
-			INSTANCE = new DependencyGraphManager();
-		return INSTANCE;
-	}
-
-	public void construct(IProject project) {
-		// do nothing
-	}
-
-	/**
-	 * Return the dependency graph which was initialized if need be in the
-	 * singleton manager method.
-	 */
-	public DependencyGraph getDependencyGraph() {
-		return DependencyGraph.getInstance();
-	}
-
-	public void forceRefresh() {
-		// do nothing
-	}
-
-	public long getModStamp() {
-		return IDependencyGraph.INSTANCE.getModStamp();
-	}
-
-	public boolean checkIfStillValid(long timeStamp) {
-		return IDependencyGraph.INSTANCE.getModStamp() == timeStamp;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/IDependencyGraph.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/IDependencyGraph.java
deleted file mode 100644
index aa4f58c..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/builder/IDependencyGraph.java
+++ /dev/null
@@ -1,132 +0,0 @@
-package org.eclipse.wst.common.componentcore.internal.builder;
-
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-
-/**
- * This graph provides a backward mapping of project component dependencies. It
- * provides a project limited inverse of
- * {@link IVirtualComponent#getReferences()}.
- * 
- * For example:
- * <ul>
- * <li>if the IVirtualComponent for project A has a dependency on the
- * IVirtualComponent for project B, then calling
- * {@link #getReferencingComponents(IProject)} on project B will return project
- * A. </li>
- * <li>if the IVirtualComponent for project A has a dependency on on the
- * IVirtualComponent for a jar in project B, then calling
- * {@link #getReferencingComponents(IProject)} for project B will return project
- * A. This is true even if project B is not defined as an IVirtualComponent.
- * </li>
- * </ul>
- * 
- * Any call to {@link #getReferencingComponents(IProject)} is always expected to
- * be up to date. The only case where a client may need to force an update is if
- * that client is also defining dynamic IVirtualComponent dependencies, i.e. the
- * client is using the org.eclipse.wst.common.modulecore.componentimpl extension
- * point. Only in this case should a client be calling any of
- * {@link #preUpdate()}, {@link #postUpdate()}, or {@link #update(IProject)}
- * 
- */
-public interface IDependencyGraph {
-
-	/**
-	 * Flag used by {@link #update(IProject, int)} to specify that something has
-	 * modified in a project which has changed the component dependencies.
-	 */
-	public static final int MODIFIED = 0;
-
-	/**
-	 * Flag used by {@link #update(IProject, int)} to specify a project has been
-	 * added or opened. This flag should be used as sparingly as possible
-	 * because there are performance implications.
-	 */
-	public static final int ADDED = 1;
-
-	/**
-	 * Flag used by {@link #update(IProject, int)} to specify a project has been
-	 * removed or closed.
-	 */
-	public static final int REMOVED = 2;
-
-	/**
-	 * The static instance of this graph
-	 */
-	public static IDependencyGraph INSTANCE = DependencyGraphImpl.getInstance();
-
-	/**
-	 * Returns the set of component projects referencing the specified target
-	 * project.
-	 * 
-	 * @param targetProject
-	 * @return
-	 */
-	public Set<IProject> getReferencingComponents(IProject targetProject);
-
-	/**
-	 * Returns a modification stamp. This modification stamp will be different
-	 * if the project dependencies ever change.
-	 */
-	public long getModStamp();
-
-	/**
-	 * WARNING: this should only be called by implementors of the
-	 * org.eclipse.wst.common.modulecore.componentimpl extension point.
-	 * 
-	 * This method is part of the update API.
-	 * 
-	 * @see {@link #update(IProject)}
-	 */
-	public void preUpdate();
-
-	/**
-	 * WARNING: this should only be called by implementors of the
-	 * org.eclipse.wst.common.modulecore.componentimpl extension point.
-	 * 
-	 * This method is part of the update API.
-	 * 
-	 * @see {@link #update(IProject)}
-	 */
-	public void postUpdate();
-
-	/**
-	 * @deprecated use {@link #update(IProject, int) using the #MODIFIED flag.
-	 */
-	public void update(IProject sourceProject);
-
-	/**
-	 * WARNING: this should only be called by implementors of the
-	 * org.eclipse.wst.common.modulecore.componentimpl extension point.
-	 * 
-	 * This method must be called when a resource change is detected which will
-	 * affect how dependencies behave. For example, the core IVirtualComponent
-	 * framework updates when changes are made to the
-	 * .settings/org.eclipse.wst.common.component file changes, and also when
-	 * IProjects are added or removed from the workspace. In the case for J2EE,
-	 * this occurs when changes are made to the META-INF/MANIFEST.MF file. In
-	 * general a call to update should only be made from a fast
-	 * {@link IResourceDeltaVisitor}.
-	 * 
-	 * In order to improve efficiency and avoid unnecessary update processing,
-	 * it is necessary to always proceed calls to update() with a call to
-	 * preUpdate() and follow with a call to postUpdate() using a try finally
-	 * block as follows: <code>
-	 * try {
-	 *     preUpdate();
-	 *     // perform 0 or more update() calls here
-	 * } finally {
-	 *     IDependencyGraph.INSTANCE.postUpdate();
-	 * }    
-	 * </code>
-	 * 
-	 * Valid updateType flags are {@link #MODIFIED}, {@link #ADDED}, and
-	 * {@link #REMOVED}
-	 * 
-	 */
-	public void update(IProject sourceProject, int updateType);
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ArtifactEditModelFactory.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ArtifactEditModelFactory.java
deleted file mode 100644
index 17c57ea..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ArtifactEditModelFactory.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.util.Map;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.wst.common.componentcore.internal.ArtifactEditModel;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class ArtifactEditModelFactory extends EditModelFactory {
-	
-	public static final String MODULE_EDIT_MODEL_ID = "org.eclipse.wst.modulecore.editModel"; //$NON-NLS-1$
-	
-	public static final String PARAM_MODULE_URI = "MODULE_URI"; //$NON-NLS-1$
-	
-	public static final String PARAM_ROOT_URI = "ROOT_URI"; //$NON-NLS-1$
-	
-	public static final String PARAM_ROOT_CONTENT_TYPE = "ROOT_CONTENT_TYPE"; //$NON-NLS-1$
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory#createEditModelForRead(java.lang.String, org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext, java.util.Map)
-	 */
-	public EditModel createEditModelForRead(String editModelID, EMFWorkbenchContext context, Map params) {
-		URI moduleURI = (URI) ((params != null) ? params.get(PARAM_MODULE_URI) : null);
-		URI rootURI = (URI) ((params != null) ? params.get(PARAM_ROOT_URI) : null);
-		String rootContentType = (String) ((params != null) ? params.get(PARAM_ROOT_CONTENT_TYPE) : null);
-		if(moduleURI == null)
-			throw new IllegalStateException("A Module URI must be provided");
-		
-		return  new ArtifactEditModel(editModelID, context, true, moduleURI, rootURI, rootContentType);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory#createEditModelForWrite(java.lang.String, org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext, java.util.Map)
-	 */
-	public EditModel createEditModelForWrite(String editModelID, EMFWorkbenchContext context, Map params) {
-		URI moduleURI = (URI) ((params != null) ? params.get(PARAM_MODULE_URI) : null);
-		URI rootURI = (URI) ((params != null) ? params.get(PARAM_ROOT_URI) : null);
-		String rootContentType = (String) ((params != null) ? params.get(PARAM_ROOT_CONTENT_TYPE) : null);
-		if(moduleURI == null)
-			throw new IllegalStateException("A Module URI must be provided");
-		return  new ArtifactEditModel(editModelID, context, false, moduleURI, rootURI, rootContentType);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory#getCacheID(java.lang.String, java.util.Map)
-	 */
-	public String getCacheID(String editModelID, Map params) { 
-		URI moduleURI = (URI)params.get(PARAM_MODULE_URI);
-		if(moduleURI != null)
-			return editModelID+":"+moduleURI.toString(); //$NON-NLS-1$
-		return editModelID+":NOURI"; //$NON-NLS-1$
-	}
-
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentCoreURIConverter.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentCoreURIConverter.java
deleted file mode 100644
index a2722b6..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentCoreURIConverter.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.impl.URIMappingRegistryImpl;
-import org.eclipse.jem.util.emf.workbench.ResourceSetWorkbenchSynchronizer;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.internal.emfworkbench.CompatibilityWorkbenchURIConverterImpl;
-import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class ComponentCoreURIConverter extends CompatibilityWorkbenchURIConverterImpl {
-	
-	private IProject containingProject;
-//	private IFolder archiveRoot;
-	/**
-	 *  
-	 */
-	public ComponentCoreURIConverter() {
-		super();
-	}
-
-	/**
-	 * @param anInputContainer
-	 */
-	public ComponentCoreURIConverter(IProject aContainingProject) {
-		super();
-		containingProject = aContainingProject;
-	}
-
-	/**
-	 * @param aContainer
-	 * @param aSynchronizer
-	 */
-	public ComponentCoreURIConverter(IProject aContainingProject, ResourceSetWorkbenchSynchronizer aSynchronizer) {
-		super(aContainingProject, aSynchronizer);
-		containingProject = aContainingProject;
-	} 
- 
-	public IVirtualComponent findComponent(IResource res) {
-		
-		if (res != null && res.exists())
-			return ComponentCore.createComponent(res.getProject());
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jem.util.emf.workbench.WorkbenchURIConverterImpl#normalize(org.eclipse.emf.common.util.URI)
-	 */
-	public URI normalize(URI aURI) {
-		URI normalizedURI = null;
-		if(PlatformURLModuleConnection.MODULE.equals(aURI.scheme())) { 		
-			try {
-				normalizedURI = PlatformURLModuleConnection.resolve(aURI);
-			} catch(IOException ioe) {
-				ioe.printStackTrace();
-			} 
-		} else {
-			normalizedURI = super.normalize(aURI);
-		}
-		if(normalizedURI == null) {
-			normalizedURI = newPlatformURI(aURI);
-		}
-		else if(normalizedURI.scheme() == null || normalizedURI.scheme().length() == 0) {
-			normalizedURI = URI.createPlatformResourceURI(getInputContainer().getFullPath().append(normalizedURI.toString()).toString());	
-		}
-		return normalizedURI;
-	}
-	
-	private URI newPlatformURI(URI aNewURI) {
-		
-		try {
-//			String componentName = StructureEdit.getDeployedName(aNewURI);
-			IVirtualComponent component = ComponentCore.createComponent(containingProject);
-
-			URI deployPathSegment = ModuleURIUtil.trimToDeployPathSegment(aNewURI);
-			
-			//IVirtualFile newFile = component.getFile(new Path(deployPathSegment.path()));			
-			IVirtualFolder rootFolder = component.getRootFolder();
-			IVirtualFile newFile = rootFolder.getFile(new Path(deployPathSegment.path()));
-			
-			return URI.createPlatformResourceURI(newFile.getWorkspaceRelativePath().toString());
-			 
-		} catch(Exception e) {
-			e.printStackTrace();
-		}
-		return null;
-	}
-
-	/**
-	 * @see com.ibm.etools.xmi.helpers.CompatibilityURIConverter#deNormalize(URI)
-	 */
-	public URI deNormalize(URI uri) {
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(uri)) {
-			IFile aFile = WorkbenchResourceHelper.getPlatformFile(uri);
-			
-			if (aFile != null) {
-				IVirtualComponent component = ComponentCore.createComponent(getContainingProject());
-				
-				if (component != null) {
-					IProject fileProject = getContainingProject();
-					
-					if (resourceSetSynchronizer.getProject() == fileProject){
-						List list = Arrays.asList(component.getRootFolder().getUnderlyingFolders());
-						IPath path = WorkbenchResourceHelperBase.getPathFromContainers(list, aFile.getFullPath());
-						if (path != null)
-							return URI.createURI(path.toString());
-						return null;
-					}
-				} else
-					return super.deNormalize(uri);
-			}
-		}
-		return uri;
-	}
-	
-	protected URI getContainerRelativeURI(IFile aFile) {
-		IPath path = WorkbenchResourceHelperBase.getPathFromContainers(inputContainers, aFile.getFullPath());
-		if (path != null)
-			return URI.createURI(path.toString());
-		return null;
-	}
-	protected URI getArchiveRelativeURI(IFile aFile, IContainer aContainer) {
-		IPath path = WorkbenchResourceHelperBase.getPathFromContainers(Collections.singletonList(aContainer), aFile.getFullPath());
-		if (path != null)
-			return URI.createURI(path.toString());
-		return null;
-	}
-
-	
-	
-	protected IProject getContainingProject() {
-		return containingProject;
-	}
-
-	@Override
-	protected URIMap getInternalURIMap() {
-
-	    if (uriMap == null)
-	    {
-	      URIMappingRegistryImpl mappingRegistryImpl = 
-	        new URIMappingRegistryImpl()
-	        {
-	          private static final long serialVersionUID = 1L;
-
-	          @Override
-	          protected URI delegatedGetURI(URI uri)
-	          {
-	        	if (ModuleURIUtil.hasContentTypeName(uri))
-	        		return newPlatformURI(uri);
-	            return URIMappingRegistryImpl.INSTANCE.getURI(uri);
-	          }
-	        };
-
-	      uriMap = (URIMap)mappingRegistryImpl.map();
-	    }
-
-	    URIMap uriConverterImplURIMap = null;
-	    if (uriMap instanceof URIMap)
-	    {
-	    	uriConverterImplURIMap = (URIMap)uriMap;
-	    }
-	    return uriConverterImplURIMap;
-	  
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentResourceImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentResourceImpl.java
deleted file mode 100644
index 9147466..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentResourceImpl.java
+++ /dev/null
@@ -1,434 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: ComponentResourceImpl.java,v 1.3 2006/01/11 18:40:31 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.util.Collection;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Workbench Module Resource</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentResourceImpl#getSourcePath <em>Source Path</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentResourceImpl#getRuntimePath <em>Runtime Path</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentResourceImpl#getExclusions <em>Exclusions</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentResourceImpl#getComponent <em>Component</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentResourceImpl#getResourceType <em>Resource Type</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ComponentResourceImpl extends EObjectImpl implements ComponentResource {
-	/**
-	 * The default value of the '{@link #getSourcePath() <em>Source Path</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getSourcePath()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final IPath SOURCE_PATH_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getSourcePath() <em>Source Path</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getSourcePath()
-	 * @generated
-	 * @ordered
-	 */
-	protected IPath sourcePath = SOURCE_PATH_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getRuntimePath() <em>Runtime Path</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getRuntimePath()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final IPath RUNTIME_PATH_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getRuntimePath() <em>Runtime Path</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getRuntimePath()
-	 * @generated
-	 * @ordered
-	 */
-	protected IPath runtimePath = RUNTIME_PATH_EDEFAULT;
-
-	/**
-	 * The cached value of the '{@link #getExclusions() <em>Exclusions</em>}' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getExclusions()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList exclusions = null;
-	
-	/**
-	 * The default value of the '{@link #getResourceType() <em>Resource Type</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getResourceType()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String RESOURCE_TYPE_EDEFAULT = "";
-
-	/**
-	 * The cached value of the '{@link #getResourceType() <em>Resource Type</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getResourceType()
-	 * @generated
-	 * @ordered
-	 */
-	protected String resourceType = RESOURCE_TYPE_EDEFAULT;
-
-	protected IProject owningProject;
-	protected static final int VIRTUAL = 0;
-	protected static final int PERSISTED = 1;
-	
-	private int type = PERSISTED;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected ComponentResourceImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return ComponentcorePackage.eINSTANCE.getComponentResource();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public IPath getSourcePath() {
-		return sourcePath;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setSourcePath(IPath newSourcePath) {
-		IPath oldSourcePath = sourcePath;
-		sourcePath = newSourcePath;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.COMPONENT_RESOURCE__SOURCE_PATH, oldSourcePath, sourcePath));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public IPath getRuntimePath() {
-		return runtimePath;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setRuntimePath(IPath newRuntimePath) {
-		IPath oldRuntimePath = runtimePath;
-		runtimePath = newRuntimePath;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.COMPONENT_RESOURCE__RUNTIME_PATH, oldRuntimePath, runtimePath));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EList getExclusions() {
-		if (exclusions == null) {
-			exclusions = new EDataTypeUniqueEList(String.class, this, ComponentcorePackage.COMPONENT_RESOURCE__EXCLUSIONS);
-		}
-		return exclusions;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public WorkbenchComponent getComponent() {
-		if (eContainerFeatureID != ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT) return null;
-		return (WorkbenchComponent)eContainer;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setComponent(WorkbenchComponent newComponent) {
-		if (newComponent != eContainer || (eContainerFeatureID != ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT && newComponent != null)) {
-			if (EcoreUtil.isAncestor(this, newComponent))
-				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
-			NotificationChain msgs = null;
-			if (eContainer != null)
-				msgs = eBasicRemoveFromContainer(msgs);
-			if (newComponent != null)
-				msgs = ((InternalEObject)newComponent).eInverseAdd(this, ComponentcorePackage.WORKBENCH_COMPONENT__RESOURCES, WorkbenchComponent.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newComponent, ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT, msgs);
-			if (msgs != null) msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT, newComponent, newComponent));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getResourceType() {
-		return resourceType;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setResourceType(String newResourceType) {
-		String oldResourceType = resourceType;
-		resourceType = newResourceType;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.COMPONENT_RESOURCE__RESOURCE_TYPE, oldResourceType, resourceType));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT:
-					return eBasicSetContainer(null, ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT:
-					return eContainer.eInverseRemove(this, ComponentcorePackage.WORKBENCH_COMPONENT__RESOURCES, WorkbenchComponent.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
-		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.COMPONENT_RESOURCE__SOURCE_PATH:
-				return getSourcePath();
-			case ComponentcorePackage.COMPONENT_RESOURCE__RUNTIME_PATH:
-				return getRuntimePath();
-			case ComponentcorePackage.COMPONENT_RESOURCE__EXCLUSIONS:
-				return getExclusions();
-			case ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT:
-				return getComponent();
-			case ComponentcorePackage.COMPONENT_RESOURCE__RESOURCE_TYPE:
-				return getResourceType();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.COMPONENT_RESOURCE__SOURCE_PATH:
-				setSourcePath((IPath)newValue);
-				return;
-			case ComponentcorePackage.COMPONENT_RESOURCE__RUNTIME_PATH:
-				setRuntimePath((IPath)newValue);
-				return;
-			case ComponentcorePackage.COMPONENT_RESOURCE__EXCLUSIONS:
-				getExclusions().clear();
-				getExclusions().addAll((Collection)newValue);
-				return;
-			case ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT:
-				setComponent((WorkbenchComponent)newValue);
-				return;
-			case ComponentcorePackage.COMPONENT_RESOURCE__RESOURCE_TYPE:
-				setResourceType((String)newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.COMPONENT_RESOURCE__SOURCE_PATH:
-				setSourcePath(SOURCE_PATH_EDEFAULT);
-				return;
-			case ComponentcorePackage.COMPONENT_RESOURCE__RUNTIME_PATH:
-				setRuntimePath(RUNTIME_PATH_EDEFAULT);
-				return;
-			case ComponentcorePackage.COMPONENT_RESOURCE__EXCLUSIONS:
-				getExclusions().clear();
-				return;
-			case ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT:
-				setComponent((WorkbenchComponent)null);
-				return;
-			case ComponentcorePackage.COMPONENT_RESOURCE__RESOURCE_TYPE:
-				setResourceType(RESOURCE_TYPE_EDEFAULT);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.COMPONENT_RESOURCE__SOURCE_PATH:
-				return SOURCE_PATH_EDEFAULT == null ? sourcePath != null : !SOURCE_PATH_EDEFAULT.equals(sourcePath);
-			case ComponentcorePackage.COMPONENT_RESOURCE__RUNTIME_PATH:
-				return RUNTIME_PATH_EDEFAULT == null ? runtimePath != null : !RUNTIME_PATH_EDEFAULT.equals(runtimePath);
-			case ComponentcorePackage.COMPONENT_RESOURCE__EXCLUSIONS:
-				return exclusions != null && !exclusions.isEmpty();
-			case ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT:
-				return getComponent() != null;
-			case ComponentcorePackage.COMPONENT_RESOURCE__RESOURCE_TYPE:
-				return RESOURCE_TYPE_EDEFAULT == null ? resourceType != null : !RESOURCE_TYPE_EDEFAULT.equals(resourceType);
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String toString() {
-		if (eIsProxy()) return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (sourcePath: ");
-		result.append(sourcePath);
-		result.append(", runtimePath: ");
-		result.append(runtimePath);
-		result.append(", exclusions: ");
-		result.append(exclusions);
-		result.append(", resourceType: ");
-		result.append(resourceType);
-		result.append(')');
-		return result.toString();
-	}
-
-	public int getType() {
-		return type;
-	}
-	
-	
-	public void setType(int type) {
-		this.type = type;
-	}
-
-	public IProject getOwningProject() {
-		return owningProject;
-	}
-
-	public void setOwningProject(IProject aProject) {
-		owningProject = aProject;
-	}
-	
-
-} //ComponentResourceImpl
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentTypeImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentTypeImpl.java
deleted file mode 100644
index b0c2f21..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentTypeImpl.java
+++ /dev/null
@@ -1,290 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: ComponentTypeImpl.java,v 1.1 2005/04/04 07:04:59 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.util.Collection;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
-import org.eclipse.emf.ecore.util.EObjectResolvingEList;
-import org.eclipse.wst.common.componentcore.internal.ComponentType;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.Property;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Module Type</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentTypeImpl#getComponentTypeId <em>Component Type Id</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentTypeImpl#getVersion <em>Version</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentTypeImpl#getProperties <em>Properties</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ComponentTypeImpl#getMetadataResources <em>Metadata Resources</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ComponentTypeImpl extends EObjectImpl implements ComponentType {
-	/**
-	 * The default value of the '{@link #getComponentTypeId() <em>Component Type Id</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getComponentTypeId()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String COMPONENT_TYPE_ID_EDEFAULT = "";
-
-	/**
-	 * The cached value of the '{@link #getComponentTypeId() <em>Component Type Id</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getComponentTypeId()
-	 * @generated
-	 * @ordered
-	 */
-	protected String componentTypeId = COMPONENT_TYPE_ID_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getVersion() <em>Version</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getVersion()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String VERSION_EDEFAULT = "";
-
-	/**
-	 * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getVersion()
-	 * @generated
-	 * @ordered
-	 */
-	protected String version = VERSION_EDEFAULT;
-
-	/**
-	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getProperties()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList properties = null;
-
-	/**
-	 * The cached value of the '{@link #getMetadataResources() <em>Metadata Resources</em>}' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getMetadataResources()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList metadataResources = null;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected ComponentTypeImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return ComponentcorePackage.eINSTANCE.getComponentType();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getComponentTypeId() {
-		return componentTypeId;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setComponentTypeId(String newComponentTypeId) {
-		String oldComponentTypeId = componentTypeId;
-		componentTypeId = newComponentTypeId;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.COMPONENT_TYPE__COMPONENT_TYPE_ID, oldComponentTypeId, componentTypeId));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EList getMetadataResources() {
-		if (metadataResources == null) {
-			metadataResources = new EDataTypeUniqueEList(IPath.class, this, ComponentcorePackage.COMPONENT_TYPE__METADATA_RESOURCES);
-		}
-		return metadataResources;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getVersion() {
-		return version;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setVersion(String newVersion) {
-		String oldVersion = version;
-		version = newVersion;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.COMPONENT_TYPE__VERSION, oldVersion, version));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EList getProperties() {
-		if (properties == null) {
-			properties = new EObjectResolvingEList(Property.class, this, ComponentcorePackage.COMPONENT_TYPE__PROPERTIES);
-		}
-		return properties;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.COMPONENT_TYPE__COMPONENT_TYPE_ID:
-				return getComponentTypeId();
-			case ComponentcorePackage.COMPONENT_TYPE__VERSION:
-				return getVersion();
-			case ComponentcorePackage.COMPONENT_TYPE__PROPERTIES:
-				return getProperties();
-			case ComponentcorePackage.COMPONENT_TYPE__METADATA_RESOURCES:
-				return getMetadataResources();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.COMPONENT_TYPE__COMPONENT_TYPE_ID:
-				setComponentTypeId((String)newValue);
-				return;
-			case ComponentcorePackage.COMPONENT_TYPE__VERSION:
-				setVersion((String)newValue);
-				return;
-			case ComponentcorePackage.COMPONENT_TYPE__PROPERTIES:
-				getProperties().clear();
-				getProperties().addAll((Collection)newValue);
-				return;
-			case ComponentcorePackage.COMPONENT_TYPE__METADATA_RESOURCES:
-				getMetadataResources().clear();
-				getMetadataResources().addAll((Collection)newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.COMPONENT_TYPE__COMPONENT_TYPE_ID:
-				setComponentTypeId(COMPONENT_TYPE_ID_EDEFAULT);
-				return;
-			case ComponentcorePackage.COMPONENT_TYPE__VERSION:
-				setVersion(VERSION_EDEFAULT);
-				return;
-			case ComponentcorePackage.COMPONENT_TYPE__PROPERTIES:
-				getProperties().clear();
-				return;
-			case ComponentcorePackage.COMPONENT_TYPE__METADATA_RESOURCES:
-				getMetadataResources().clear();
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.COMPONENT_TYPE__COMPONENT_TYPE_ID:
-				return COMPONENT_TYPE_ID_EDEFAULT == null ? componentTypeId != null : !COMPONENT_TYPE_ID_EDEFAULT.equals(componentTypeId);
-			case ComponentcorePackage.COMPONENT_TYPE__VERSION:
-				return VERSION_EDEFAULT == null ? version != null : !VERSION_EDEFAULT.equals(version);
-			case ComponentcorePackage.COMPONENT_TYPE__PROPERTIES:
-				return properties != null && !properties.isEmpty();
-			case ComponentcorePackage.COMPONENT_TYPE__METADATA_RESOURCES:
-				return metadataResources != null && !metadataResources.isEmpty();
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String toString() {
-		if (eIsProxy()) return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (componentTypeId: ");
-		result.append(componentTypeId);
-		result.append(", version: ");
-		result.append(version);
-		result.append(", metadataResources: ");
-		result.append(metadataResources);
-		result.append(')');
-		return result.toString();
-	}
-
-} //ComponentTypeImpl
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentcoreFactoryImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentcoreFactoryImpl.java
deleted file mode 100644
index 0bcab20..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentcoreFactoryImpl.java
+++ /dev/null
@@ -1,236 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: ComponentcoreFactoryImpl.java,v 1.8 2006/04/27 04:17:40 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EDataType;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.impl.EFactoryImpl;
-import org.eclipse.emf.ecore.plugin.EcorePlugin;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentType;
-import org.eclipse.wst.common.componentcore.internal.ComponentcoreFactory;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.DependencyType;
-import org.eclipse.wst.common.componentcore.internal.ProjectComponents;
-import org.eclipse.wst.common.componentcore.internal.Property;
-import org.eclipse.wst.common.componentcore.internal.ReferencedComponent;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model <b>Factory</b>.
- * <!-- end-user-doc -->
- * @generated
- */
-public class ComponentcoreFactoryImpl extends EFactoryImpl implements ComponentcoreFactory {
-	
-	/**
-	 * Creates the default factory implementation.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public static ComponentcoreFactory init() {
-		try {
-			ComponentcoreFactory theComponentcoreFactory = (ComponentcoreFactory)EPackage.Registry.INSTANCE.getEFactory("componentcore.xmi"); 
-			if (theComponentcoreFactory != null) {
-				return theComponentcoreFactory;
-			}
-		}
-		catch (Exception exception) {
-			EcorePlugin.INSTANCE.log(exception);
-		}
-		return new ComponentcoreFactoryImpl();
-	}
-
-	/**
-	 * Creates an instance of the factory.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ComponentcoreFactoryImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EObject create(EClass eClass) {
-		switch (eClass.getClassifierID()) {
-			case ComponentcorePackage.WORKBENCH_COMPONENT: return createWorkbenchComponent();
-			case ComponentcorePackage.COMPONENT_RESOURCE: return createComponentResource();
-			case ComponentcorePackage.COMPONENT_TYPE: return createComponentType();
-			case ComponentcorePackage.PROPERTY: return createProperty();
-			case ComponentcorePackage.REFERENCED_COMPONENT: return createReferencedComponent();
-			case ComponentcorePackage.PROJECT_COMPONENTS: return createProjectComponents();
-			default:
-				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
-		}
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Object createFromString(EDataType eDataType, String initialValue) {
-		switch (eDataType.getClassifierID()) {
-			case ComponentcorePackage.DEPENDENCY_TYPE: {
-				DependencyType result = DependencyType.get(initialValue);
-				if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
-				return result;
-			}
-			case ComponentcorePackage.IPATH:
-				return createIPathFromString(eDataType, initialValue);
-			case ComponentcorePackage.URI:
-				return createURIFromString(eDataType, initialValue);
-			default:
-				throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
-		}
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String convertToString(EDataType eDataType, Object instanceValue) {
-		switch (eDataType.getClassifierID()) {
-			case ComponentcorePackage.DEPENDENCY_TYPE:
-				return instanceValue == null ? null : instanceValue.toString();
-			case ComponentcorePackage.IPATH:
-				return convertIPathToString(eDataType, instanceValue);
-			case ComponentcorePackage.URI:
-				return convertURIToString(eDataType, instanceValue);
-			default:
-				throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
-		}
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public WorkbenchComponent createWorkbenchComponent() {
-		WorkbenchComponentImpl workbenchComponent = new WorkbenchComponentImpl();
-		return workbenchComponent;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ComponentResource createComponentResource() {
-		ComponentResourceImpl componentResource = new ComponentResourceImpl();
-		return componentResource;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ComponentType createComponentType() {
-		ComponentTypeImpl componentType = new ComponentTypeImpl();
-		return componentType;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Property createProperty() {
-		PropertyImpl property = new PropertyImpl();
-		return property;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ReferencedComponent createReferencedComponent() {
-		ReferencedComponentImpl referencedComponent = new ReferencedComponentImpl();
-		return referencedComponent;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ProjectComponents createProjectComponents() {
-		ProjectComponentsImpl projectComponents = new ProjectComponentsImpl();
-		return projectComponents;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public IPath createIPathFromString(EDataType eDataType, String initialValue) {
-		return (IPath)super.createFromString(eDataType, initialValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String convertIPathToString(EDataType eDataType, Object instanceValue) {
-		return super.convertToString(eDataType, instanceValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public URI createURIFromString(EDataType eDataType, String initialValue) {
-		return (URI)super.createFromString(eDataType, initialValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String convertURIToString(EDataType eDataType, Object instanceValue) {
-		return super.convertToString(eDataType, instanceValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ComponentcorePackage getComponentcorePackage() {
-		return (ComponentcorePackage)getEPackage();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @deprecated
-	 * @generated
-	 */
-	public static ComponentcorePackage getPackage() {
-		return ComponentcorePackage.eINSTANCE;
-	}
-
-} //ComponentcoreFactoryImpl
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentcorePackageImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentcorePackageImpl.java
deleted file mode 100644
index 888ba54..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ComponentcorePackageImpl.java
+++ /dev/null
@@ -1,646 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: ComponentcorePackageImpl.java,v 1.9 2006/04/27 04:17:40 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EDataType;
-import org.eclipse.emf.ecore.EEnum;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.ecore.impl.EPackageImpl;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentType;
-import org.eclipse.wst.common.componentcore.internal.ComponentcoreFactory;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.DependencyType;
-import org.eclipse.wst.common.componentcore.internal.ProjectComponents;
-import org.eclipse.wst.common.componentcore.internal.Property;
-import org.eclipse.wst.common.componentcore.internal.ReferencedComponent;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model <b>Package</b>.
- * <!-- end-user-doc -->
- * @generated
- */
-public class ComponentcorePackageImpl extends EPackageImpl implements ComponentcorePackage {
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass workbenchComponentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass componentResourceEClass = null;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass componentTypeEClass = null;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass propertyEClass = null;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass referencedComponentEClass = null;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass projectComponentsEClass = null;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EEnum dependencyTypeEEnum = null;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EDataType iPathEDataType = null;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EDataType uriEDataType = null;
-
-	/**
-	 * Creates an instance of the model <b>Package</b>, registered with
-	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
-	 * package URI value.
-	 * <p>Note: the correct way to create the package is via the static
-	 * factory method {@link #init init()}, which also performs
-	 * initialization of the package, or returns the registered package,
-	 * if one already exists.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.eclipse.emf.ecore.EPackage.Registry
-	 * @see org.eclipse.wst.common.componentcore.ComponentcorePackage#eNS_URI
-	 * @see #init()
-	 * @generated
-	 */
-	private ComponentcorePackageImpl() {
-		super(eNS_URI, ComponentcoreFactory.eINSTANCE);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static boolean isInited = false;
-
-	/**
-	 * Creates, registers, and initializes the <b>Package</b> for this
-	 * model, and for any others upon which it depends.  Simple
-	 * dependencies are satisfied by calling this method on all
-	 * dependent packages before doing anything else.  This method drives
-	 * initialization for interdependent packages directly, in parallel
-	 * with this package, itself.
-	 * <p>Of this package and its interdependencies, all packages which
-	 * have not yet been registered by their URI values are first created
-	 * and registered.  The packages are then initialized in two steps:
-	 * meta-model objects for all of the packages are created before any
-	 * are initialized, since one package's meta-model objects may refer to
-	 * those of another.
-	 * <p>Invocation of this method will not affect any packages that have
-	 * already been initialized.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #eNS_URI
-	 * @see #createPackageContents()
-	 * @see #initializePackageContents()
-	 * @generated
-	 */
-	public static ComponentcorePackage init() {
-		if (isInited) return (ComponentcorePackage)EPackage.Registry.INSTANCE.getEPackage(ComponentcorePackage.eNS_URI);
-
-		// Obtain or create and register package
-		ComponentcorePackageImpl theComponentcorePackage = (ComponentcorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof ComponentcorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new ComponentcorePackageImpl());
-
-		isInited = true;
-
-		// Create package meta-data objects
-		theComponentcorePackage.createPackageContents();
-
-		// Initialize created meta-data
-		theComponentcorePackage.initializePackageContents();
-
-		// Mark meta-data to indicate it can't be changed
-		theComponentcorePackage.freeze();
-
-		return theComponentcorePackage;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getWorkbenchComponent() {
-		return workbenchComponentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getWorkbenchComponent_Name() {
-		return (EAttribute)workbenchComponentEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getWorkbenchComponent_Resources() {
-		return (EReference)workbenchComponentEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getWorkbenchComponent_ComponentType() {
-		return (EReference)workbenchComponentEClass.getEStructuralFeatures().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getWorkbenchComponent_ReferencedComponents() {
-		return (EReference)workbenchComponentEClass.getEStructuralFeatures().get(3);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getWorkbenchComponent_Properties() {
-		return (EReference)workbenchComponentEClass.getEStructuralFeatures().get(4);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getWorkbenchComponent_MetadataResources() {
-		return (EAttribute)workbenchComponentEClass.getEStructuralFeatures().get(5);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getComponentResource() {
-		return componentResourceEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getComponentResource_SourcePath() {
-		return (EAttribute)componentResourceEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getComponentResource_RuntimePath() {
-		return (EAttribute)componentResourceEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getComponentResource_Exclusions() {
-		return (EAttribute)componentResourceEClass.getEStructuralFeatures().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getComponentResource_Component() {
-		return (EReference)componentResourceEClass.getEStructuralFeatures().get(3);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getComponentResource_ResourceType() {
-		return (EAttribute)componentResourceEClass.getEStructuralFeatures().get(4);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getComponentType() {
-		return componentTypeEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getComponentType_ComponentTypeId() {
-		return (EAttribute)componentTypeEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getComponentType_Version() {
-		return (EAttribute)componentTypeEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getComponentType_Properties() {
-		return (EReference)componentTypeEClass.getEStructuralFeatures().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getComponentType_MetadataResources() {
-		return (EAttribute)componentTypeEClass.getEStructuralFeatures().get(3);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getProperty() {
-		return propertyEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getProperty_Name() {
-		return (EAttribute)propertyEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getProperty_Value() {
-		return (EAttribute)propertyEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getReferencedComponent() {
-		return referencedComponentEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getReferencedComponent_Handle() {
-		return (EAttribute)referencedComponentEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getReferencedComponent_RuntimePath() {
-		return (EAttribute)referencedComponentEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getReferencedComponent_DependencyType() {
-		return (EAttribute)referencedComponentEClass.getEStructuralFeatures().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getReferencedComponent_DependentObject() {
-		return (EReference)referencedComponentEClass.getEStructuralFeatures().get(3);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getReferencedComponent_ArchiveName() {
-		return (EAttribute)referencedComponentEClass.getEStructuralFeatures().get(4);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getProjectComponents() {
-		return projectComponentsEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getProjectComponents_ProjectName() {
-		return (EAttribute)projectComponentsEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getProjectComponents_Components() {
-		return (EReference)projectComponentsEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getProjectComponents_Version() {
-		return (EAttribute)projectComponentsEClass.getEStructuralFeatures().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EEnum getDependencyType() {
-		return dependencyTypeEEnum;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EDataType getIPath() {
-		return iPathEDataType;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EDataType getURI() {
-		return uriEDataType;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ComponentcoreFactory getComponentcoreFactory() {
-		return (ComponentcoreFactory)getEFactoryInstance();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private boolean isCreated = false;
-
-	/**
-	 * Creates the meta-model objects for the package.  This method is
-	 * guarded to have no affect on any invocation but its first.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void createPackageContents() {
-		if (isCreated) return;
-		isCreated = true;
-
-		// Create classes and their features
-		workbenchComponentEClass = createEClass(WORKBENCH_COMPONENT);
-		createEAttribute(workbenchComponentEClass, WORKBENCH_COMPONENT__NAME);
-		createEReference(workbenchComponentEClass, WORKBENCH_COMPONENT__RESOURCES);
-		createEReference(workbenchComponentEClass, WORKBENCH_COMPONENT__COMPONENT_TYPE);
-		createEReference(workbenchComponentEClass, WORKBENCH_COMPONENT__REFERENCED_COMPONENTS);
-		createEReference(workbenchComponentEClass, WORKBENCH_COMPONENT__PROPERTIES);
-		createEAttribute(workbenchComponentEClass, WORKBENCH_COMPONENT__METADATA_RESOURCES);
-
-		componentResourceEClass = createEClass(COMPONENT_RESOURCE);
-		createEAttribute(componentResourceEClass, COMPONENT_RESOURCE__SOURCE_PATH);
-		createEAttribute(componentResourceEClass, COMPONENT_RESOURCE__RUNTIME_PATH);
-		createEAttribute(componentResourceEClass, COMPONENT_RESOURCE__EXCLUSIONS);
-		createEReference(componentResourceEClass, COMPONENT_RESOURCE__COMPONENT);
-		createEAttribute(componentResourceEClass, COMPONENT_RESOURCE__RESOURCE_TYPE);
-
-		componentTypeEClass = createEClass(COMPONENT_TYPE);
-		createEAttribute(componentTypeEClass, COMPONENT_TYPE__COMPONENT_TYPE_ID);
-		createEAttribute(componentTypeEClass, COMPONENT_TYPE__VERSION);
-		createEReference(componentTypeEClass, COMPONENT_TYPE__PROPERTIES);
-		createEAttribute(componentTypeEClass, COMPONENT_TYPE__METADATA_RESOURCES);
-
-		propertyEClass = createEClass(PROPERTY);
-		createEAttribute(propertyEClass, PROPERTY__NAME);
-		createEAttribute(propertyEClass, PROPERTY__VALUE);
-
-		referencedComponentEClass = createEClass(REFERENCED_COMPONENT);
-		createEAttribute(referencedComponentEClass, REFERENCED_COMPONENT__HANDLE);
-		createEAttribute(referencedComponentEClass, REFERENCED_COMPONENT__RUNTIME_PATH);
-		createEAttribute(referencedComponentEClass, REFERENCED_COMPONENT__DEPENDENCY_TYPE);
-		createEReference(referencedComponentEClass, REFERENCED_COMPONENT__DEPENDENT_OBJECT);
-		createEAttribute(referencedComponentEClass, REFERENCED_COMPONENT__ARCHIVE_NAME);
-
-		projectComponentsEClass = createEClass(PROJECT_COMPONENTS);
-		createEAttribute(projectComponentsEClass, PROJECT_COMPONENTS__PROJECT_NAME);
-		createEReference(projectComponentsEClass, PROJECT_COMPONENTS__COMPONENTS);
-		createEAttribute(projectComponentsEClass, PROJECT_COMPONENTS__VERSION);
-
-		// Create enums
-		dependencyTypeEEnum = createEEnum(DEPENDENCY_TYPE);
-
-		// Create data types
-		iPathEDataType = createEDataType(IPATH);
-		uriEDataType = createEDataType(URI);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private boolean isInitialized = false;
-
-	/**
-	 * Complete the initialization of the package and its meta-model.  This
-	 * method is guarded to have no affect on any invocation but its first.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void initializePackageContents() {
-		if (isInitialized) return;
-		isInitialized = true;
-
-		// Initialize package
-		setName(eNAME);
-		setNsPrefix(eNS_PREFIX);
-		setNsURI(eNS_URI);
-
-		// Add supertypes to classes
-
-		// Initialize classes and features; add operations and parameters
-		initEClass(workbenchComponentEClass, WorkbenchComponent.class, "WorkbenchComponent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getWorkbenchComponent_Name(), ecorePackage.getEString(), "name", "", 1, 1, WorkbenchComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getWorkbenchComponent_Resources(), this.getComponentResource(), this.getComponentResource_Component(), "resources", null, 0, -1, WorkbenchComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getWorkbenchComponent_ComponentType(), this.getComponentType(), null, "componentType", null, 1, 1, WorkbenchComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getWorkbenchComponent_ReferencedComponents(), this.getReferencedComponent(), null, "referencedComponents", null, 0, -1, WorkbenchComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getWorkbenchComponent_Properties(), this.getProperty(), null, "properties", null, 0, -1, WorkbenchComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getWorkbenchComponent_MetadataResources(), this.getIPath(), "metadataResources", null, 0, -1, WorkbenchComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		initEClass(componentResourceEClass, ComponentResource.class, "ComponentResource", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getComponentResource_SourcePath(), this.getIPath(), "sourcePath", null, 1, 1, ComponentResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getComponentResource_RuntimePath(), this.getIPath(), "runtimePath", null, 1, 1, ComponentResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getComponentResource_Exclusions(), ecorePackage.getEString(), "exclusions", "", 0, -1, ComponentResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getComponentResource_Component(), this.getWorkbenchComponent(), this.getWorkbenchComponent_Resources(), "component", null, 1, 1, ComponentResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getComponentResource_ResourceType(), ecorePackage.getEString(), "resourceType", "", 1, 1, ComponentResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		initEClass(componentTypeEClass, ComponentType.class, "ComponentType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getComponentType_ComponentTypeId(), ecorePackage.getEString(), "componentTypeId", "", 1, 1, ComponentType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getComponentType_Version(), ecorePackage.getEString(), "version", "", 1, 1, ComponentType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getComponentType_Properties(), this.getProperty(), null, "properties", null, 0, -1, ComponentType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getComponentType_MetadataResources(), this.getIPath(), "metadataResources", null, 0, -1, ComponentType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		initEClass(propertyEClass, Property.class, "Property", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getProperty_Name(), ecorePackage.getEString(), "name", "", 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getProperty_Value(), ecorePackage.getEString(), "value", "", 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		initEClass(referencedComponentEClass, ReferencedComponent.class, "ReferencedComponent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getReferencedComponent_Handle(), this.getURI(), "handle", null, 1, 1, ReferencedComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getReferencedComponent_RuntimePath(), this.getIPath(), "runtimePath", null, 1, 1, ReferencedComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getReferencedComponent_DependencyType(), this.getDependencyType(), "dependencyType", null, 1, 1, ReferencedComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getReferencedComponent_DependentObject(), ecorePackage.getEObject(), null, "dependentObject", null, 0, 1, ReferencedComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getReferencedComponent_ArchiveName(), ecorePackage.getEString(), "archiveName", null, 0, 1, ReferencedComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		initEClass(projectComponentsEClass, ProjectComponents.class, "ProjectComponents", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getProjectComponents_ProjectName(), ecorePackage.getEString(), "projectName", "", 1, 1, ProjectComponents.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getProjectComponents_Components(), this.getWorkbenchComponent(), null, "components", null, 0, -1, ProjectComponents.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getProjectComponents_Version(), ecorePackage.getEString(), "version", null, 1, 1, ProjectComponents.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		// Initialize enums and add enum literals
-		initEEnum(dependencyTypeEEnum, DependencyType.class, "DependencyType");
-		addEEnumLiteral(dependencyTypeEEnum, DependencyType.USES_LITERAL);
-		addEEnumLiteral(dependencyTypeEEnum, DependencyType.CONSUMES_LITERAL);
-
-		// Initialize data types
-		initEDataType(iPathEDataType, IPath.class, "IPath", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
-		initEDataType(uriEDataType, org.eclipse.emf.common.util.URI.class, "URI", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
-
-		// Create resource
-		createResource(eNS_URI);
-
-		// Create annotations
-		// keywords
-		createKeywordsAnnotations();
-	}
-
-	/**
-	 * Initializes the annotations for <b>keywords</b>.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected void createKeywordsAnnotations() {
-		String source = "keywords";		
-		addAnnotation
-		  (iPathEDataType, 
-		   source, 
-		   new String[] {
-			 "datatype", null
-		   });		
-		addAnnotation
-		  (uriEDataType, 
-		   source, 
-		   new String[] {
-			 "datatype", null
-		   });
-	}
-
-} //ComponentcorePackageImpl
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/IModuleStructureListener.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/IModuleStructureListener.java
deleted file mode 100644
index 82a97d7..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/IModuleStructureListener.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-
-/**
- * 
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public interface IModuleStructureListener {
-    
-    public void structureChanged(ModuleStructureEvent event);
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/IResourceFactoryExtPtConstants.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/IResourceFactoryExtPtConstants.java
deleted file mode 100644
index c6e1e45..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/IResourceFactoryExtPtConstants.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-public interface IResourceFactoryExtPtConstants {
-	
-
-	String EXTPT_RESOURCE_FACTORIES = "resourceFactories"; //$NON-NLS-1$
-	
-	String TAG_RESOURCE_FACTORY = "resourceFactory"; //$NON-NLS-1$
-	
-	String ATT_CLASS = "class"; //$NON-NLS-1$
-	
-	String ATT_SHORT_SEGMENT = "shortSegment"; //$NON-NLS-1$ 
-	
-	String TAG_CONTENTTYPE = "contentTypeBinding"; //$NON-NLS-1$ 
-	
-	String ATT_CONTENTTYPEID = "contentTypeId"; //$NON-NLS-1$ 
-	
-	String ATT_ISDEFAULT = "isDefault"; //$NON-NLS-1$ 
-	
-	String ATT_OVERRIDES_FACTORY ="overridesFactoryClass"; //$NON-NLS-1$ 
-		
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/MappedComponentXMIHelper.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/MappedComponentXMIHelper.java
deleted file mode 100644
index 250ccb7..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/MappedComponentXMIHelper.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.impl.URIConverterImpl;
-import org.eclipse.emf.ecore.xmi.XMLResource;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-import org.eclipse.wst.common.internal.emf.resource.MappedXMIHelper;
-import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;
-
-public class MappedComponentXMIHelper extends MappedXMIHelper {
-
-	public MappedComponentXMIHelper(XMLResource resource, Map prefixesToURIs) {
-		super(resource, prefixesToURIs);
-	}
-
-	public URI resolve(URI relative, URI base) {
-		URI resolved = null;
-		if (!isMapped(relative))
-			resolved = resolveURIFromComponent(relative,base);
-		else
-			resolved = relative;
-		
-		return resolved == null ? super.resolve(relative, base) : resolved;
-	}
-	
-	private boolean isMapped(URI relative) {
-		boolean isMapped = false;
-		ResourceSet set = getResource().getResourceSet();
-		if (set != null) {
-			URI localresourceURI = relative;
-			if (relative.hasFragment())
-				localresourceURI = relative.trimFragment();
-			isMapped = !((URIConverterImpl.URIMap) set.getURIConverter().getURIMap()).getURI(localresourceURI).equals(localresourceURI);
-		}
-		return isMapped;
-	}
-	
-	private URI resolveURIFromComponent(URI relative, URI base) {
-		IVirtualComponent component = getComponent(base);
-		if (component != null) {
-			IVirtualFile virtualFile = component.getRootFolder().getFile(new Path(relative.toString()));
-			if (virtualFile != null) {
-				IPath resolvingPath = virtualFile.getWorkspaceRelativePath();
-				if (resolvingPath !=null) 
-					return URI.createPlatformResourceURI(resolvingPath.toString());
-			}
-		}
-		return null;
-	}
-	
-	private IVirtualComponent getComponent(URI base) {
-		ResourceSet set = getResource().getResourceSet();
-		if (set == null || set.getURIConverter()==null)
-			return null;
-		URI normalized = set.getURIConverter().normalize(base);
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(normalized)) {
-			IFile file = WorkbenchResourceHelper.getPlatformFile(normalized);
-			if (file !=null) {
-				IVirtualResource[] virtualResources = ComponentCore.createResources(file);
-				if (virtualResources.length>0)
-					return virtualResources[0].getComponent();
-			}
-		}
-		return null;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleIndexingAdapter.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleIndexingAdapter.java
deleted file mode 100644
index 5946e50..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleIndexingAdapter.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class ModuleIndexingAdapter extends AdapterImpl {
-
-	private static final Class MODULE_INDEXING_ADAPTER_CLASS = ModuleIndexingAdapter.class;
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.notify.impl.AdapterImpl#notifyChanged(org.eclipse.emf.common.notify.Notification)
-	 */
-	public void notifyChanged(Notification aNotification) {
-		if (aNotification.getNotifier() instanceof EObject) {
-			EObject notifier = (EObject) aNotification.getNotifier();
-			if (notifier.eClass().getClassifierID() == ComponentcorePackage.PROJECT_COMPONENTS) {
-				ProjectComponentsImpl projectModules = (ProjectComponentsImpl) notifier;
-				synchronized (projectModules.getModulesIndex()) {
-					switch (aNotification.getEventType()) {
-						case Notification.ADD :
-							WorkbenchComponent module = (WorkbenchComponent) aNotification.getNewValue();
-							projectModules.getModulesIndex().put(module.getName(), module);
-					}
-				} 
-			}
-		} 
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.notify.impl.AdapterImpl#isAdapterForType(java.lang.Object)
-	 */
-	public boolean isAdapterForType(Object type) {
-		return type == MODULE_INDEXING_ADAPTER_CLASS;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleStructuralModelFactory.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleStructuralModelFactory.java
deleted file mode 100644
index 792221e..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleStructuralModelFactory.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.util.Map;
-
-import org.eclipse.wst.common.componentcore.internal.ModuleStructuralModel;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class ModuleStructuralModelFactory extends EditModelFactory {
-	
-	public static final String MODULE_STRUCTURAL_MODEL_ID = "org.eclipse.wst.modulecore.structuralModel"; //$NON-NLS-1$
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory#createEditModelForRead(java.lang.String, org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext, java.util.Map)
-	 */
-	public EditModel createEditModelForRead(String anEditModelId, EMFWorkbenchContext aContext, Map theParams) {
-		return new ModuleStructuralModel(anEditModelId, aContext, true);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory#createEditModelForWrite(java.lang.String, org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext, java.util.Map)
-	 */
-	public EditModel createEditModelForWrite(String anEditModelId, EMFWorkbenchContext aContext, Map theParams) {
-		return new ModuleStructuralModel(anEditModelId, aContext, false);
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleStructureEvent.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleStructureEvent.java
deleted file mode 100644
index b692e3b..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleStructureEvent.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Jan 26, 2005
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.util.EventObject;
-
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-
-//in progress...
-
-public class ModuleStructureEvent extends EventObject {
-    /**
-	 * 
-	 */
-	private static final long serialVersionUID = 1L;
-	private ComponentResource[] resources;
-
-    public ModuleStructureEvent(Object source) {
-        super(source);
-    }
-    
-    public ModuleStructureEvent(Object source, ComponentResource[] theModuleResources) {
-        super(source);
-        resources = theModuleResources;
-        
-    }
-
-    public ComponentResource[] getMoudleResources() {
-        return resources;
-    }
-  
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleURIUtil.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleURIUtil.java
deleted file mode 100644
index 170c513..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ModuleURIUtil.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-import org.eclipse.wst.common.componentcore.UnresolveableURIException;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-
-/**
- * 
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class ModuleURIUtil {
-
-	protected static final String RESOURCE_URI_PROTOCOL = PlatformURLModuleConnection.MODULE_PROTOCOL+IPath.SEPARATOR+PlatformURLModuleConnection.RESOURCE_MODULE+IPath.SEPARATOR;
-
-	protected static final String ARCHIVE_URI_PROTOCOL = PlatformURLModuleConnection.MODULE_PROTOCOL+IPath.SEPARATOR+PlatformURLModuleConnection.CLASSPATH +IPath.SEPARATOR;
-	
-	public static interface ModuleURI {
-		public static final int SUB_PROTOCOL_INDX = 0;
-		public static final int PROJECT_NAME_INDX = 1;
-		public static final int MODULE_NAME_INDX = 2;
-		public static final int CONTENT_TYPE_INDX = 3;
-	}
-
-
-	public static final String PLATFORM_SCHEME = "platform"; //$NON-NLS-1$
-	public static final String RESOURCE_PROTOCOL = "resource"; //$NON-NLS-1$
-
-	
-	/**
-	 * <p>
-	 * A fully-qualified module URI will contain enough information to determine the deployed name
-	 * of the module.
-	 * </p>
-	 * 
-	 * @param aModuleURI
-	 *            A valid, fully-qualified module URI
-	 * @return The deployed name of the {@see WorkbenchComponent}referenced by the module URI
-	 * @throws UnresolveableURIException
-	 *             If the supplied module URI is invalid or unresolveable.
-	 */ 
-	public static String getDeployedName(URI aModuleURI) throws UnresolveableURIException {
-		ensureValidFullyQualifiedModuleURI(aModuleURI);
-		return aModuleURI.segment(ModuleURI.MODULE_NAME_INDX);
-	}
-
-	public static boolean ensureValidFullyQualifiedModuleURI(URI aModuleURI) throws UnresolveableURIException {
-		return ensureValidFullyQualifiedModuleURI(aModuleURI, true);
-	}
-
-	public static boolean ensureValidFullyQualifiedModuleURI(URI aModuleURI, boolean toThrowExceptionIfNecessary) throws UnresolveableURIException {
-		if (aModuleURI.segmentCount() < 3) {
-			if(toThrowExceptionIfNecessary)
-				throw new UnresolveableURIException(aModuleURI);
-			return false;
-		}
-		return true;
-	}
-	public static boolean isValidFullyQualifiedModuleURI(URI aModuleURI) {
-		if (aModuleURI.segmentCount() < 3) {
-			return false;
-		}
-		return true;
-	}
-
-	public static boolean ensureValidFullyQualifiedPlatformURI(URI aFullyQualifiedResourceURI, boolean toThrowExceptionIfNecessary) throws UnresolveableURIException {
-		if (aFullyQualifiedResourceURI.segmentCount() < 2 || !PLATFORM_SCHEME.equals(aFullyQualifiedResourceURI.scheme()) || !RESOURCE_PROTOCOL.equals(aFullyQualifiedResourceURI.segment(0))) {
-			if (toThrowExceptionIfNecessary)
-				throw new UnresolveableURIException(aFullyQualifiedResourceURI);
-			return false;
-		}
-		return true;
-	}
-
-	public static void ensureValidFullyQualifiedPlatformURI(URI aFullyQualifiedResourceURI) throws UnresolveableURIException {
-		ensureValidFullyQualifiedPlatformURI(aFullyQualifiedResourceURI, true);
-	}
-
-	public static URI trimModuleResourcePathToModuleURI(URI aModuleResourcePath) throws UnresolveableURIException {
-		ensureValidFullyQualifiedModuleURI(aModuleResourcePath);
-		int trimIndex = (hasContentTypeName(aModuleResourcePath) ? 4 : 3);
-		return aModuleResourcePath.trimSegments(aModuleResourcePath.segmentCount() - trimIndex);
-	}
-
-	public static URI trimWorkspacePathToProjectRelativeURI(URI aFullyQualifiedResourceURI) throws UnresolveableURIException {
-		URI projectRelativePath = null;
-		/* Check for a non-hierachical Workspace-relative path of the form platform:/resource/<project>/...*/
-		if (ensureValidFullyQualifiedPlatformURI(aFullyQualifiedResourceURI, false)) {
-			if (aFullyQualifiedResourceURI.segmentCount() == 2)
-				/* The URI points to a project, resolve to an empty URI */
-				return URI.createURI(""); //$NON-NLS-1$
-
-			/*
-			 * The URI has to be > 2 since the validation method above checks for < 2, and just
-			 * checked for == 2 so if X NOT < 2 and X NOT == 2, THEN > 2
-			 */
-			projectRelativePath = trimToRelativePath(aFullyQualifiedResourceURI, 2);
-
-		} else if(aFullyQualifiedResourceURI.isHierarchical() && aFullyQualifiedResourceURI.path().startsWith(""+IPath.SEPARATOR)) {
-			projectRelativePath = trimToRelativePath(aFullyQualifiedResourceURI, 1);
-		} else {
-			throw new UnresolveableURIException(aFullyQualifiedResourceURI);
-		}
-		return projectRelativePath;
-	}
-	
-	public static URI trimToRelativePath(URI aURI, int aStartIndex) {
-		StringBuffer relativePath = new StringBuffer();
-		for (int segmentIndex = aStartIndex; segmentIndex < aURI.segmentCount(); segmentIndex++) {
-			relativePath.append(aURI.segment(segmentIndex));
-			if (segmentIndex < (aURI.segmentCount() - 1))
-				relativePath.append(IPath.SEPARATOR);
-		}
-		return URI.createURI(relativePath.toString());
-	}
-	
-	
-	/**
-	 * @param aModuleResourcePath
-	 * @return
-	 */
-	public static URI trimToDeployPathSegment(URI aFullyQualifiedModuleResourcePath) {
-		int segmentCount = aFullyQualifiedModuleResourcePath.segmentCount();
-		URI uri;
-		int trimIndex = (hasContentTypeName(aFullyQualifiedModuleResourcePath) ? 5 : 4);
-		if(segmentCount > trimIndex){
-			uri = aFullyQualifiedModuleResourcePath.deresolve(aFullyQualifiedModuleResourcePath.trimSegments(segmentCount - trimIndex), false,false,true);
-		} else {
-			uri = URI.createURI(aFullyQualifiedModuleResourcePath.segment(segmentCount-1));
-		}
-		return uri;
-	}
-
-	public static URI concat(URI uri1, URI uri2){
-	    URI concatURI = uri1.appendSegments(uri2.segments());
-	    return concatURI;
-	}
-	
-	public static URI fullyQualifyURI(WorkbenchComponent aComponent) {
-		try {
-			if(ensureValidFullyQualifiedModuleURI(aComponent.getHandle(), false))
-				return aComponent.getHandle(); 
-			IProject project = StructureEdit.getContainingProject(aComponent);
-			if(project != null) {
-				return URI.createURI(RESOURCE_URI_PROTOCOL + project.getName() + IPath.SEPARATOR + aComponent.getName());
-			} 
-		} catch (UnresolveableURIException e) {
-			// Ignore
-		}
-		return null; 
-	}
-	
-
-	public static URI fullyQualifyURI(IProject aProject) {
-		return URI.createURI(RESOURCE_URI_PROTOCOL + aProject.getName() + IPath.SEPARATOR + aProject.getName());
-	}
-	public static URI fullyQualifyURI(IProject aProject, String contentTypeDescriber) {
-		return URI.createURI(RESOURCE_URI_PROTOCOL + aProject.getName() + IPath.SEPARATOR + aProject.getName() + IPath.SEPARATOR + contentTypeDescriber);
-	}
-
-	public static URI archiveComponentfullyQualifyURI(String aComponentName) {
-		return URI.createURI(ARCHIVE_URI_PROTOCOL + aComponentName);
-	}
-	
-	public static boolean isClassPathURI(URI uri){
-		if(uri!=null && PlatformURLModuleConnection.CLASSPATH.equals(uri.segment(0) )){
-			return true;
-		}
-		return false;
-	}
-	
-	public static String getArchiveType(URI aModuleURI)throws UnresolveableURIException {
-		ensureValidFullyQualifiedModuleURI(aModuleURI);
-		return aModuleURI.segment(ModuleURI.PROJECT_NAME_INDX);		
-	}
-	
-	public static String getArchiveName(URI aModuleURI)throws UnresolveableURIException {
-		ensureValidFullyQualifiedModuleURI(aModuleURI);
-		URI uri = trimToRelativePath(aModuleURI, ModuleURI.MODULE_NAME_INDX);
-		return uri.toString();
-	}
-	public static String getHandleString(IVirtualComponent aComponent){
-		if (aComponent.isBinary())
-			return ModuleURIUtil.archiveComponentfullyQualifyURI(aComponent.getName()).toString();
-		else
-			return "[" + aComponent.getProject().getFullPath() + "]:" + aComponent.getProject().getName();
-	}
-
-	public static String getContentTypeName(URI uri) {
-		
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(uri) || !isValidFullyQualifiedModuleURI(uri))
-			return null;
-		String contentTypeIdentifier = (uri.segmentCount() > 3 ? uri.segment(ModuleURI.CONTENT_TYPE_INDX) : null);
-		if (contentTypeIdentifier != null && Platform.getContentTypeManager().getContentType(uri.segment(ModuleURI.CONTENT_TYPE_INDX)) != null)
-			return contentTypeIdentifier;
-		else
-			return null;
-	}
-	public static boolean hasContentTypeName(URI uri) {
-		
-		if (WorkbenchResourceHelperBase.isPlatformResourceURI(uri))
-			return false;
-		String contentTypeIdentifier = (uri.segmentCount() > 3 ? uri.segment(ModuleURI.CONTENT_TYPE_INDX) : null);
-		if (contentTypeIdentifier != null && Platform.getContentTypeManager().getContentType(uri.segment(ModuleURI.CONTENT_TYPE_INDX)) != null)
-			return true;
-		else
-			return false;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/PlatformURLModuleConnection.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/PlatformURLModuleConnection.java
deleted file mode 100644
index 6033687..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/PlatformURLModuleConnection.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Jan 20, 2005
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.io.IOException;
-import java.net.URL;
-
-import org.eclipse.core.internal.boot.PlatformURLConnection;
-import org.eclipse.core.internal.boot.PlatformURLHandler;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-
-/**
- * @author mdelder
- * 
- * TODO To change the template for this generated type comment go to Window - Preferences - Java -
- * Code Style - Code Templates
- */
-public class PlatformURLModuleConnection extends PlatformURLConnection {
-
-	public static final String MODULE = "module"; //$NON-NLS-1$
-	public static final String MODULE_PROTOCOL = MODULE + PlatformURLHandler.PROTOCOL_SEPARATOR;
-	
-	public static final String CLASSPATH = "classpath"; //$NON-NLS-1$
-
-	public static final String RESOURCE_MODULE = "resource"; //$NON-NLS-1$
-	public static final String BINARY_MODULE = "binary"; //$NON-NLS-1$
-
-
-	public PlatformURLModuleConnection(URL aURL) {
-		super(aURL);
-	}
- 
-	public static URI resolve(URI aModuleResourceRuntimePath) throws IOException {
-		try {
-			IProject componentProject = StructureEdit.getContainingProject(aModuleResourceRuntimePath);
-			//String componentName = ModuleURIUtil.getDeployedName(aModuleResourceRuntimePath);
-			URI runtimeURI = ModuleURIUtil.trimToDeployPathSegment(aModuleResourceRuntimePath);
-			IPath runtimePath = new Path(runtimeURI.path());
-			IVirtualComponent component = ComponentCore.createComponent(componentProject);
-			//IVirtualFile vFile = component.getFile(runtimePath);
-			IVirtualFolder rootFolder = component.getRootFolder();
-			int matchingSegs = runtimePath.matchingFirstSegments(rootFolder.getProjectRelativePath());
-			if(matchingSegs > 0)
-				runtimePath = runtimePath.removeFirstSegments(matchingSegs);
-			IVirtualFile vFile = rootFolder.getFile(runtimePath);
-			return URI.createPlatformResourceURI(vFile.getWorkspaceRelativePath().toString());
-		} catch (Exception e) {
-		}
-		return aModuleResourceRuntimePath;
-		 
-	}
-
-//	private static URI normalizeToWorkspaceRelative(IProject project, IPath sourcePath, URI moduleResourceDeployPath) throws UnresolveableURIException {
-//		String projectName = project.getName();
-//		return URI.createURI(projectName + '/' + sourcePath.toString());
-//	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.internal.boot.PlatformURLConnection#resolve()
-	 */
-	protected URL resolve() throws IOException {
-		System.out.println("URL: " + getURL());
-		//IPath moduleRelativePath = new Path(getURL().toExternalForm());
-		//String moduleName = moduleRelativePath.segment(1);
-
-		IPath resolvedPath = null; // handle.getResolvedPath().append(moduleRelativePath.removeFirstSegments(2));
-
-		int count = resolvedPath.segmentCount();
-		// if there are two segments then the second is a project name.
-		IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(resolvedPath.segment(0));
-		if (!project.exists()) {
-			// TODO Fix this string
-			String message = "Could not resolve URL"; //Policy.bind("url.couldNotResolve", project.getName(), url.toExternalForm()); //$NON-NLS-1$
-			throw new IOException(message);
-		}
-		IPath result = null;
-		if (count == 2)
-			result = project.getLocation();
-		else {
-			resolvedPath = resolvedPath.removeFirstSegments(2);
-			result = project.getFile(resolvedPath).getLocation();
-		}
-		return new URL("file", "", result.toString()); //$NON-NLS-1$ //$NON-NLS-2$
-
-	}
-
-	public static void startup() {
-		PlatformURLHandler.register(PlatformURLModuleConnection.MODULE, PlatformURLModuleConnection.class);
-	}
-
-	// private IProject getRelevantProject(URI aModuleURI) {
-	// aModuleURI.segment()
-	// }
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ProjectComponentsImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ProjectComponentsImpl.java
deleted file mode 100644
index e0645d7..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ProjectComponentsImpl.java
+++ /dev/null
@@ -1,313 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: ProjectComponentsImpl.java,v 1.3 2006/04/27 04:17:40 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.eclipse.emf.ecore.util.EObjectContainmentEList;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.ProjectComponents;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-
-/**
- * <!-- begin-user-doc --> An implementation of the model object '<em><b>Project Modules</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ProjectComponentsImpl#getProjectName <em>Project Name</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ProjectComponentsImpl#getComponents <em>Components</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ProjectComponentsImpl#getVersion <em>Version</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ProjectComponentsImpl extends EObjectImpl implements ProjectComponents {
-	/**
-	 * The default value of the '{@link #getProjectName() <em>Project Name</em>}' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getProjectName()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String PROJECT_NAME_EDEFAULT = "";
-
-	/**
-	 * The cached value of the '{@link #getProjectName() <em>Project Name</em>}' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @see #getProjectName()
-	 * @generated
-	 * @ordered
-	 */
-	protected String projectName = PROJECT_NAME_EDEFAULT;
-
-	/**
-	 * The cached value of the '{@link #getComponents() <em>Components</em>}' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getComponents()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList components = null;
-
-	/**
-	 * The default value of the '{@link #getVersion() <em>Version</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getVersion()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String VERSION_EDEFAULT = "1.0.0";
-
-	/**
-	 * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getVersion()
-	 * @generated
-	 * @ordered
-	 */
-	protected String version = VERSION_EDEFAULT;
-
-	private boolean isIndexed;
-
-	private final Map modulesIndex = new HashMap();
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected ProjectComponentsImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return ComponentcorePackage.Literals.PROJECT_COMPONENTS;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getProjectName() {
-		return projectName;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setProjectName(String newProjectName) {
-		String oldProjectName = projectName;
-		projectName = newProjectName;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.PROJECT_COMPONENTS__PROJECT_NAME, oldProjectName, projectName));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EList getComponents() {
-		if (components == null) {
-			components = new EObjectContainmentEList(WorkbenchComponent.class, this, ComponentcorePackage.PROJECT_COMPONENTS__COMPONENTS);
-		}
-		return components;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getVersion() {
-		return version;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setVersion(String newVersion) {
-		String oldVersion = version;
-		version = newVersion;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.PROJECT_COMPONENTS__VERSION, oldVersion, version));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-		switch (featureID) {
-			case ComponentcorePackage.PROJECT_COMPONENTS__COMPONENTS:
-				return ((InternalEList)getComponents()).basicRemove(otherEnd, msgs);
-		}
-		return super.eInverseRemove(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Object eGet(int featureID, boolean resolve, boolean coreType) {
-		switch (featureID) {
-			case ComponentcorePackage.PROJECT_COMPONENTS__PROJECT_NAME:
-				return getProjectName();
-			case ComponentcorePackage.PROJECT_COMPONENTS__COMPONENTS:
-				return getComponents();
-			case ComponentcorePackage.PROJECT_COMPONENTS__VERSION:
-				return getVersion();
-		}
-		return super.eGet(featureID, resolve, coreType);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eSet(int featureID, Object newValue) {
-		switch (featureID) {
-			case ComponentcorePackage.PROJECT_COMPONENTS__PROJECT_NAME:
-				setProjectName((String)newValue);
-				return;
-			case ComponentcorePackage.PROJECT_COMPONENTS__COMPONENTS:
-				getComponents().clear();
-				getComponents().addAll((Collection)newValue);
-				return;
-			case ComponentcorePackage.PROJECT_COMPONENTS__VERSION:
-				setVersion((String)newValue);
-				return;
-		}
-		super.eSet(featureID, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eUnset(int featureID) {
-		switch (featureID) {
-			case ComponentcorePackage.PROJECT_COMPONENTS__PROJECT_NAME:
-				setProjectName(PROJECT_NAME_EDEFAULT);
-				return;
-			case ComponentcorePackage.PROJECT_COMPONENTS__COMPONENTS:
-				getComponents().clear();
-				return;
-			case ComponentcorePackage.PROJECT_COMPONENTS__VERSION:
-				setVersion(VERSION_EDEFAULT);
-				return;
-		}
-		super.eUnset(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean eIsSet(int featureID) {
-		switch (featureID) {
-			case ComponentcorePackage.PROJECT_COMPONENTS__PROJECT_NAME:
-				return PROJECT_NAME_EDEFAULT == null ? projectName != null : !PROJECT_NAME_EDEFAULT.equals(projectName);
-			case ComponentcorePackage.PROJECT_COMPONENTS__COMPONENTS:
-				return components != null && !components.isEmpty();
-			case ComponentcorePackage.PROJECT_COMPONENTS__VERSION:
-				return VERSION_EDEFAULT == null ? version != null : !VERSION_EDEFAULT.equals(version);
-		}
-		return super.eIsSet(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String toString() {
-		if (eIsProxy()) return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (projectName: ");
-		result.append(projectName);
-		result.append(", version: ");
-		result.append(version);
-		result.append(')');
-		return result.toString();
-	}
-
-	public WorkbenchComponent findWorkbenchModule(String aDeployName) {
-		if (getComponents().size() == 1)
-			return ((WorkbenchComponent)getComponents().get(0)).getName().equals(aDeployName) ? (WorkbenchComponent)getComponents().get(0) : null;
-		if (!isIndexed()) 
-			indexModules(); 
-		return (WorkbenchComponent) getModulesIndex().get(aDeployName);
-	}
-
-	/**
-	 * @return
-	 */
-	private boolean isIndexed() {
-		return isIndexed;
-	}
-
-	/**
-	 * 
-	 */
-	private void indexModules() {
-		if (isIndexed)
-			return;
-
-		synchronized (modulesIndex) {
-			Adapter adapter = EcoreUtil.getAdapter(eAdapters(), ModuleIndexingAdapter.class);
-			if (adapter == null) 
-				eAdapters().add((adapter = new ModuleIndexingAdapter()));
-			
-			WorkbenchComponent module = null;
-			for(Iterator iter = getComponents().iterator(); iter.hasNext(); ) {
-				module = (WorkbenchComponent) iter.next();
-				modulesIndex.put(module.getName(), module);
-			}
-		}
-		isIndexed = true;
-	}
-
-	/**
-	 * @return
-	 */
-	/* package */ Map getModulesIndex() {
-		return modulesIndex;
-	}
-
-} // ProjectComponentsImpl
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/PropertyImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/PropertyImpl.java
deleted file mode 100644
index eae8a93..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/PropertyImpl.java
+++ /dev/null
@@ -1,213 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: PropertyImpl.java,v 1.1 2005/04/04 07:04:59 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.Property;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Property</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.PropertyImpl#getName <em>Name</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.PropertyImpl#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class PropertyImpl extends EObjectImpl implements Property {
-	/**
-	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getName()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String NAME_EDEFAULT = "";
-
-	/**
-	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getName()
-	 * @generated
-	 * @ordered
-	 */
-	protected String name = NAME_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getValue()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String VALUE_EDEFAULT = "";
-
-	/**
-	 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getValue()
-	 * @generated
-	 * @ordered
-	 */
-	protected String value = VALUE_EDEFAULT;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected PropertyImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return ComponentcorePackage.eINSTANCE.getProperty();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getName() {
-		return name;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setName(String newName) {
-		String oldName = name;
-		name = newName;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.PROPERTY__NAME, oldName, name));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getValue() {
-		return value;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setValue(String newValue) {
-		String oldValue = value;
-		value = newValue;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.PROPERTY__VALUE, oldValue, value));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.PROPERTY__NAME:
-				return getName();
-			case ComponentcorePackage.PROPERTY__VALUE:
-				return getValue();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.PROPERTY__NAME:
-				setName((String)newValue);
-				return;
-			case ComponentcorePackage.PROPERTY__VALUE:
-				setValue((String)newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.PROPERTY__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case ComponentcorePackage.PROPERTY__VALUE:
-				setValue(VALUE_EDEFAULT);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.PROPERTY__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case ComponentcorePackage.PROPERTY__VALUE:
-				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String toString() {
-		if (eIsProxy()) return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (name: ");
-		result.append(name);
-		result.append(", value: ");
-		result.append(value);
-		result.append(')');
-		return result.toString();
-	}
-
-} //PropertyImpl
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ReferencedComponentImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ReferencedComponentImpl.java
deleted file mode 100644
index f17b3dc..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ReferencedComponentImpl.java
+++ /dev/null
@@ -1,387 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: ReferencedComponentImpl.java,v 1.4 2007/02/14 16:00:52 jsholl Exp $
- */
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.DependencyType;
-import org.eclipse.wst.common.componentcore.internal.ReferencedComponent;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Dependent Module</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ReferencedComponentImpl#getHandle <em>Handle</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ReferencedComponentImpl#getRuntimePath <em>Runtime Path</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ReferencedComponentImpl#getDependencyType <em>Dependency Type</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ReferencedComponentImpl#getDependentObject <em>Dependent Object</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.ReferencedComponentImpl#getArchiveName <em>Archive Name</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ReferencedComponentImpl extends EObjectImpl implements ReferencedComponent {
-	/**
-	 * The default value of the '{@link #getHandle() <em>Handle</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getHandle()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final URI HANDLE_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getHandle() <em>Handle</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getHandle()
-	 * @generated
-	 * @ordered
-	 */
-	protected URI handle = HANDLE_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getRuntimePath() <em>Runtime Path</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getRuntimePath()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final IPath RUNTIME_PATH_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getRuntimePath() <em>Runtime Path</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getRuntimePath()
-	 * @generated
-	 * @ordered
-	 */
-	protected IPath runtimePath = RUNTIME_PATH_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getDependencyType() <em>Dependency Type</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getDependencyType()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final DependencyType DEPENDENCY_TYPE_EDEFAULT = DependencyType.USES_LITERAL;
-
-	/**
-	 * The cached value of the '{@link #getDependencyType() <em>Dependency Type</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getDependencyType()
-	 * @generated
-	 * @ordered
-	 */
-	protected DependencyType dependencyType = DEPENDENCY_TYPE_EDEFAULT;
-
-	/**
-	 * The cached value of the '{@link #getDependentObject() <em>Dependent Object</em>}' reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getDependentObject()
-	 * @generated
-	 * @ordered
-	 */
-	protected EObject dependentObject = null;
-
-	/**
-	 * The default value of the '{@link #getArchiveName() <em>Archive Name</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getArchiveName()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String ARCHIVE_NAME_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getArchiveName() <em>Archive Name</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getArchiveName()
-	 * @generated
-	 * @ordered
-	 */
-	protected String archiveName = ARCHIVE_NAME_EDEFAULT;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected ReferencedComponentImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return ComponentcorePackage.eINSTANCE.getReferencedComponent();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public URI getHandle() {
-		return handle;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setHandle(URI newHandle) {
-		URI oldHandle = handle;
-		handle = newHandle;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.REFERENCED_COMPONENT__HANDLE, oldHandle, handle));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public IPath getRuntimePath() {
-		return runtimePath;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setRuntimePath(IPath newRuntimePath) {
-		IPath oldRuntimePath = runtimePath;
-		runtimePath = newRuntimePath;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.REFERENCED_COMPONENT__RUNTIME_PATH, oldRuntimePath, runtimePath));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DependencyType getDependencyType() {
-		return dependencyType;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDependencyType(DependencyType newDependencyType) {
-		DependencyType oldDependencyType = dependencyType;
-		dependencyType = newDependencyType == null ? DEPENDENCY_TYPE_EDEFAULT : newDependencyType;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENCY_TYPE, oldDependencyType, dependencyType));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EObject getDependentObject() {
-		if (dependentObject != null && dependentObject.eIsProxy()) {
-			EObject oldDependentObject = dependentObject;
-			dependentObject = eResolveProxy((InternalEObject)dependentObject);
-			if (dependentObject != oldDependentObject) {
-				if (eNotificationRequired())
-					eNotify(new ENotificationImpl(this, Notification.RESOLVE, ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENT_OBJECT, oldDependentObject, dependentObject));
-			}
-		}
-		return dependentObject;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EObject basicGetDependentObject() {
-		return dependentObject;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDependentObject(EObject newDependentObject) {
-		EObject oldDependentObject = dependentObject;
-		dependentObject = newDependentObject;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENT_OBJECT, oldDependentObject, dependentObject));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getArchiveName() {
-		return archiveName;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setArchiveName(String newArchiveName) {
-		String oldArchiveName = archiveName;
-		archiveName = newArchiveName;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.REFERENCED_COMPONENT__ARCHIVE_NAME, oldArchiveName, archiveName));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.REFERENCED_COMPONENT__HANDLE:
-				return getHandle();
-			case ComponentcorePackage.REFERENCED_COMPONENT__RUNTIME_PATH:
-				return getRuntimePath();
-			case ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENCY_TYPE:
-				return getDependencyType();
-			case ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENT_OBJECT:
-				if (resolve) return getDependentObject();
-				return basicGetDependentObject();
-			case ComponentcorePackage.REFERENCED_COMPONENT__ARCHIVE_NAME:
-				return getArchiveName();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.REFERENCED_COMPONENT__HANDLE:
-				setHandle((URI)newValue);
-				return;
-			case ComponentcorePackage.REFERENCED_COMPONENT__RUNTIME_PATH:
-				setRuntimePath((IPath)newValue);
-				return;
-			case ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENCY_TYPE:
-				setDependencyType((DependencyType)newValue);
-				return;
-			case ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENT_OBJECT:
-				setDependentObject((EObject)newValue);
-				return;
-			case ComponentcorePackage.REFERENCED_COMPONENT__ARCHIVE_NAME:
-				setArchiveName((String)newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.REFERENCED_COMPONENT__HANDLE:
-				setHandle(HANDLE_EDEFAULT);
-				return;
-			case ComponentcorePackage.REFERENCED_COMPONENT__RUNTIME_PATH:
-				setRuntimePath(RUNTIME_PATH_EDEFAULT);
-				return;
-			case ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENCY_TYPE:
-				setDependencyType(DEPENDENCY_TYPE_EDEFAULT);
-				return;
-			case ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENT_OBJECT:
-				setDependentObject((EObject)null);
-				return;
-			case ComponentcorePackage.REFERENCED_COMPONENT__ARCHIVE_NAME:
-				setArchiveName(ARCHIVE_NAME_EDEFAULT);
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.REFERENCED_COMPONENT__HANDLE:
-				return HANDLE_EDEFAULT == null ? handle != null : !HANDLE_EDEFAULT.equals(handle);
-			case ComponentcorePackage.REFERENCED_COMPONENT__RUNTIME_PATH:
-				return RUNTIME_PATH_EDEFAULT == null ? runtimePath != null : !RUNTIME_PATH_EDEFAULT.equals(runtimePath);
-			case ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENCY_TYPE:
-				return dependencyType != DEPENDENCY_TYPE_EDEFAULT;
-			case ComponentcorePackage.REFERENCED_COMPONENT__DEPENDENT_OBJECT:
-				return dependentObject != null;
-			case ComponentcorePackage.REFERENCED_COMPONENT__ARCHIVE_NAME:
-				return ARCHIVE_NAME_EDEFAULT == null ? archiveName != null : !ARCHIVE_NAME_EDEFAULT.equals(archiveName);
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String toString() {
-		if (eIsProxy()) return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (handle: ");
-		result.append(handle);
-		result.append(", runtimePath: ");
-		result.append(runtimePath);
-		result.append(", dependencyType: ");
-		result.append(dependencyType);
-		result.append(", archiveName: ");
-		result.append(archiveName);
-		result.append(')');
-		return result.toString();
-	}
-
-} //ReferencedComponentImpl
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ReferencedComponentXMIResourceFactory.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ReferencedComponentXMIResourceFactory.java
deleted file mode 100644
index 2a157ad..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ReferencedComponentXMIResourceFactory.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedXMIFactoryImpl;
-
-public class ReferencedComponentXMIResourceFactory extends
-		ReferencedXMIFactoryImpl {
-
-	public ReferencedComponentXMIResourceFactory() {
-		super();
-		// TODO Auto-generated constructor stub
-	}
-	/**
-	 * This is the method that subclasses can override to actually instantiate a new Resource
-	 * 
-	 * @param uri
-	 * @return
-	 */
-	protected Resource doCreateResource(URI uri) {
-		return new ReferencedComponentXMIResourceImpl(uri);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ReferencedComponentXMIResourceImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ReferencedComponentXMIResourceImpl.java
deleted file mode 100644
index 333b4b0..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ReferencedComponentXMIResourceImpl.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.wst.common.internal.emf.resource.MappedXMIHelper;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedXMIResourceImpl;
-
-public class ReferencedComponentXMIResourceImpl extends
-		ReferencedXMIResourceImpl implements Resource {
-
-	public ReferencedComponentXMIResourceImpl() {
-		super();
-		// TODO Auto-generated constructor stub
-	}
-
-	public ReferencedComponentXMIResourceImpl(URI uri) {
-		super(uri);
-		// TODO Auto-generated constructor stub
-	}
-	protected MappedXMIHelper doCreateXMLHelper() {
-		return new MappedComponentXMIHelper(this, getPrefixToPackageURIs());
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeNode.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeNode.java
deleted file mode 100644
index eaab41d..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeNode.java
+++ /dev/null
@@ -1,288 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.util.Collections;
-import java.util.LinkedHashMap;
-import java.util.LinkedHashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.util.IPathProvider;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class ResourceTreeNode {
-	
-	public static final int CREATE_NONE = 0x0;
-	/** 
-	 * Type constant (bit mask value 1) which identifies creating child nodes.
-	 *
-	 */
-	public static final int CREATE_TREENODE_IFNEC = 0x1;
-
-	/**
-	 * Type constant (bit mask value 2) which identifies always creating a virtual resource.
-	 *
-	 */
-	public static final int CREATE_RESOURCE_ALWAYS = 0x2;
-
-	private final Set moduleResources = Collections.synchronizedSet(new LinkedHashSet());	
-	private final Map children = Collections.synchronizedMap(new LinkedHashMap());
-	private final Map transientChildResources = Collections.synchronizedMap(new LinkedHashMap());
-	private static final ComponentResource[] NO_MODULE_RESOURCES = new ComponentResource[]{};
-	private IPathProvider pathProvider;
-//	private ResourceTreeNode parent;
-	private String pathSegment;
-
-	public ResourceTreeNode(String aPathSegment, ResourceTreeNode parent, IPathProvider aPathProvider) {
-		pathSegment = aPathSegment;
-		pathProvider = aPathProvider;
-	}
-
-	public ResourceTreeNode addChild(ResourceTreeNode aChild) {
-		children.put(aChild.getPathSegment(), aChild);
-		return aChild;
-	}
-
-	public ResourceTreeNode addChild(ComponentResource aModuleResource) {
-		ResourceTreeNode newChild = findChild(getPathProvider().getPath(aModuleResource), CREATE_TREENODE_IFNEC);
-		if(newChild != null) {
-			newChild.addModuleResource(aModuleResource);
-			return newChild;
-		}
-		return null;
-	}
-
-	public ResourceTreeNode removeChild(ResourceTreeNode aChild) {
-		return (ResourceTreeNode) children.remove(aChild.getPathSegment());
-	}
-
-	public ResourceTreeNode removeChild(ComponentResource aModuleResource) { 
-		ResourceTreeNode containingChild = findChild(getPathProvider().getPath(aModuleResource), CREATE_NONE);
-		if(containingChild != null) {
-			containingChild.removeResource(aModuleResource);
-			if(containingChild.hasModuleResources())
-				return containingChild;
-			return removeChild(containingChild);
-		}
-		return null;
-	}
-
-	public ResourceTreeNode removeChild(IPath targetPath, ComponentResource aModuleResource) { 
-		ResourceTreeNode containingChild = findChild(targetPath, CREATE_NONE);
-		if(containingChild != null) {
-			containingChild.removeResource(aModuleResource);
-			if(containingChild.hasModuleResources())
-				return containingChild;
-			return removeChild(containingChild);
-		}
-		return null;			
-	}
-	
-	public void removeResource(ComponentResource aResource) {
-		moduleResources.remove(aResource);
-	}
-
-	public ResourceTreeNode findChild(IPath aPath) {
-		return findChild(aPath, CREATE_TREENODE_IFNEC);
-	}
-
-	public ResourceTreeNode findChild(IPath aPath, int creationFlags) {
-		if(aPath == null)
-			return null;
-		ResourceTreeNode child = this;
-		if (aPath.segmentCount() > 0) {
-			child = findChild(aPath.segment(0), creationFlags);
-			if (child == null)
-				return null;
-			if (aPath.segmentCount() == 1)
-				return child;
-			child = child.findChild(aPath.removeFirstSegments(1), creationFlags);
-
-		}
-		return child;
-	}
-
-	public ResourceTreeNode findChild(String aPathSegment) {
-		if (aPathSegment == null || aPathSegment.length() == 0)
-			return this;
-		return findChild(aPathSegment, CREATE_NONE);
-	}
-
-	public ResourceTreeNode findChild(String aPathSegment, int creationFlags) {
-		boolean toCreateChildIfNecessary = (creationFlags & CREATE_TREENODE_IFNEC) == CREATE_TREENODE_IFNEC;
-		ResourceTreeNode childNode = (ResourceTreeNode) children.get(aPathSegment);
-		if (childNode == null && toCreateChildIfNecessary)
-			childNode = addChild(aPathSegment);
-		return childNode;
-	}
-
-	public ComponentResource[] findModuleResources(IPath aPath, int creationFlags) {
-
-		Set foundModuleResources = findModuleResourcesSet(aPath, aPath, creationFlags);
-		if (foundModuleResources.size() == 0)
-			return NO_MODULE_RESOURCES;
-		return (ComponentResource[]) foundModuleResources.toArray(new ComponentResource[foundModuleResources.size()]);
-	}
-	public boolean exists(IPath aPath, int creationFlags) {
-
-		Set foundModuleResources = findModuleResourcesSet(aPath, aPath, creationFlags);
-		if (foundModuleResources.size() == 0) {
-			if (true) {
-				ResourceTreeNode child = findChild(aPath.segment(0), creationFlags);
-				if (child != null)
-					return true;
-			}
-			return false;
-		}
-		return true;
-	}
-
-	public boolean hasModuleResources() {
-		return moduleResources.size() > 0;
-	}
-
-	public ComponentResource[] getModuleResources() {
-		return (ComponentResource[]) moduleResources.toArray(new ComponentResource[moduleResources.size()]);
-	}
-
-	private Set findModuleResourcesSet(IPath aFullPath, IPath aPath, int creationFlags) {
-
-		if (aPath.segmentCount() == 0) {
-			Set resources = aggregateResources(new LinkedHashSet());
-			return resources;
-		}
-		ResourceTreeNode child = findChild(aPath.segment(0), creationFlags);
-		if (child == null)
-			return findMatchingVirtualPathsSet(aFullPath, aPath, creationFlags);
-		Set foundResources = new LinkedHashSet();
-		foundResources.addAll(child.findModuleResourcesSet(aFullPath, aPath.removeFirstSegments(1), creationFlags));
-		foundResources.addAll(findMatchingVirtualPathsSet(aFullPath, aPath, creationFlags));
-		return foundResources;
-	}
-
-	private Set findMatchingVirtualPathsSet(IPath aFullPath, IPath aPath, int creationFlags) {
-		boolean toCreateResourceAlways = (creationFlags & CREATE_RESOURCE_ALWAYS) == CREATE_RESOURCE_ALWAYS;
-		if (hasModuleResources()) {
-			ComponentResource moduleResource = null;
-			IResource eclipseResource = null;
-			IContainer eclipseContainer = null;
-			Set resultSet = new LinkedHashSet();
-			for (Iterator resourceIter = moduleResources.iterator(); resourceIter.hasNext();) {
-				moduleResource = (ComponentResource) resourceIter.next();
-				if(moduleResource.getRuntimePath() != null && moduleResource.eResource() != null) {
-					eclipseResource = StructureEdit.getEclipseResource(moduleResource);
-					
-					if (eclipseResource != null && (eclipseResource.getType() == IResource.FOLDER || eclipseResource.getType() == IResource.PROJECT)) {
-						eclipseContainer = (IContainer) eclipseResource;
-				 
-						IPath runtimeURI = moduleResource.getRuntimePath().append(aPath);
-						IPath srcPath = eclipseContainer.getProjectRelativePath().append(aPath);
-						
-						// check for existing subpath in tree
-						ComponentResource newResource = findExistingComponentResource(moduleResource.getComponent(), runtimeURI, srcPath);
-						
-						// add new resource if null
-						if(newResource == null) {
-							// flesh out the tree
-							IResource eclipseRes = eclipseContainer.findMember(aPath);
-							if ((toCreateResourceAlways) || (eclipseRes != null)) {
-								newResource = (ComponentResource)transientChildResources.get(srcPath);
-								if (newResource == null) {
-								newResource = ComponentcorePackage.eINSTANCE.getComponentcoreFactory().createComponentResource();
-								// Not setting the parent on this transient child resource
-								// newResource.setComponent(moduleResource.getComponent());
-								newResource.setRuntimePath(runtimeURI);
-								newResource.setSourcePath(srcPath);
-								if (eclipseRes != null)
-									newResource.setOwningProject(eclipseRes.getProject());
-								transientChildResources.put(srcPath,newResource);
-								}
-								resultSet.add(newResource);
-							}
-						}
-					}
-		
-				}
-			}
-			return resultSet.size() > 0 ? resultSet : Collections.EMPTY_SET;
-		}
-		return Collections.EMPTY_SET;
-	}
-
-	private ComponentResource findExistingComponentResource(WorkbenchComponent component, IPath runtimeURI, IPath srcPath) { 
-		List resources = component.getResources();
-		for (Iterator iter = resources.iterator(); iter.hasNext();) {
-			ComponentResource element = (ComponentResource) iter.next();
-			if(runtimeURI.equals(element.getRuntimePath()) && srcPath.equals(element.getSourcePath()))
-				return element;
-			
-		}
-		return null;
-	}
-
-	private Set aggregateResources(Set anAggregationSet) {
-		if (hasModuleResources())
-			anAggregationSet.addAll(moduleResources);
-		ResourceTreeNode childNode = null;
-		for (Iterator childrenIterator = children.values().iterator(); childrenIterator.hasNext();) {
-			childNode = (ResourceTreeNode) childrenIterator.next();
-			childNode.aggregateResources(anAggregationSet);
-		}
-		return anAggregationSet;
-	}
-
-	public int childrenCount() {
-		return children.size();
-	}
-
-	public String getPathSegment() {
-		return pathSegment;
-	}
-
-	protected ResourceTreeNode addChild(String aPathSegment) {
-		ResourceTreeNode newChild = null;
-		if ((newChild = (ResourceTreeNode) children.get(aPathSegment)) == null) {
-			newChild = new ResourceTreeNode(aPathSegment, this, pathProvider);
-			children.put(newChild.getPathSegment(), newChild);
-		}
-		return newChild;
-	}
-
-	protected ResourceTreeNode removeChild(String aPathSegment) {
-		return (ResourceTreeNode) children.remove(aPathSegment);
-	}
-
-	/* package */void addModuleResource(ComponentResource aModuleResource) {
-		moduleResources.add(aModuleResource);
-	}
-
-	/* package */IPathProvider getPathProvider() {
-		return pathProvider;
-	}
-	
-	public Map getChildren() {
-		return children;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRoot.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRoot.java
deleted file mode 100644
index 53293cd..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRoot.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.wst.common.componentcore.UnresolveableURIException;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.util.IPathProvider;
-import org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class ResourceTreeRoot extends ResourceTreeNode {
-	
-	private class ResourceTreeResourceListener extends AdapterImpl {
-		public void notifyChanged(Notification msg) {
-			
-			if(msg.getFeature() == ComponentcorePackage.eINSTANCE.getWorkbenchComponent_Resources()) {
-				ComponentResource resource = null;
-				switch(msg.getEventType()) {
-				case Notification.ADD:
-					resource = (ComponentResource) msg.getNewValue();
-					if(resource != null)
-						resource.eAdapters().add(getResourcePathListenerAdapter());					
-					break; 
-				case Notification.ADD_MANY:
-					List newValues = (List) msg.getNewValue();					
-					for (int i = 0; i < newValues.size(); i++) {
-						resource = (ComponentResource) newValues.get(i);
-						resource.eAdapters().add(getResourcePathListenerAdapter());
-					}
-					break;
-				case Notification.REMOVE:
-					resource = (ComponentResource) msg.getOldValue();
-					if(resource != null){
-						resource.eAdapters().remove(getResourcePathListenerAdapter());
-						removeChild(resource);
-					}
-					break;
-				case Notification.REMOVE_MANY:
-					List removedValues = (List) msg.getOldValue();
-					if (removedValues != null) {
-						for (int i = 0; i < removedValues.size(); i++) {
-							resource = (ComponentResource) removedValues.get(i);
-							resource.eAdapters().remove(getResourcePathListenerAdapter());
-							removeChild(resource);
-						}
-					}
-					break;
-				}
-			}
-		}
-	}
-	
-	private class ResourcePathListener extends AdapterImpl {
-		
-		public void setTarget(Notifier newTarget) {
-			if(newTarget instanceof ComponentResource) {				
-//				if(getTarget() != null) {
-//					if(getPathProvider().getPath((ComponentResource)getTarget()) != null)
-//						removeChild((ComponentResource)getTarget());
-//				}
-				ComponentResource resource = (ComponentResource) newTarget;
-				if(resource != null) {
-					if(getPathProvider().getPath(resource) != null)
-						addChild(resource);					
-				}		
-			}
-			super.setTarget(newTarget);
-		}
-		
-		public void notifyChanged(Notification msg) {
-			
-			if(msg.getFeature() == getPathProvider().getFeature()) {
-				ComponentResource resource = (ComponentResource) msg.getNotifier();
-				switch(msg.getEventType()) {
-				case Notification.SET:
-					
-					// remove the old value 
-					IPath oldPath = (IPath)msg.getOldValue();
-					if(oldPath!=null)
-						removeChild(oldPath, resource);
-					
-					IPath newPath = (IPath)msg.getNewValue();
-					if(newPath!=null)
-						addChild(resource);
-					break; 
-				}
-			}
-		}
-	}
-
-	// TODO The source tree should be attached to the project modules root, not each module.
-	public static ResourceTreeRoot getSourceResourceTreeRoot(WorkbenchComponent aModule) {
-		ResourceTreeRootAdapter resourceTreeAdapter = (ResourceTreeRootAdapter) ExtendedEcoreUtil.getAdapter(aModule, aModule.eAdapters(), ResourceTreeRootAdapter.SOURCE_ADAPTER_TYPE);
-		if (resourceTreeAdapter != null)
-			return resourceTreeAdapter.getResourceTreeRoot();
-		resourceTreeAdapter = new ResourceTreeRootAdapter(ResourceTreeRootAdapter.SOURCE_TREE);
-		aModule.eAdapters().add(resourceTreeAdapter);
-		return resourceTreeAdapter.getResourceTreeRoot();
-	}
-
-	public static ResourceTreeRoot getDeployResourceTreeRoot(WorkbenchComponent aModule) {
-		ResourceTreeRootAdapter resourceTreeAdapter = (ResourceTreeRootAdapter) ExtendedEcoreUtil.getAdapter(aModule, aModule.eAdapters(), ResourceTreeRootAdapter.DEPLOY_ADAPTER_TYPE);
-		if (resourceTreeAdapter != null)
-			return resourceTreeAdapter.getResourceTreeRoot();
-		resourceTreeAdapter = new ResourceTreeRootAdapter(ResourceTreeRootAdapter.DEPLOY_TREE);
-		aModule.eAdapters().add(resourceTreeAdapter);
-		return resourceTreeAdapter.getResourceTreeRoot();
-	}
-	
-	private final WorkbenchComponent module;
-	private ResourceTreeResourceListener listener;
-	private ResourcePathListener pathListener;
-
-	public ResourceTreeRoot(WorkbenchComponent aModule, IPathProvider aPathProvider) {
-		super("/", null, aPathProvider); //$NON-NLS-1$
-		module = aModule; 	
-		init();
-	}
-
-	private void init() {
-		module.eAdapters().add(getResourceTreeListenerAdapter());
-		List moduleResources = module.getResources();
-		ComponentResource moduleResource = null;		 
-		
-		for (int i = 0; i < moduleResources.size(); i++) {
-			moduleResource = (ComponentResource) moduleResources.get(i);
-			addChild(moduleResource);
-		}
-		
-	}
-
-	protected ResourceTreeResourceListener getResourceTreeListenerAdapter() {
-		if(listener == null)
-			listener = new ResourceTreeResourceListener();
-		return listener;
-	}
-
-	protected ResourcePathListener getResourcePathListenerAdapter() {
-		if(pathListener == null)
-			pathListener = new ResourcePathListener();
-		return pathListener;
-	}
-
-	public ComponentResource[] findModuleResources(URI aURI) {
-		IPath path = new Path(aURI.toString());
-		try {
-			if (ModuleURIUtil.ensureValidFullyQualifiedPlatformURI(aURI, false))
-				path = path.removeFirstSegments(1); 
-		} catch (UnresolveableURIException uurie) {
-
-		}
-		return findModuleResources(path, ResourceTreeNode.CREATE_NONE);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRootAdapter.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRootAdapter.java
deleted file mode 100644
index 24c4d17..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/ResourceTreeRootAdapter.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.util.DeployedPathProvider;
-import org.eclipse.wst.common.componentcore.internal.util.IPathProvider;
-import org.eclipse.wst.common.componentcore.internal.util.SourcePathProvider;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class ResourceTreeRootAdapter extends AdapterImpl implements Adapter {
-	
-	public static final Object SOURCE_ADAPTER_TYPE = new Object();
-	public static final Object DEPLOY_ADAPTER_TYPE = new Object();
-	public static final int SOURCE_TREE = 0;
-	public static final int DEPLOY_TREE = 1;
-	
-	private ResourceTreeRoot resourceTreeRoot;
-	private int type;
-	
-	public ResourceTreeRootAdapter(int aType) {
-		type = aType;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.emf.common.notify.impl.AdapterImpl#notifyChanged(org.eclipse.emf.common.notify.Notification)
-	 */
-	public void notifyChanged(Notification msg) {
-		super.notifyChanged(msg);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.emf.common.notify.impl.AdapterImpl#isAdapterForType(java.lang.Object)
-	 */
-	public boolean isAdapterForType(Object anAdapterType) {
-		return (SOURCE_ADAPTER_TYPE == anAdapterType && type == SOURCE_TREE) || (DEPLOY_ADAPTER_TYPE == anAdapterType && type == DEPLOY_TREE);
-	}
-	
-	public ResourceTreeRoot getResourceTreeRoot() {		
-		if(resourceTreeRoot != null)
-			return resourceTreeRoot;
-		synchronized(this) {
-			if(resourceTreeRoot == null) {
-				IPathProvider pathProvider= (type == DEPLOY_TREE) ? DeployedPathProvider.INSTANCE : SourcePathProvider.INSTANCE;
-				resourceTreeRoot = new ResourceTreeRoot((WorkbenchComponent)getTarget(), pathProvider);
-			}
-		}
-		return resourceTreeRoot;
-	}
-	
-	public void setResourceTreeRoot(ResourceTreeRoot r){
-		
-		resourceTreeRoot = r;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPEntityResolver.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPEntityResolver.java
deleted file mode 100644
index d7fe0b1..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPEntityResolver.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.xml.sax.EntityResolver;
-import org.xml.sax.InputSource;
-
-// TODO: We need to port the strings used in the exceptions.
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class WTPEntityResolver implements EntityResolver {
-
-	/**
-	 * All the dtds that this resolver knows about; import strategies register these at startup
-	 */
-	protected static Map supportedDtDs;
-	
-	// static {
-	// registerDtD("http://www.w3.org/2001/xml.xsd", "xml.xsd"); //$NON-NLS-1$ //$NON-NLS-2$
-	// registerDtD("XMLSchema.dtd", "XMLSchema.dtd"); //$NON-NLS-1$ //$NON-NLS-2$
-	// registerDtD("datatypes.dtd", "datatypes.dtd"); //$NON-NLS-1$ //$NON-NLS-2$
-	// }
-	
-	public static WTPEntityResolver INSTANCE = new WTPEntityResolver();
-
-	/**
-	 * EjbXmlEntityResolver constructor comment.
-	 */
-	public WTPEntityResolver() {
-		super();
-	}
-
-	public static Map getSupportedDtDs() {
-		if (supportedDtDs == null)
-			supportedDtDs = new HashMap();
-		return supportedDtDs;
-	}
-
-	/**
-	 * Maps the system id for the dtd to a local id to be retrieved loaded from the class path
-	 */
-	public static void registerDtD(String systemID, String localID) {
-		// TODO Removing Registration mechanism until final location is found
-		/*
-		 * getSupportedDtDs().put(systemID, localID); getSupportedDtDs().put(getShortName(systemID),
-		 * localID);
-		 */
-	}
-
-	/**
-	 * for a system id with a URL that begins with "http://java.sun.com/", check to see if that is a
-	 * recognized dtd; if so, load the dtd from the class path using the value of the registered
-	 * dtd.
-	 * 
-	 * @return an Input source on a locally resolved dtd, or null of the systemid does not start
-	 *         with "http://java.sun.com/"
-	 * 
-	 * @throws SAXException
-	 *             with a nested NotSupportedException if the dtd is not recognized
-	 * @throws FileNotFoundException
-	 *             if the resolved dtd cannot be loaded from the classpath
-	 */
-	public org.xml.sax.InputSource resolveEntity(String publicId, String systemId) throws java.io.IOException, org.xml.sax.SAXException {
-		String localResourceName = null;
-		boolean isJavaSytemId = false;
-		if (shouldBeRegistered(systemId)) {
-			localResourceName = (String) getSupportedDtDs().get(systemId);
-			isJavaSytemId = true;
-		} else {
-			String shortName = getShortName(systemId);
-			localResourceName = (String) getSupportedDtDs().get(shortName);
-			if (localResourceName != null)
-				systemId = localResourceName;
-		}
-
-		if (localResourceName == null) {
-			if (isJavaSytemId) {
-				String message = "Type is unrecognized or not yet supported: PUBLIC_ID= {0};SYSTEM_ID={1}";
-				throw new org.xml.sax.SAXException(message);
-			}
-			return null;
-		}
-		ClassLoader loader = getClass().getClassLoader();
-		URL url = null;
-		if (loader == null) {
-			url = ClassLoader.getSystemResource(localResourceName);
-		} else {
-			url = loader.getResource(localResourceName);
-		}
-
-
-		if (url == null) {
-			String message = "Could not parse xml because the resolved resource \"{0}\" could not be found in classpath";
-			throw new java.io.FileNotFoundException(message);
-		}
-
-		InputSource result = new InputSource(url.toString());
-		result.setPublicId(publicId);
-		// force the encoding to be UTF8
-		result.setEncoding("UTF-8"); //$NON-NLS-1$
-
-		return result;
-	}
-
-	protected boolean shouldBeRegistered(String systemId) {
-		// TODO Removed Resolver function until file location is known...
-		return false;
-		/*
-		 * return systemId.startsWith(J2EEConstants.JAVA_SUN_COM_URL) ||
-		 * systemId.startsWith(J2EEConstants.WWW_W3_ORG_URL) ||
-		 * systemId.startsWith(J2EEConstants.WWW_IBM_COM_URL);
-		 */
-	}
-
-	/**
-	 * Returns the filename from the uri, or the segment after the last occurrence of a separator
-	 */
-	private static String getShortName(String uri) {
-		String tempURI = uri.replace('\\', '/');
-		while (tempURI.endsWith("/")) //$NON-NLS-1$
-			tempURI = tempURI.substring(0, tempURI.length() - 1);
-		int lastIndex = tempURI.lastIndexOf('/');
-		if (lastIndex == -1)
-			return uri;
-		return uri.substring(lastIndex + 1, tempURI.length());
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPModulesInit.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPModulesInit.java
deleted file mode 100644
index 85b5516..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPModulesInit.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.emf.ecore.EFactory;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.wst.common.componentcore.internal.ComponentcoreFactory;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.internal.emf.resource.EMF2DOMRendererFactory;
-import org.eclipse.wst.common.internal.emf.utilities.DOMUtilities;
-import org.eclipse.wst.common.internal.emf.utilities.EncoderDecoderRegistry;
-import org.eclipse.wst.common.internal.emf.utilities.ExtendedEcoreUtil;
-import org.eclipse.wst.common.internal.emf.utilities.PasswordEncoderDecoder;
-
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class WTPModulesInit {
- 
-	private static boolean isInitialized = false;
-	
-	public static void init() {
-		init(true);
-	}
-	
-	public static void init(boolean toPreregisterPackages) {
-		if (!isInitialized) {
-			isInitialized = true;
-			setDefaultEncoderDecoder();
-			DOMUtilities.setDefaultEntityResolver(WTPEntityResolver.INSTANCE); 
-			initResourceFactories();
-			
-			//TODO: Remove this line after SED Adapter is restored.
-			EMF2DOMRendererFactory.INSTANCE.setValidating(false);
-		}
-		if(toPreregisterPackages) 
-			preregisterPackages();
-	}
-	
-	private static void initResourceFactories() {
-		WTPModulesResourceFactory.register();	
-	}
-
-	/** 
-	 * If the currently defaulted encoder is the initial pass thru encoder,
-	 * then register a Password encoder for security; otherwise if a more sophisticated
-	 * encoder is already registered, then do nothing.
-	 */
-	private static void setDefaultEncoderDecoder() {
-		EncoderDecoderRegistry reg = EncoderDecoderRegistry.getDefaultRegistry();
-		if (reg.getDefaultEncoderDecoder() == EncoderDecoderRegistry.INITIAL_DEFAULT_ENCODER) {
-			reg.setDefaultEncoderDecoder(new PasswordEncoderDecoder());
-		}
-	}
-	
-	private static void preregisterPackages() { 
-		ExtendedEcoreUtil.preRegisterPackage("moduleCore.xmi", new EPackage.Descriptor() { //$NON-NLS-1$
-			public EPackage getEPackage() {
-				return ComponentcorePackage.eINSTANCE;
-			}
-			public EFactory getEFactory() {
-				return ComponentcoreFactory.eINSTANCE;
-			}
-		});
-	}
-	
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPModulesResource.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPModulesResource.java
deleted file mode 100644
index 93c2084..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPModulesResource.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.wst.common.componentcore.internal.util.WTPModulesTranslator;
-import org.eclipse.wst.common.internal.emf.resource.Renderer;
-import org.eclipse.wst.common.internal.emf.resource.Translator;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorResource;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class WTPModulesResource extends TranslatorResourceImpl implements TranslatorResource {
-	
-	public WTPModulesResource(URI aURI, Renderer aRenderer) {
-		super(aURI, aRenderer);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl#getDefaultPublicId()
-	 */
-	protected String getDefaultPublicId() { 
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl#getDefaultSystemId()
-	 */
-	protected String getDefaultSystemId() { 
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emf.resource.TranslatorResourceImpl#getDefaultVersionID()
-	 */
-	protected int getDefaultVersionID() { 
-		return 0;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emf.resource.TranslatorResource#getDoctype()
-	 */
-	public String getDoctype() { 
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emf.resource.TranslatorResource#getRootTranslator()
-	 */
-	public Translator getRootTranslator() {
-		return WTPModulesTranslator.INSTANCE;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPModulesResourceFactory.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPModulesResourceFactory.java
deleted file mode 100644
index ee2a6dd..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPModulesResourceFactory.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.internal.emf.resource.EMF2DOMRendererFactory;
-import org.eclipse.wst.common.internal.emf.resource.Renderer;
-import org.eclipse.wst.common.internal.emf.resource.RendererFactory;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorResource;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorResourceFactory;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class WTPModulesResourceFactory extends TranslatorResourceFactory {
-	
-	
-	public static final String WTP_MODULES_SHORT_NAME = "org.eclipse.wst.common.component"; //$NON-NLS-1$
-	public static final String OLD_WTP_MODULES_SHORT_NAME = ".component"; //$NON-NLS-1$
-	public static final String FIRST_WTP_MODULES_SHORT_NAME = ".wtpmodules"; //$NON-NLS-1$
-	public static final URI WTP_MODULES_URI_OBJ = URI.createURI(StructureEdit.MODULE_META_FILE_NAME);
-	public static final URI OLD_WTP_MODULES_URI_OBJ = URI.createURI(".settings/.component");
-	
-
-	/**
-	 * Method registerDtds.
-	 */
-	public static void registerDtds() {
-		//do nothing
-	}
-
-	/**
-	 * Constructor for ApplicationClientResourceFactory.
-	 * @param aRendererFactory
-	 */
-	public WTPModulesResourceFactory(RendererFactory aRendererFactory) {
-		super(aRendererFactory);
-	}
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see com.ibm.etools.emf2xml.RendererFactory.Listener#updateRendererFactory(com.ibm.etools.emf2xml.RendererFactory)
-	 */
-	public void updateRendererFactory(RendererFactory newRendererFactory) {
-		//Do Nothing...   not allowed to switch
-	}
-
-	/**
-	 * @see com.ibm.etools.emf2xml.impl.TranslatorResourceFactory#createResource(URI, Renderer)
-	 */
-	protected TranslatorResource createResource(URI uri, Renderer aRenderer) {
-		return new WTPModulesResource(uri, aRenderer);
-	}
-	
-	/**
-	 * Register myself with the Resource.Factory.Registry
-	 */
-	public static void registerWith(RendererFactory aRendererFactory) {
-		WTPResourceFactoryRegistry.INSTANCE.registerLastFileSegment(WTP_MODULES_SHORT_NAME, new WTPModulesResourceFactory(aRendererFactory));
-		WTPResourceFactoryRegistry.INSTANCE.registerLastFileSegment(OLD_WTP_MODULES_SHORT_NAME, new WTPModulesResourceFactory(aRendererFactory));
-		WTPResourceFactoryRegistry.INSTANCE.registerLastFileSegment(FIRST_WTP_MODULES_SHORT_NAME, new WTPModulesResourceFactory(aRendererFactory));
-	}
-	/**
-	 * register using the default renderer factory.
-	 * @see #registerWith(RendererFactory)
-	 */
-	public static void register() {
-		registerWith(EMF2DOMRendererFactory.INSTANCE);
-	}
-
-	
-	public static Resource.Factory getRegisteredFactory() {
-		return WTPResourceFactoryRegistry.INSTANCE.getFactory(WTP_MODULES_URI_OBJ);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPResourceFactoryRegistry.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPResourceFactoryRegistry.java
deleted file mode 100644
index ecdb100..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WTPResourceFactoryRegistry.java
+++ /dev/null
@@ -1,489 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.Iterator;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.SafeRunner;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.core.runtime.jobs.ILock;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.jem.util.RegistryReader;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.UnresolveableURIException;
-import org.eclipse.wst.common.componentcore.internal.ModulecorePlugin;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.internal.emf.resource.FileNameResourceFactoryRegistry;
-import org.eclipse.wst.common.internal.emf.resource.ResourceFactoryDescriptor;
-import org.eclipse.wst.common.internal.emf.utilities.DefaultOverridableResourceFactoryRegistry;
-import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;
-import org.eclipse.wst.common.internal.emfworkbench.edit.EMFWorkbenchEditContextFactory;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class WTPResourceFactoryRegistry extends FileNameResourceFactoryRegistry {
-
-	public static final WTPResourceFactoryRegistry INSTANCE = new WTPResourceFactoryRegistry();
-	 
-	private final static boolean LOG_WARNINGS = false;
-	
-	
-	private WTPResourceFactoryRegistry() {
-		new ResourceFactoryRegistryReader().readRegistry();
-	}
-	
-	public Resource.Factory delegatedGetFactory(URI uri) {
-		if (WTPResourceFactoryRegistry.INSTANCE == this)
-			return super.delegatedGetFactory(uri);
-		return WTPResourceFactoryRegistry.INSTANCE.getFactory(uri);	
-	}   
-
-	public Resource.Factory getFactory(URI uri, IContentDescription description) {
-		IProject componentProject = null;
-		try {
-			componentProject = StructureEdit.getContainingProject(uri);
-		} catch (UnresolveableURIException e) {
-			// don't do anything
-		}
-		ILock lock = EMFWorkbenchEditContextFactory.getProjectLockObject(componentProject);
-		try{
-			if(null != lock){
-				lock.acquire();
-			}
-			synchronized(this){
-				Resource.Factory resourceFactory = null;
-				if(uri != null && uri.lastSegment() != null) {
-					ResourceFactoryDescriptor descriptor = null;
-					if(null == description){
-						descriptor = getDescriptor(uri);
-					} else {
-						descriptor = getDescriptor(uri, description);
-					}
-					
-					if(descriptor != null) {
-						resourceFactory = getFactory(descriptor);	
-					}	
-				}
-				if(resourceFactory == null)
-					resourceFactory = super.getFactory(uri);
-				return resourceFactory;
-			}
-		} finally{
-			if(null != lock){
-				lock.release();
-			}
-		} 
-	}
-	
-	public Resource.Factory getFactory(URI uri) {
-		return getFactory(uri, (IContentDescription)null);
-	}	
-
-
-	/**
-	 * Register a file name representing the last segment of a URI with the corresponding
-	 * Resource.Factory.
-	 */
-	public synchronized void registerLastFileSegment(String aSimpleFileName, Resource.Factory aFactory) { 
-		
-		if(LOG_WARNINGS) {
-			/* the third entry in the array is this stack frame, we walk back from there. */
-			StackTraceElement[] stackTrace = (new Exception()).getStackTrace();
-			if(stackTrace.length > 4) {
-				StringBuffer warningMessage = new StringBuffer("WTPResourceFactoryRegistry.registerLastFileSegment() was called explicitly from " + stackTrace[3]);
-				warningMessage.append("\nThis happened around: \n");
-				for (int i = 4; (i < stackTrace.length) && i < 8; i++) {
-					warningMessage.append("\tnear ").append(stackTrace[i]).append('\n');
-				}
-				warningMessage.append(".\nClients should use the org.eclipse.wst.common.modulecore.resourceFactories extension point instead.");
-				ModulecorePlugin.log(IStatus.INFO, 0, warningMessage.toString(), null);		
-			}
-		}
-		
-		super.registerLastFileSegment(aSimpleFileName, aFactory);
-		
-	}  
-	private WTPResourceFactoryRegistryKey getKey(ResourceFactoryDescriptor descriptor) {
-		WTPResourceFactoryRegistryKey key = new WTPResourceFactoryRegistryKey();
-		key.shortName = descriptor.getShortSegment();
-		key.type = descriptor.getContentType();
-		key.isDefault = descriptor.isDefault();
-		if(descriptor instanceof ConfigurationResourceFactoryDescriptor){
-			ConfigurationResourceFactoryDescriptor configurationDescriptor = (ConfigurationResourceFactoryDescriptor)descriptor;
-			key.factoryClassName = configurationDescriptor.getFactoryClassName();
-			key.overridesFactoryClassName = configurationDescriptor.getOverridesFactoryClassName();
-		}
-		return key;
-	}
-	
-	/**
-	 * Declares a subclass to create Resource.Factory(ies) from an extension. 
-	 */
-	private class ConfigurationResourceFactoryDescriptor extends ResourceFactoryDescriptor  implements IResourceFactoryExtPtConstants {
-		
-		private String shortSegment;
-		private IContentType contentType;
-		private boolean isDefault = true;
-		private String factoryClassName = null;
-		private String overridesFactoryClassName = null;
-		private final IConfigurationElement element; 
-		
-		public ConfigurationResourceFactoryDescriptor(IConfigurationElement ext) throws CoreException {
-			Assert.isNotNull(ext);
-			element = ext;
-			init();
-		} 
-		
-		public String getOverridesFactoryClassName() {
-			return overridesFactoryClassName;
-		}
-
-		public String getFactoryClassName() {
-			return factoryClassName;
-		}
-
-		private void init() throws CoreException {
-			shortSegment = element.getAttribute(ATT_SHORT_SEGMENT);
-			
-			IConfigurationElement[] bindings = element.getChildren(TAG_CONTENTTYPE);
-			if (bindings.length > 0) {
-				String contentTypeId = null;
-				contentTypeId = bindings[0].getAttribute(ATT_CONTENTTYPEID);			
-				if (contentTypeId != null)
-					contentType = Platform.getContentTypeManager().getContentType(contentTypeId);
-			}
-			
-			if ((shortSegment == null || shortSegment.trim().length() == 0)
-						&& contentType == null) {
-				throw new CoreException(
-							ModulecorePlugin.createErrorStatus(0, 
-										"Either the shortSegment attribute or the contentType element of " //$NON-NLS-1$
-										+ TAG_RESOURCE_FACTORY 
-										+ " must be specified in " 
-										+ element.getNamespaceIdentifier()
-										+ ".  The shortSegment attribute is specified with a valid, non-null, " //$NON-NLS-1$
-										+ "non-empty value, and the contentType element is specified with a " //$NON-NLS-1$
-										+ "valid, non-null, non-empty contentTypeId." //$NON-NLS-1$
-										, null));
-			}
-			
-			if ("false".equals(element.getAttribute(ATT_ISDEFAULT)))
-				isDefault = false;
-				
-            factoryClassName = element.getAttribute(ATT_CLASS);
-			overridesFactoryClassName = element.getAttribute(ATT_OVERRIDES_FACTORY);				
-		} 
-
-		public boolean isEnabledFor(URI fileURI) {
-			// Not sure where this is actually used, so not sure what the proper 
-			// implementation should be, so simply checking the short segment for now
-			if (fileURI != null && fileURI.lastSegment() != null && shortSegment != null) {
-				return shortSegment.equals(fileURI.lastSegment());
-			}
-			return false;
-		} 
-		
-		public Resource.Factory createFactory() {
-			
-			final Resource.Factory[] factory = new Resource.Factory[1];
-			
-			SafeRunner.run(new ISafeRunnable() {
-				
-				public void run() throws Exception {
-					factory[0] = (Resource.Factory) element.createExecutableExtension(ATT_CLASS);					
-				}
-				
-				public void handleException(Throwable exception) {
-					ModulecorePlugin.log(ModulecorePlugin.createErrorStatus(0, exception.getMessage(), exception));					
-				}
-			});
-			
-			return factory[0] != null ? factory[0] : DefaultOverridableResourceFactoryRegistry.GLOBAL_FACTORY;
-			
-		}
-
-		public String getShortSegment() {
-			return shortSegment;
-		}
-
-		public IContentType getContentType() {
-			return contentType;
-		}
-
-		public boolean isDefault() {
-			return isDefault;
-		}
-		
-		public int hashCode() {
-			int hashCode = 0;
-			if (getContentType() != null) {
-				hashCode |= getContentType().hashCode();
-			}
-			if (getShortSegment() != null) {
-				hashCode |= getShortSegment().hashCode();
-			}
-			return hashCode;
-		}
-		
-		public boolean equals(Object o) {
-			if (! (o instanceof ResourceFactoryDescriptor)) {
-				return false;
-			}
-			ResourceFactoryDescriptor rfdo = (ResourceFactoryDescriptor) o;
-			boolean equals = true;
-			equals &= (getContentType() == null) ? rfdo.getContentType() == null :
-				getContentType().equals(rfdo.getContentType());
-			equals &= (getShortSegment() == null) ? rfdo.getShortSegment() == null :
-				getShortSegment().equals(rfdo.getShortSegment());
-			return equals;
-		}
-	}
-	 
-	
-	private class ResourceFactoryRegistryReader extends RegistryReader implements IResourceFactoryExtPtConstants { 
- 		
-		public ResourceFactoryRegistryReader() {
-			super(ModulecorePlugin.PLUGIN_ID, EXTPT_RESOURCE_FACTORIES);
-		}
-
-		public boolean readElement(final IConfigurationElement element) {
-			
-			if(element != null && TAG_RESOURCE_FACTORY.equals(element.getName())) {
-				final boolean[] success = new boolean[] { true }; 
-				SafeRunner.run(new ISafeRunnable() {
-					
-					public void run() throws Exception {
-						addDescriptor(new ConfigurationResourceFactoryDescriptor(element));
-					} 
-
-					public void handleException(Throwable exception) {
-						ModulecorePlugin.log(ModulecorePlugin.createErrorStatus(0, exception.getMessage(), exception));
-						success[0] = false;
-					}
-				});				
-				return success[0];
-			} else {
-				return false;
-			}	
-		}
-	}
-	private class WTPResourceFactoryRegistryKey { 
- 		
-		public String overridesFactoryClassName;
-		public String factoryClassName;
-		public String shortName;
-		public IContentType type;
-		public boolean isDefault = true;
-		public WTPResourceFactoryRegistryKey() {
-			super();
-		}
-		
-		/**
-		 * Sort in the following manner:
-		 * First, sort by shortName, if shortName is null, then it comes last
-		 * If shortNames are equal, then sort by isDefault
-		 * If isDefault is also equal, then the one defining a factoryClassName wins
-		 * If both have factoryClassNames, then check to see if one overrides the other via overridesFactoryClassName
-		 * If neither override the other factory class, then sort by factoryClassname
-		 * @param other
-		 * @return
-		 */
-		public int compareTo(WTPResourceFactoryRegistryKey other){
-			if(this == other){
-				return 0;
-			}
-			if(shortName == null && other.shortName == null){
-				return 0;
-			} else if(shortName == null){
-				return 1;
-			} else if(other.shortName == null){
-				return -1;
-			}
-			
-			int shortNameCompare = this.shortName.compareTo(other.shortName);
-			if(shortNameCompare != 0){
-				return shortNameCompare;
-			} else {
-				if(this.isDefault != other.isDefault){
-					if(this.isDefault){
-						return -1;
-					} else {
-						return 1;
-					}
-				} else {
-					if(this.factoryClassName == null && other.factoryClassName == null){
-						return 0;
-					} else if(other.factoryClassName == null){
-						return -1;
-					} else if (this.factoryClassName == null){
-						return 1;
-					} else if(other.factoryClassName.equals(this.overridesFactoryClassName)){
-						return -1;
-					} else if(this.factoryClassName.equals(other.overridesFactoryClassName)){
-						return 1;
-					} else {
-						return this.factoryClassName.compareTo(other.factoryClassName);
-					}	
-				}
-			}
-		}
-	}
-
-	protected void addDescriptor(ResourceFactoryDescriptor descriptor) {
-		getDescriptors().put(getKey(descriptor), descriptor);
-	}
-	
-	private WTPResourceFactoryRegistryKey []  sortedDescriptors = null;
-	
-	private WTPResourceFactoryRegistryKey []  getSortedDescriptorKeys() {
-		if(sortedDescriptors == null || sortedDescriptors.length != getDescriptors().size()){
-			Set keys = getDescriptors().keySet();
-			WTPResourceFactoryRegistryKey [] array = new WTPResourceFactoryRegistryKey [keys.size()];
-			int count = 0;
-			for (Iterator iterator = keys.iterator(); iterator.hasNext();count++) {
-				WTPResourceFactoryRegistryKey key = (WTPResourceFactoryRegistryKey) iterator.next();
-				array[count] = key;
-			}
-			Arrays.sort(array, new Comparator<WTPResourceFactoryRegistryKey>() {
-				public int compare(WTPResourceFactoryRegistryKey key1,
-						WTPResourceFactoryRegistryKey key2) {
-					return key1.compareTo(key2);
-				}
-			});
-			sortedDescriptors = array;
-		}
-		return sortedDescriptors;
-	}
-
-	protected synchronized ResourceFactoryDescriptor getDescriptor(URI uri, IContentDescription description) {
-		WTPResourceFactoryRegistryKey [] keys = getSortedDescriptorKeys();
-		ResourceFactoryDescriptor defaultDescriptor = null;
-		
-		// first check content type
-		if (description != null) {
-			for (WTPResourceFactoryRegistryKey key : keys) {
-				ResourceFactoryDescriptor descriptor = (ResourceFactoryDescriptor) getDescriptors().get(key);
-				
-				if ((key.type != null) && (description.getContentType().equals(key.type))) {
-					if ((defaultDescriptor == null) || (key.isDefault)) {
-						defaultDescriptor = descriptor;
-					}
-				}
-			}
-		}
-		
-		// then check short name, overriding default if necessary
-		for (WTPResourceFactoryRegistryKey key : keys) {
-			ResourceFactoryDescriptor descriptor = (ResourceFactoryDescriptor) getDescriptors().get(key);
-						
-			if ((key.shortName != null) && (uri.lastSegment().equals(key.shortName))) {
-				if ((defaultDescriptor == null) 
-						|| ((description == null) && (key.isDefault))) {
-					defaultDescriptor = descriptor;
-				}
-			}
-		}
-		
-		return defaultDescriptor;
-	}
-	
-	private URI newPlatformURI(URI aNewURI, IProject project) {
-		
-		if (project == null)
-			return ModuleURIUtil.trimToDeployPathSegment(aNewURI);
-		try {
-			IVirtualComponent component = ComponentCore.createComponent(project);
-
-			URI deployPathSegment = ModuleURIUtil.trimToDeployPathSegment(aNewURI);
-			
-			//IVirtualFile newFile = component.getFile(new Path(deployPathSegment.path()));			
-			IVirtualFolder rootFolder = component.getRootFolder();
-			IVirtualFile newFile = rootFolder.getFile(new Path(deployPathSegment.path()));
-			
-			return URI.createPlatformResourceURI(newFile.getWorkspaceRelativePath().toString());
-			 
-		} catch(Exception e) {
-			e.printStackTrace();
-		}
-		return null;
-	}
-	
-	private IContentDescription getDescriptionFromURI(URI uri) {
-		String contentTypeIdentifier = ModuleURIUtil.getContentTypeName(uri);
-		if (contentTypeIdentifier != null)
-			return Platform.getContentTypeManager().getContentType(contentTypeIdentifier).getDefaultDescription();
-		else
-			return null;
-		
-	}
-
-	protected synchronized ResourceFactoryDescriptor getDescriptor(URI uri) {
-		IFile file = WorkbenchResourceHelper.getPlatformFile(uri);
-		IContentDescription description = null;
-		if (file != null && file.exists()) {
-			try {
-				description = file.getContentDescription();
-			} catch (CoreException e) {
-				// TODO Auto-generated catch block
-				e.printStackTrace();
-			}
-		}
-		if (description == null) {//Check for optional embedded uri segment, then normalize
-			description = getDescriptionFromURI(uri);
-			try {
-				if (description != null) {
-					IProject componentProject = null;
-					try {
-						componentProject = StructureEdit.getContainingProject(uri);
-					} catch (UnresolveableURIException e) {
-						// TODO Auto-generated catch block
-						e.printStackTrace();
-					}
-					uri = PlatformURLModuleConnection.resolve(uri);
-					uri = newPlatformURI(uri,componentProject);
-				} 
-			} catch (IOException e) {
-				// TODO Auto-generated catch block
-				e.printStackTrace();
-			}
-		}
-		
-		ResourceFactoryDescriptor defaultDesc = getDescriptor(uri, description);
-		// Ok no content type match - go to super
-		if (defaultDesc != null){
-			return defaultDesc;
-		}
-		else{
-			return super.getDescriptor(uri);
-		}
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WorkbenchComponentImpl.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WorkbenchComponentImpl.java
deleted file mode 100644
index 883ebb9..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/impl/WorkbenchComponentImpl.java
+++ /dev/null
@@ -1,569 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: WorkbenchComponentImpl.java,v 1.14 2007/02/14 16:00:52 jsholl Exp $
- */
-package org.eclipse.wst.common.componentcore.internal.impl;
-
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
-import org.eclipse.emf.ecore.util.EObjectContainmentEList;
-import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
-import org.eclipse.emf.ecore.util.EObjectResolvingEList;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentType;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.Property;
-import org.eclipse.wst.common.componentcore.internal.ReferencedComponent;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-
-/**
- * <!-- begin-user-doc --> An implementation of the model object '<em><b>Workbench Module</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl#getName <em>Name</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl#getResources <em>Resources</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl#getComponentType <em>Component Type</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl#getReferencedComponents <em>Referenced Components</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl#getProperties <em>Properties</em>}</li>
- *   <li>{@link org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl#getMetadataResources <em>Metadata Resources</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class WorkbenchComponentImpl extends EObjectImpl implements WorkbenchComponent {
-	
-	
-	
-	public static class ESynchronizedAdapterList extends EAdapterList
-	  {
-	
-	    public ESynchronizedAdapterList(Notifier notifier) {
-			super(notifier);
-		}
-	
-		public boolean add(Object object)
-	    {
-	    synchronized (this) {return super.add(object);}
-	    }
-	
-	    public void add(int index, Object object)
-	    {
-	    synchronized (this) {super.add(index, object);}
-	    }
-	
-	    public boolean addAll(Collection collection)
-	    {
-	    synchronized (this) {return super.addAll(collection);}
-	    }
-	
-	    public boolean remove(Object object)
-	    {
-	    synchronized (this) {return super.remove(object);}
-	    }
-	
-	    public Object remove(int index)
-	    {
-	    synchronized (this) {return super.remove(index);}
-	    }
-	
-	    public boolean removeAll(Collection collection)
-	    {
-	    synchronized (this) {return super.removeAll(collection);}
-	    }
-	
-	    public void clear()
-	    {
-	     synchronized (this) {super.clear();};
-	    }
-	
-	
-	    public Object set(int index, Object object)
-	    {
-	    synchronized (this) {return super.set(index, object);}
-	    }
-	
-	    public void move(int newPosition, Object object)
-	    {
-	    synchronized (this) {super.move(newPosition, object);}
-	    }
-	
-	    public Object move(int newPosition, int oldPosition)
-	    {
-	    synchronized (this) {return super.move(newPosition, oldPosition);}
-	    }
-	  }
-
-	/**
-	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getName()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String NAME_EDEFAULT = "";
-
-	/**
-	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getName()
-	 * @generated
-	 * @ordered
-	 */
-	protected String name = NAME_EDEFAULT;
-
-	/**
-	 * The cached value of the '{@link #getResources() <em>Resources</em>}' containment reference list.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see #getResources()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList resources = null;
-
-	/**
-	 * The cached value of the '{@link #getComponentType() <em>Component Type</em>}' containment reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getComponentType()
-	 * @generated
-	 * @ordered
-	 */
-	protected ComponentType componentType = null;
-
-	/**
-	 * The cached value of the '{@link #getReferencedComponents() <em>Referenced Components</em>}' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getReferencedComponents()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList referencedComponents = null;
-
-	/**
-	 * The cached value of the '{@link #getProperties() <em>Properties</em>}' reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getProperties()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList properties = null;
-
-	/**
-	 * The cached value of the '{@link #getMetadataResources() <em>Metadata Resources</em>}' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getMetadataResources()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList metadataResources = null;
-
-//	private final Map resourceIndexByDeployPath = new HashMap();
-//	private final Map resourceIndexBySourcePath = new HashMap();
-
-//	private boolean isIndexedByDeployPath;
-
-//	private boolean isIndexedBySourcePath;
-
-//	private static final ComponentResource[] NO_MODULE_RESOURCES = new ComponentResource[0];
-
-	private URI handle;
-	
-	private IPath defaultSourceRoot;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected WorkbenchComponentImpl() {
-		super();
-	}
-
-	private IPath getFirstRootSource() {
-		
-		List res = getResources();
-		for (Iterator iter = res.iterator(); iter.hasNext();) {
-			ComponentResource element = (ComponentResource) iter.next();
-			if (element.getRuntimePath().equals(new Path("/")))
-				return element.getSourcePath();
-			
-		}	
-		return null;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected EClass eStaticClass() {
-		return ComponentcorePackage.eINSTANCE.getWorkbenchComponent();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getName() {
-		return name;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setNameGen(String newName) {
-		String oldName = name;
-		name = newName;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.WORKBENCH_COMPONENT__NAME, oldName, name));
-	}
-
-	public void setName(String newDeployedName) {
-		setNameGen(newDeployedName);
-		// TODO A more advanced adapter should be applied to keep the handle up to date.
-		if (eResource() != null) {
-			URI resourceURI = eResource().getURI();
-//			String safeDeployedName = getName() != null ? getName() : ""; //$NON-NLS-1$
-			if (resourceURI != null && resourceURI.segmentCount() >= 2)
-				setHandle(computeHandle());
-		}
-	}
-	
-	protected void setHandle(URI aHandle) {
-		handle = aHandle;
-	}
-	
-	public URI getHandle() {
-		if(handle == null)
-			handle = computeHandle();
-		return handle;
-	}
-
-	private URI computeHandle() {
-		return URI.createURI(PlatformURLModuleConnection.MODULE_PROTOCOL + IPath.SEPARATOR + PlatformURLModuleConnection.RESOURCE_MODULE + IPath.SEPARATOR + computeProjectName() + IPath.SEPARATOR + getName());
-		
-	}
-
-	private String computeProjectName() {
-		IProject project = ProjectUtilities.getProject(this);
-		return (project!=null)?project.getName():"UNCONTAINED"; //$NON-NLS-1$
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EList getResources() {
-		if (resources == null) {
-			resources = new EObjectContainmentWithInverseEList(ComponentResource.class, this, ComponentcorePackage.WORKBENCH_COMPONENT__RESOURCES, ComponentcorePackage.COMPONENT_RESOURCE__COMPONENT);
-		}
-		return resources;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ComponentType getComponentType() {
-		return componentType;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain basicSetComponentType(ComponentType newComponentType, NotificationChain msgs) {
-		ComponentType oldComponentType = componentType;
-		componentType = newComponentType;
-		if (eNotificationRequired()) {
-			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ComponentcorePackage.WORKBENCH_COMPONENT__COMPONENT_TYPE, oldComponentType, newComponentType);
-			if (msgs == null) msgs = notification; else msgs.add(notification);
-		}
-		return msgs;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setComponentType(ComponentType newComponentType) {
-		if (newComponentType != componentType) {
-			NotificationChain msgs = null;
-			if (componentType != null)
-				msgs = ((InternalEObject)componentType).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ComponentcorePackage.WORKBENCH_COMPONENT__COMPONENT_TYPE, null, msgs);
-			if (newComponentType != null)
-				msgs = ((InternalEObject)newComponentType).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ComponentcorePackage.WORKBENCH_COMPONENT__COMPONENT_TYPE, null, msgs);
-			msgs = basicSetComponentType(newComponentType, msgs);
-			if (msgs != null) msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, ComponentcorePackage.WORKBENCH_COMPONENT__COMPONENT_TYPE, newComponentType, newComponentType));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EList getReferencedComponents() {
-		if (referencedComponents == null) {
-			referencedComponents = new EObjectContainmentEList(ReferencedComponent.class, this, ComponentcorePackage.WORKBENCH_COMPONENT__REFERENCED_COMPONENTS);
-		}
-		return referencedComponents;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EList getProperties() {
-		if (properties == null) {
-			properties = new EObjectResolvingEList(Property.class, this, ComponentcorePackage.WORKBENCH_COMPONENT__PROPERTIES);
-		}
-		return properties;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EList getMetadataResources() {
-		if (metadataResources == null) {
-			metadataResources = new EDataTypeUniqueEList(IPath.class, this, ComponentcorePackage.WORKBENCH_COMPONENT__METADATA_RESOURCES);
-		}
-		return metadataResources;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case ComponentcorePackage.WORKBENCH_COMPONENT__RESOURCES:
-					return ((InternalEList)getResources()).basicAdd(otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case ComponentcorePackage.WORKBENCH_COMPONENT__RESOURCES:
-					return ((InternalEList)getResources()).basicRemove(otherEnd, msgs);
-				case ComponentcorePackage.WORKBENCH_COMPONENT__COMPONENT_TYPE:
-					return basicSetComponentType(null, msgs);
-				case ComponentcorePackage.WORKBENCH_COMPONENT__REFERENCED_COMPONENTS:
-					return ((InternalEList)getReferencedComponents()).basicRemove(otherEnd, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.WORKBENCH_COMPONENT__NAME:
-				return getName();
-			case ComponentcorePackage.WORKBENCH_COMPONENT__RESOURCES:
-				return getResources();
-			case ComponentcorePackage.WORKBENCH_COMPONENT__COMPONENT_TYPE:
-				return getComponentType();
-			case ComponentcorePackage.WORKBENCH_COMPONENT__REFERENCED_COMPONENTS:
-				return getReferencedComponents();
-			case ComponentcorePackage.WORKBENCH_COMPONENT__PROPERTIES:
-				return getProperties();
-			case ComponentcorePackage.WORKBENCH_COMPONENT__METADATA_RESOURCES:
-				return getMetadataResources();
-		}
-		return eDynamicGet(eFeature, resolve);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.WORKBENCH_COMPONENT__NAME:
-				setName((String)newValue);
-				return;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__RESOURCES:
-				getResources().clear();
-				getResources().addAll((Collection)newValue);
-				return;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__COMPONENT_TYPE:
-				setComponentType((ComponentType)newValue);
-				return;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__REFERENCED_COMPONENTS:
-				getReferencedComponents().clear();
-				getReferencedComponents().addAll((Collection)newValue);
-				return;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__PROPERTIES:
-				getProperties().clear();
-				getProperties().addAll((Collection)newValue);
-				return;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__METADATA_RESOURCES:
-				getMetadataResources().clear();
-				getMetadataResources().addAll((Collection)newValue);
-				return;
-		}
-		eDynamicSet(eFeature, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.WORKBENCH_COMPONENT__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__RESOURCES:
-				getResources().clear();
-				return;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__COMPONENT_TYPE:
-				setComponentType((ComponentType)null);
-				return;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__REFERENCED_COMPONENTS:
-				getReferencedComponents().clear();
-				return;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__PROPERTIES:
-				getProperties().clear();
-				return;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__METADATA_RESOURCES:
-				getMetadataResources().clear();
-				return;
-		}
-		eDynamicUnset(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case ComponentcorePackage.WORKBENCH_COMPONENT__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case ComponentcorePackage.WORKBENCH_COMPONENT__RESOURCES:
-				return resources != null && !resources.isEmpty();
-			case ComponentcorePackage.WORKBENCH_COMPONENT__COMPONENT_TYPE:
-				return componentType != null;
-			case ComponentcorePackage.WORKBENCH_COMPONENT__REFERENCED_COMPONENTS:
-				return referencedComponents != null && !referencedComponents.isEmpty();
-			case ComponentcorePackage.WORKBENCH_COMPONENT__PROPERTIES:
-				return properties != null && !properties.isEmpty();
-			case ComponentcorePackage.WORKBENCH_COMPONENT__METADATA_RESOURCES:
-				return metadataResources != null && !metadataResources.isEmpty();
-		}
-		return eDynamicIsSet(eFeature);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String toString() {
-		if (eIsProxy()) return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (name: ");
-		result.append(name);
-		result.append(", metadataResources: ");
-		result.append(metadataResources);
-		result.append(')');
-		return result.toString();
-	}
-
-	public ComponentResource[] findResourcesByRuntimePath(IPath aDeployPath) { 
-		ResourceTreeRoot resourceTreeRoot = ResourceTreeRoot.getDeployResourceTreeRoot(this);
-		return resourceTreeRoot.findModuleResources(aDeployPath, ResourceTreeNode.CREATE_NONE); 
-	}
-
-	public ComponentResource[] findResourcesBySourcePath(IPath aSourcePath, int resourceFlag) { 
-		ResourceTreeRoot resourceTreeRoot = ResourceTreeRoot.getSourceResourceTreeRoot(this);
-		return resourceTreeRoot.findModuleResources(aSourcePath, resourceFlag); 
-	}
-	public boolean exists(IPath aSourcePath, int resourceFlag) { 
-		ResourceTreeRoot resourceTreeRoot = ResourceTreeRoot.getSourceResourceTreeRoot(this);
-		return resourceTreeRoot.exists(aSourcePath, resourceFlag); 
-	}
-	public EList eAdapters()
-	  {
-	    if (eAdapters == null)
-	    {
-	      eAdapters =  new ESynchronizedAdapterList(this);
-	    }
-	    return eAdapters;
-	  }
-
-
-	public void eNotify(Notification notification) {
-		synchronized (eAdapters()) {
-			super.eNotify(notification);
-		}
-	}
-	
-	public IPath getDefaultSourceRoot() {
-		if (defaultSourceRoot == null)
-			defaultSourceRoot = getFirstRootSource();
-		return defaultSourceRoot;
-	}
-	
-	public void setDefaultSourceRoot(IPath defaultSourceRoot) {
-		this.defaultSourceRoot = defaultSourceRoot;
-	}
-  
-
-} // WorkbenchComponentImpl
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ArtifactEditOperationDataModelProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ArtifactEditOperationDataModelProvider.java
deleted file mode 100644
index 1a61422..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ArtifactEditOperationDataModelProvider.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.wst.common.componentcore.ArtifactEdit;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelProvider;
-import org.eclipse.wst.common.frameworks.internal.plugin.WTPCommonMessages;
-import org.eclipse.wst.common.frameworks.internal.plugin.WTPCommonPlugin;
-
-public class ArtifactEditOperationDataModelProvider extends AbstractDataModelProvider implements IArtifactEditOperationDataModelProperties {
-
-	public ArtifactEditOperationDataModelProvider() {
-		super();
-	}
-
-	public Set getPropertyNames() {
-		Set propertyNames = super.getPropertyNames();
-		propertyNames.add(TYPE_ID);
-		propertyNames.add(PROJECT_NAME);
-		propertyNames.add(COMPONENT_NAME);
-		propertyNames.add(PROMPT_ON_SAVE);
-		propertyNames.add(TARGET_PROJECT);
-		propertyNames.add(TARGET_COMPONENT);
-		return propertyNames;
-	}
-
-	public IProject getTargetProject() {
-		String projectName = (String) model.getProperty(IArtifactEditOperationDataModelProperties.PROJECT_NAME);
-		if (projectName != null && projectName.length() > 0)
-			return ProjectUtilities.getProject(projectName);
-		return null;
-	}
-
-	public Object getDefaultProperty(String propertyName) {
-		if (propertyName.equals(PROMPT_ON_SAVE))
-			return Boolean.FALSE;
-		else if (propertyName.equals(TARGET_PROJECT))
-			return getTargetProject();
-		else if (propertyName.equals(TARGET_COMPONENT))
-			return getTargetComponent();
-		else if (propertyName.equals(COMPONENT_NAME))
-			return getStringProperty(PROJECT_NAME);
-		return super.getDefaultProperty(propertyName);
-	}
-
-	/**
-	 * @return
-	 */
-	public WorkbenchComponent getWorkbenchModule() {
-		StructureEdit moduleCore = null;
-		WorkbenchComponent module = null;
-		try {
-			moduleCore = StructureEdit.getStructureEditForRead(getTargetProject());
-			module = moduleCore.getComponent();
-		} finally {
-			if (null != moduleCore) {
-				moduleCore.dispose();
-			}
-		}
-		return module;
-	}
-	public boolean propertySet(String propertyName, Object propertyValue) {
-		boolean notify = super.propertySet(propertyName, propertyValue);
-		if (COMPONENT_NAME.equals(propertyName))
-			setProperty(PROJECT_NAME, propertyValue);
-		return notify;
-	}
-
-	public ArtifactEdit getArtifactEditForRead() {
-		WorkbenchComponent module = getWorkbenchModule();
-		IProject proj = StructureEdit.getContainingProject(module);
-		return ArtifactEdit.getArtifactEditForRead(proj);
-	}
-
-	public IStatus validate(String propertyName) {
-		IStatus result = super.validate(propertyName);
-		if (result != null && !result.isOK())
-			return result;
-		else if (propertyName.equals(PROJECT_NAME))
-			return validateModuleName();
-		return result;
-	}
-
-	protected IStatus validateModuleName() {
-		String moduleName = getStringProperty(PROJECT_NAME);
-		if (moduleName == null || moduleName.length() == 0)
-			return WTPCommonPlugin.createErrorStatus(WTPCommonPlugin.getResourceString(WTPCommonMessages.PROJECT_NAME_EMPTY));
-		return WTPCommonPlugin.OK_STATUS;
-	}
-
-	public IVirtualComponent getTargetComponent() {
-		String moduleName = getStringProperty(COMPONENT_NAME);
-		if (moduleName != null && moduleName.length() > 0)
-			return ComponentCore.createComponent(getTargetProject());
-		return null;
-
-
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ArtifactEditProviderOperation.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ArtifactEditProviderOperation.java
deleted file mode 100644
index b956516..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ArtifactEditProviderOperation.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jem.util.UIContextDetermination;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.jem.util.emf.workbench.WorkbenchResourceHelperBase;
-import org.eclipse.wst.common.componentcore.ArtifactEdit;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.internal.ArtifactEditModel;
-import org.eclipse.wst.common.componentcore.internal.util.ArtifactEditRegistryReader;
-import org.eclipse.wst.common.componentcore.internal.util.IArtifactEditFactory;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.validateedit.IValidateEditContext;
-
-public abstract class ArtifactEditProviderOperation extends AbstractDataModelOperation {
-	
-	protected ArtifactEdit artifactEdit;
-	protected EMFWorkbenchContext emfWorkbenchContext;
-//	private CommandStack commandStack;
-
-	public ArtifactEditProviderOperation() {
-		super();
-		// TODO Auto-generated constructor stub
-	}
-
-	public ArtifactEditProviderOperation(IDataModel model) {
-		super(model);
-	}
-	
-	protected final void initialize(IProgressMonitor monitor) {
-		emfWorkbenchContext = (EMFWorkbenchContext) WorkbenchResourceHelperBase.createEMFContext(getTargetProject(), null);
-		IVirtualComponent component = getTargetComponent(); 
-		artifactEdit = getArtifactEditForModule(component);
-		doInitialize(monitor);
-	}
-	
-	public IProject getTargetProject() {
-		String projectName = model.getStringProperty(IArtifactEditOperationDataModelProperties.PROJECT_NAME);
-		return ProjectUtilities.getProject(projectName);
-	}
-	
-	public IVirtualComponent getTargetComponent() {
-		return ComponentCore.createComponent(getTargetProject());
-	}
-	
-	private void doInitialize(IProgressMonitor monitor) {
-		//Default
-	}
-
-	protected ArtifactEdit getArtifactEditForModule(IVirtualComponent comp) {
-		ArtifactEditRegistryReader reader = ArtifactEditRegistryReader.instance();
-		IArtifactEditFactory factory = reader.getArtifactEdit(comp.getProject());
-		if (factory == null)
-			return null;
-		return factory.createArtifactEditForWrite(comp);
-	}
-	
-	public IStatus redo(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		return null;
-	}
-
-	public IStatus undo(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		return null;
-	}
-
-	public void dispose() {
-		if (artifactEdit!=null) {
-			artifactEdit.saveIfNecessary(new NullProgressMonitor());
-			artifactEdit.dispose();
-		}
-			
-		super.dispose();
-		
-	}
-
-	public final IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		try {
-			initialize(monitor);
-			if (validateEdit().isOK())
-				return doExecute(monitor, info);
-			return Status.CANCEL_STATUS;
-		} finally {
-			dispose();
-		}
-	}
-	
-	public abstract IStatus doExecute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException;
-	
-	public ArtifactEdit getArtifactEdit(){
-		return artifactEdit;
-	}
-
-	/**
-	 * Validate edit for resource state
-	 */
-	protected IStatus validateEdit() {
-		IValidateEditContext validator = (IValidateEditContext) UIContextDetermination.createInstance(IValidateEditContext.CLASS_KEY);
-		return validator.validateState((EditModel)getArtifactEdit().getAdapter(ArtifactEditModel.ADAPTER_TYPE));
-		
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/CreateReferenceComponentsDataModelProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/CreateReferenceComponentsDataModelProvider.java
deleted file mode 100644
index 3967a2a..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/CreateReferenceComponentsDataModelProvider.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.wst.common.componentcore.datamodel.properties.ICreateReferenceComponentsDataModelProperties;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelProvider;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation;
-
-public class CreateReferenceComponentsDataModelProvider extends AbstractDataModelProvider implements ICreateReferenceComponentsDataModelProperties {
-
-	public CreateReferenceComponentsDataModelProvider() {
-		super();
-	}
-
-	public Set getPropertyNames() {
-		Set propertyNames = super.getPropertyNames();
-		propertyNames.add(SOURCE_COMPONENT);
-		propertyNames.add(TARGET_COMPONENT_LIST);
-		propertyNames.add(TARGET_COMPONENTS_DEPLOY_PATH);
-		propertyNames.add(TARGET_COMPONENTS_DEPLOY_PATH_MAP);
-		propertyNames.add(TARGET_COMPONENTS_TO_URI_MAP);
-		return propertyNames;
-	}
-
-	public IDataModelOperation getDefaultOperation() {
-		return new CreateReferenceComponentsOp(model);
-	}
-
-	public Object getDefaultProperty(String propertyName) {
-		if (TARGET_COMPONENTS_TO_URI_MAP.equals(propertyName)) {
-			Map map = new HashMap();
-			setProperty(propertyName, map);
-			return map;
-		}
-		else if (TARGET_COMPONENTS_DEPLOY_PATH_MAP.equals(propertyName)) {
-			Map map = new HashMap();
-			setProperty(propertyName, map);
-			return map;
-		}
-		
-		if (propertyName.equals(TARGET_COMPONENT_LIST))
-			return new ArrayList();
-		else if (propertyName.equals(TARGET_COMPONENTS_DEPLOY_PATH)){
-			return "/"; //$NON-NLS-1$
-		}
-		return super.getDefaultProperty(propertyName);
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/CreateReferenceComponentsOp.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/CreateReferenceComponentsOp.java
deleted file mode 100644
index dfcc622..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/CreateReferenceComponentsOp.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jem.util.UIContextDetermination;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.datamodel.properties.ICreateReferenceComponentsDataModelProperties;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.internal.emfworkbench.validateedit.IValidateEditContext;
-
-public class CreateReferenceComponentsOp extends AbstractDataModelOperation {
-
-
-	public CreateReferenceComponentsOp(IDataModel model) {
-		super(model);
-	}
-
-	public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		if (!validateEdit().isOK())
-			return Status.CANCEL_STATUS;
-		addReferencedComponents(monitor);
-		addProjectReferences();
-		return OK_STATUS;
-	}
-	
-	/**
-	 * Validate edit for resource state
-	 */
-	protected IStatus validateEdit() {
-		IStatus status = OK_STATUS;
-		IValidateEditContext validator = (IValidateEditContext) UIContextDetermination.createInstance(IValidateEditContext.CLASS_KEY);
-		IVirtualComponent sourceComp = (IVirtualComponent) model.getProperty(ICreateReferenceComponentsDataModelProperties.SOURCE_COMPONENT);
-		IProject project = sourceComp.getProject();
-
-		if (status.isOK()) {
-			StructureEdit sEdit = null;
-			try {
-				sEdit = StructureEdit.getStructureEditForWrite(project);
-				status = validator.validateState(sEdit.getModuleStructuralModel());
-			} finally {
-				if (sEdit !=null)
-					sEdit.dispose();
-			}
-		}
-		
-		IFile [] files = new IFile[1];
-		files[0] = project.getFile(ProjectUtilities.DOT_PROJECT);
-		status = ResourcesPlugin.getWorkspace().validateEdit(files, null);
-		return status;
-	}
-
-	protected void addProjectReferences() {
-
-		IVirtualComponent sourceComp = (IVirtualComponent) model.getProperty(ICreateReferenceComponentsDataModelProperties.SOURCE_COMPONENT);
-		List modList = (List) model.getProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST);
-		List targetprojectList = new ArrayList();
-		for (int i = 0; i < modList.size(); i++) {
-			IVirtualComponent IVirtualComponent = (IVirtualComponent) modList.get(i);
-			IProject targetProject = IVirtualComponent.getProject();
-			targetprojectList.add(targetProject);
-		}
-		try {
-			ProjectUtilities.addReferenceProjects(sourceComp.getProject(), targetprojectList);
-		} catch (CoreException e) {
-			e.printStackTrace();
-		}
-
-	}
-
-	protected void addReferencedComponents(IProgressMonitor monitor) {
-		IVirtualComponent sourceComp = (IVirtualComponent) model.getProperty(ICreateReferenceComponentsDataModelProperties.SOURCE_COMPONENT);
-		List vlist = new ArrayList();
-		List modList = (List) model.getProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST);
-		Map modDeployPathMap = (Map) model.getProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENTS_DEPLOY_PATH_MAP);
-		String deployPathStr = model.getStringProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENTS_DEPLOY_PATH);
-		IPath deployPath = null;
-		IPath archiveDeployPath = null;
-		if (deployPathStr != null && deployPathStr.length() > 0){
-			deployPath = new Path(deployPathStr);
-		}
-		for (int i = 0; i < modList.size(); i++) {
-			IVirtualComponent comp = (IVirtualComponent) modList.get(i);
-			if (!srcComponentContainsReference(sourceComp, comp, deployPath)) {
-				IVirtualReference ref = ComponentCore.createReference(sourceComp, comp);
-				deployPathStr = (String)modDeployPathMap.get(comp);
-				if (deployPathStr != null)
-				{
-					archiveDeployPath = new Path(deployPathStr);
-				}
-				else
-				{
-					archiveDeployPath = deployPath;
-				}
-				if(archiveDeployPath != null){
-					ref.setRuntimePath(archiveDeployPath);
-				}
-
-				String archiveName = getArchiveName(comp);
-				if (archiveName.length() > 0) {
-					ref.setArchiveName(archiveName);
-				}
-				vlist.add(ref);
-			}
-		}
-
-		IVirtualReference[] refs = (IVirtualReference[]) vlist.toArray(new IVirtualReference[vlist.size()]);
-		sourceComp.addReferences(refs);
-	}
-
-	protected String getArchiveName(IVirtualComponent comp) {
-		Map map = (Map) model.getProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENTS_TO_URI_MAP);
-		String uri = (String) map.get(comp);
-		return uri == null ? "" : uri; //$NON-NLS-1$
-	}
-
-
-	private boolean srcComponentContainsReference(IVirtualComponent sourceComp, IVirtualComponent comp, IPath deployPath) {
-		if ((sourceComp != null && sourceComp.getProject() != null) && (comp != null && comp.getProject() != null)) {
-			IVirtualReference[] existingReferences = sourceComp.getReferences();
-			IVirtualComponent referencedComponent = null;
-			if (existingReferences != null) {
-				for (int i = 0; i < existingReferences.length; i++) {
-					IVirtualReference ref = existingReferences[i];
-					if(ref != null){
-						//also check to see if the deploy path is the same (remember that it can be null)
-						if((ref.getRuntimePath() == null && deployPath != null) || ref.getRuntimePath().equals(deployPath)){
-							referencedComponent = ref.getReferencedComponent();	
-							if (referencedComponent != null && referencedComponent.equals(comp) ){ 
-								return true;
-							}	
-						}
-					}
-				}
-			}
-		}
-		return false;
-	}
-
-	public IStatus redo(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		return null;
-	}
-
-	public IStatus undo(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		return null;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/FacetDataModelOperation.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/FacetDataModelOperation.java
deleted file mode 100644
index 1558b11..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/FacetDataModelOperation.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetProjectCreationDataModelProperties;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject.Action.Type;
-
-public class FacetDataModelOperation extends AbstractDataModelOperation {
-
-	public FacetDataModelOperation(IDataModel model) {
-		super(model);
-	}
-	
-	public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		IFacetedProject facetProj;
-		try {
-			facetProj = ProjectFacetsManager.create(model.getStringProperty(IFacetProjectCreationDataModelProperties.FACET_PROJECT_NAME), null, monitor);
-			Set actions = new HashSet();
-			actions.add(new IFacetedProject.Action((Type) model.getProperty(IFacetDataModelProperties.FACET_TYPE), (IProjectFacetVersion) model.getProperty(IFacetDataModelProperties.FACET_VERSION), model));
-			facetProj.modify(actions, monitor);
-		} catch (CoreException e) {
-			throw new ExecutionException(e.getMessage(), e);
-		}
-		return OK_STATUS;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/FacetProjectCreationOperation.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/FacetProjectCreationOperation.java
deleted file mode 100644
index abdcd14..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/FacetProjectCreationOperation.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetProjectCreationDataModelProperties;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.frameworks.internal.operations.IProjectCreationPropertiesNew;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IFacetedProjectWorkingCopy;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject.Action;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntime;
-
-public class FacetProjectCreationOperation extends AbstractDataModelOperation {
-
-	protected boolean runtimeAdded = false;
-
-	public FacetProjectCreationOperation() {
-		super();
-	}
-
-	public FacetProjectCreationOperation(IDataModel model) {
-		super(model);
-	}
-
-	public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		try {
-			IFacetedProject facetProj = createProject(monitor);
-			Set existingFacets = facetProj.getProjectFacets();
-
-			Map dmMap = (Map) model.getProperty(IFacetProjectCreationDataModelProperties.FACET_DM_MAP);
-			Set actions = new HashSet();
-			IDataModel facetDM = null;
-			for (Iterator iterator = dmMap.values().iterator(); iterator.hasNext();) {
-				facetDM = (IDataModel) iterator.next();
-				if (facetDM.getBooleanProperty(IFacetDataModelProperties.SHOULD_EXECUTE)) {
-					String facetID = facetDM.getStringProperty(IFacetDataModelProperties.FACET_ID);
-					boolean shouldInstallFacet = true;
-					for (Iterator existingFacetsIterator = existingFacets.iterator(); shouldInstallFacet && existingFacetsIterator.hasNext();) {
-						IProjectFacetVersion version = (IProjectFacetVersion) existingFacetsIterator.next();
-						if (version.getProjectFacet().getId().equals(facetID)) {
-							shouldInstallFacet = false;
-						}
-					}
-					if (shouldInstallFacet) {
-						actions.add(facetDM.getProperty(IFacetDataModelProperties.FACET_ACTION));
-					}
-				}
-			}
-			Map actionsMap = (Map) model.getProperty(IFacetProjectCreationDataModelProperties.FACET_ACTION_MAP);
-			for (Iterator iterator = actionsMap.values().iterator(); iterator.hasNext();) {
-				actions.add(iterator.next());
-			}
-			if (!actions.isEmpty()) {
-				facetProj.modify(actions, monitor);
-			}
-			Set fixedFacets = new HashSet(), newFacetVersions = facetProj.getProjectFacets(), existingFixedFacets = facetProj.getFixedProjectFacets();
-			for (Iterator iter = newFacetVersions.iterator(); iter.hasNext();) {
-				IProjectFacetVersion facetVersion = (IProjectFacetVersion) iter.next();
-				String facetID = facetVersion.getProjectFacet().getId();
-				boolean shouldInstallFacet = true;
-				for (Iterator existingFacetsIterator = existingFixedFacets.iterator(); shouldInstallFacet && existingFacetsIterator.hasNext();) {
-					IProjectFacet facet = (IProjectFacet) existingFacetsIterator.next();
-					if (facet.getId().equals(facetID)) {
-						shouldInstallFacet = false;
-					}
-				}
-				if (shouldInstallFacet) {
-					fixedFacets.add(facetVersion.getProjectFacet());
-				}
-			}
-			if (!fixedFacets.isEmpty()) {
-				facetProj.setFixedProjectFacets(fixedFacets);
-			}
-			if (runtimeAdded) {
-				IRuntime runtime = (IRuntime) model.getProperty(IFacetProjectCreationDataModelProperties.FACET_RUNTIME);
-				addDefaultFactets(facetProj, runtime);
-			}
-
-		} catch (CoreException e) {
-			Logger.getLogger().logError(e);
-			throw new ExecutionException(e.getMessage(), e);
-		} catch (Exception e) {
-			Logger.getLogger().logError(e);
-		}
-		return OK_STATUS;
-	}
-
-	private static void addDefaultFacets(IFacetedProject facetProj, Set defaultFacets) {
-		Set actions = new HashSet();
-		for (Iterator iter = defaultFacets.iterator(); iter.hasNext();) {
-			IProjectFacetVersion facetVersion = (IProjectFacetVersion) iter.next();
-			if (!facetProj.hasProjectFacet(facetVersion.getProjectFacet())) {
-				actions.add(new IFacetedProject.Action(Action.Type.INSTALL, facetVersion, null));
-			}
-		}
-
-		try {
-			if (!actions.isEmpty())
-				facetProj.modify(actions, null);
-		} catch (CoreException e) {
-			Logger.getLogger().logError(e);
-		}
-	}
-
-	public IFacetedProject createProject(IProgressMonitor monitor) throws CoreException {
-		IProject project = ProjectUtilities.getProject((String) model.getProperty(IFacetProjectCreationDataModelProperties.FACET_PROJECT_NAME));
-		IFacetedProject facetProj = null;
-		if (project.exists()) {
-			facetProj = ProjectFacetsManager.create(project, true, monitor);
-		} else {
-			String location = (String) model.getProperty(IProjectCreationPropertiesNew.PROJECT_LOCATION);
-			IPath locationPath = null == location ? null : new Path(location);
-			facetProj = ProjectFacetsManager.create(model.getStringProperty(IFacetProjectCreationDataModelProperties.FACET_PROJECT_NAME), locationPath, monitor);
-		}
-		IRuntime runtime = (IRuntime) model.getProperty(IFacetProjectCreationDataModelProperties.FACET_RUNTIME);
-		IRuntime existingRuntime = facetProj.getPrimaryRuntime();
-		if (runtime != null && (existingRuntime == null || !runtime.equals(existingRuntime))) {
-			facetProj.setTargetedRuntimes(Collections.singleton(runtime), null);
-			runtimeAdded = true;
-		}
-		return facetProj;
-	}
-	
-	public static void addDefaultFactets(IFacetedProject facetProj, IRuntime runtime) throws ExecutionException {
-		
-			if (runtime != null) {
-				final IFacetedProjectWorkingCopy fpjwc = facetProj.createWorkingCopy();
-				Set<IProjectFacetVersion> presetFacets = fpjwc.getDefaultConfiguration().getProjectFacets();
-				addDefaultFacets(facetProj, presetFacets);
-			}
-		
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/IArtifactEditOperationDataModelProperties.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/IArtifactEditOperationDataModelProperties.java
deleted file mode 100644
index f3c3924..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/IArtifactEditOperationDataModelProperties.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-
-public interface IArtifactEditOperationDataModelProperties {
-
-	/**
-	 * Required
-	 */
-	public static final String TYPE_ID = "IArtifactEditOperationDataModelProperties.TYPE_ID"; //$NON-NLS-1$
-	
-	/**
-	 * Required
-	 */
-	public static final String PROJECT_NAME = "IArtifactEditOperationDataModelProperties.PROJECT_NAME"; //$NON-NLS-1$
-	/**
-	 * Required
-	 */
-	public static final String COMPONENT_NAME = "IArtifactEditOperationDataModelProperties.COMPONENT_NAME"; //$NON-NLS-1$
-	/**
-	 * Optional, should save with prompt...defaults to false
-	 */
-	public static final String PROMPT_ON_SAVE = "IArtifactEditOperationDataModelProperties.PROMPT_ON_SAVE"; //$NON-NLS-1$
-	
-	public static final String TARGET_PROJECT = "IArtifactEditOperationDataModelProperties.TARGET_PROJECT"; //$NON-NLS-1$
-	
-	public static final String TARGET_COMPONENT = "IArtifactEditOperationDataModelProperties.TARGET_COMPONENT"; //$NON-NLS-1$
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ProjectMigratorDataModelOperation.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ProjectMigratorDataModelOperation.java
deleted file mode 100644
index d507389..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ProjectMigratorDataModelOperation.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IProjectMigratorDataModelProperties;
-import org.eclipse.wst.common.componentcore.internal.IComponentProjectMigrator;
-import org.eclipse.wst.common.componentcore.internal.ProjectMigratorRegistry;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-
-public class ProjectMigratorDataModelOperation extends AbstractDataModelOperation {
-
-	public ProjectMigratorDataModelOperation(IDataModel model) {
-		super(model);
-	}
-	
-	public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		try {
-			IProject proj = ProjectUtilities.getProject(model.getStringProperty(IProjectMigratorDataModelProperties.PROJECT_NAME));
-			IComponentProjectMigrator[] migrators = ProjectMigratorRegistry.getInstance().getProjectMigrators();
-			for (int i = 0; i < migrators.length; i++) {
-				IComponentProjectMigrator migrator = migrators[i];
-				migrator.migrateProject(proj);
-			}
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		return OK_STATUS;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/RemoveReferenceComponentOperation.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/RemoveReferenceComponentOperation.java
deleted file mode 100644
index bb1f2c3..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/RemoveReferenceComponentOperation.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.wst.common.componentcore.datamodel.properties.ICreateReferenceComponentsDataModelProperties;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-
-public class RemoveReferenceComponentOperation extends AbstractDataModelOperation {
-
-	public RemoveReferenceComponentOperation() {
-		super();
-	}
-
-	public RemoveReferenceComponentOperation(IDataModel model) {
-		super(model);
-	}
-
-	public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		removeReferencedComponents(monitor);
-		return OK_STATUS;
-	}
-
-	protected void removeReferencedComponents(IProgressMonitor monitor) {
-		
-		IVirtualComponent sourceComp = (IVirtualComponent) model.getProperty(ICreateReferenceComponentsDataModelProperties.SOURCE_COMPONENT);
-		if (sourceComp == null || !sourceComp.getProject().isAccessible() || sourceComp.isBinary()) return;
-		
-		IVirtualReference [] existingReferencesArray = sourceComp.getReferences();
-		if(existingReferencesArray == null || existingReferencesArray.length == 0){
-			return;
-		}
-		
-		List existingReferences = new ArrayList();
-		for(int i=0;i<existingReferencesArray.length; i++){
-			existingReferences.add(existingReferencesArray[i]);
-		}
-		
-		String deployPath = model.getStringProperty( ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENTS_DEPLOY_PATH );
-		IPath path = new Path( deployPath );
-		
-		List modList = (List) model.getProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST);
-    
-		List targetprojectList = new ArrayList();
-
-		for (int i = 0; i < modList.size() && !existingReferences.isEmpty(); i++) {
-			IVirtualComponent comp = (IVirtualComponent) modList.get(i);
-			if (comp==null )
-				continue;
-
-			IVirtualReference ref = findMatchingReference(existingReferences, comp, path);
-			//if a ref was found matching the specified deployPath, then remove it
-			if(ref != null){
-				removeRefereneceInComponent(sourceComp, ref);
-				existingReferences.remove(ref);
-				//after removing the ref, check to see if it was the last ref removed to that component
-				//and if it was, then also remove the project reference
-				ref = findMatchingReference(existingReferences, comp);
-				if(ref == null){
-					IProject targetProject = comp.getProject();
-					targetprojectList.add(targetProject);
-				}
-			}
-		}
-		
-		try {
-			ProjectUtilities.removeReferenceProjects(sourceComp.getProject(),targetprojectList);
-		} catch (CoreException e) {
-			Logger.getLogger().logError(e);
-		}		
-		
-	}
-
-	private IVirtualReference findMatchingReference(List existingReferences, IVirtualComponent comp, IPath path) {
-		for(int i=0;i<existingReferences.size(); i++){
-			IVirtualReference ref = (IVirtualReference)existingReferences.get(i);
-			IVirtualComponent c = ref.getReferencedComponent();
-			if(c != null && c.getName().equals(comp.getName())){
-				if(path == null){
-					return ref;
-				} else if(path.equals(ref.getRuntimePath())){
-					return ref;
-				}
-			}
-		}
-		return null;
-	}
-
-	private IVirtualReference findMatchingReference(List existingReferences, IVirtualComponent comp) {
-		return findMatchingReference(existingReferences, comp, null);
-	}
-
-	protected void removeRefereneceInComponent(IVirtualComponent component, IVirtualReference reference) {
-		((VirtualComponent)component.getComponent()).removeReference(reference);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/RemoveReferenceComponentsDataModelProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/RemoveReferenceComponentsDataModelProvider.java
deleted file mode 100644
index d48dbe0..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/RemoveReferenceComponentsDataModelProvider.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation;
-
-
-public class RemoveReferenceComponentsDataModelProvider extends CreateReferenceComponentsDataModelProvider {
-
-	public RemoveReferenceComponentsDataModelProvider() {
-		super();
-	}
-
-	public IDataModelOperation getDefaultOperation() {
-		return new RemoveReferenceComponentOperation(model);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ServerContextRootDataModelProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ServerContextRootDataModelProvider.java
deleted file mode 100644
index 01ded49..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ServerContextRootDataModelProvider.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-import java.util.Set;
-
-import org.eclipse.wst.common.componentcore.datamodel.properties.IServerContextRootDataModelProperties;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelProvider;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation;
-
-public class ServerContextRootDataModelProvider 
- extends AbstractDataModelProvider
- implements IServerContextRootDataModelProperties{
-
-	public ServerContextRootDataModelProvider(){
-		super();
-	}
-
-	public Set getPropertyNames() {
-		Set names = super.getPropertyNames();
-		names.add(PROJECT);
-		names.add(CONTEXT_ROOT);
-		return names;
-	}
-	
-	public IDataModelOperation getDefaultOperation() {
-		return new ServerContextRootUpdateOperation(model);
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ServerContextRootUpdateOperation.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ServerContextRootUpdateOperation.java
deleted file mode 100644
index 962b731..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/operation/ServerContextRootUpdateOperation.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package org.eclipse.wst.common.componentcore.internal.operation;
-
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IServerContextRootDataModelProperties;
-import org.eclipse.wst.common.componentcore.internal.util.IModuleConstants;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-
-public class ServerContextRootUpdateOperation 
- extends  AbstractDataModelOperation 
- implements IServerContextRootDataModelProperties{
-	
-
-	public ServerContextRootUpdateOperation(IDataModel model) {
-		super(model);
-	}
-
-	public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		IProject project = (IProject)model.getProperty( IServerContextRootDataModelProperties.PROJECT );
-		String contextRoot = model.getStringProperty( IServerContextRootDataModelProperties.CONTEXT_ROOT );
-		if (contextRoot != null) {
-			IVirtualComponent comp = ComponentCore.createComponent(project);
-			comp.setMetaProperty(IModuleConstants.CONTEXTROOT, contextRoot);	
-		}
-		return OK_STATUS;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/ResourceTimestampMappings.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/ResourceTimestampMappings.java
deleted file mode 100644
index 47710ab..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/ResourceTimestampMappings.java
+++ /dev/null
@@ -1,279 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.resources;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-
-
-/**
- * Maps resources to cached data and remembers when the data was cached based on a timestamp
- * signature of a given resource.
- * 
- */
-public class ResourceTimestampMappings {
-
-	private static final IPath COMPONENT_MANIFEST_PATH = new Path(".settings/org.eclipse.wst.common.component");
-	private static final IPath FACET_CONFIG_PATH = new Path(".settings/org.eclipse.wst.common.project.facet.core.xml");
-
-	private static final Object NO_DATA = new Object();
-	private static final Object ERROR = new Object();
-
-	private final Map timestamps = new HashMap();
-	private final Map data = new HashMap();
-
-
-	/**
-	 * Record a timestamp signature for the given resource.
-	 * <p>
-	 * Clients may use {@link #hasChanged(IResource)} to determine if the resource has changed since
-	 * it was recorded.
-	 * </p>
-	 * 
-	 * @param resource
-	 *            The resource that was processed.
-	 * @return True if the recording was successfull. The recording may fail if the resource does
-	 *         not exist.
-	 * 
-	 * @see #hasChanged(IResource)
-	 */
-	public synchronized boolean mark(IResource resource) {
-		return mark(resource, NO_DATA);
-	}
-
-	/**
-	 * Cache the data that was determined when processing the resource. The a timestamp signature
-	 * will be recorded for the resource as well.
-	 * 
-	 * <p>
-	 * Clients may use {@link #hasChanged(IResource)} to determine if the cached data should be
-	 * replaced.
-	 * </p>
-	 * 
-	 * @param resource
-	 *            The resource that was processed.
-	 * @param cachedData
-	 *            The data that was determined when the Resource was processed.
-	 * 
-	 * @return True if the recording was successfull. The recording may fail if the resource does
-	 *         not exist.
-	 * 
-	 * 
-	 * @see #hasChanged(IResource)
-	 * @see #hasCacheData(IResource)
-	 */
-	public synchronized boolean mark(IResource resource, Object cachedData) {
-
-		if (resource.getModificationStamp() != IResource.NULL_STAMP) {
-			if (timestamps.containsKey(resource)) {
-				TimestampSignature signature = (TimestampSignature) timestamps.get(resource);
-				signature.update(resource);
-			} else {
-				timestamps.put(resource, createTimestampSignature(resource));
-			}
-			data.put(resource, cachedData);
-			return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Note that an error occurred when processing this resource.
-	 * 
-	 * @param resource
-	 *            The resource that had some sort of error while processing.
-	 * @return True if the error was recorded. The error may not be recorded if the resource does
-	 *         not exist.
-	 * @see #hasCacheError(IResource)
-	 */
-	public synchronized boolean markError(IResource resource) {
-
-		if (resource.getModificationStamp() != IResource.NULL_STAMP) {
-			if (timestamps.containsKey(resource)) {
-				TimestampSignature signature = (TimestampSignature) timestamps.get(resource);
-				signature.update(resource);
-			} else {
-				timestamps.put(resource, createTimestampSignature(resource));
-			}
-			data.put(resource, ERROR);
-			return true;
-		}
-		return false;
-	}
-
-	/**
-	 * 
-	 * @param resource
-	 *            The resource that was or is about to be processed.
-	 * @return True if the given resource has changed in a noticeable way since it was marked.
-	 * 
-	 * @see #mark(IResource)
-	 * @see #mark(IResource, Object)
-	 * @see #markError(IResource)
-	 */
-	public boolean hasChanged(IResource resource) {
-		TimestampSignature signature = (TimestampSignature) timestamps.get(resource);
-		return signature == null || signature.hasChanged(resource);
-	}
-
-	/**
-	 * 
-	 * @param resource
-	 *            The resource that was or is about to be processed.
-	 * @return True if there is any data cached for the given resource.
-	 * 
-	 * @see #mark(IResource)
-	 * @see #mark(IResource, Object)
-	 * @see #markError(IResource)
-	 */
-	public boolean hasCacheData(IResource resource) {
-		Object datum = data.get(resource);
-		return datum != null && datum != NO_DATA;
-
-	}
-
-
-	/**
-	 * 
-	 * @param resource
-	 *            The resource that was or is about to be processed.
-	 * @return True if there is any data cached for the given resource.
-	 * 
-	 * @see #mark(IResource)
-	 * @see #mark(IResource, Object)
-	 * @see #markError(IResource)
-	 */
-	public boolean hasCacheError(IResource resource) {
-		return data.get(resource) == ERROR;
-	}
-
-	public Object getData(IResource resource) {
-		Object datum = data.get(resource);
-		if (datum != NO_DATA)
-			return datum;
-		return null;
-	}
-
-
-	private TimestampSignature createTimestampSignature(IResource resource) {
-		switch (resource.getType()) {
-			case IResource.PROJECT :
-				return new ProjectTimestamp((IProject) resource);
-			default :
-				return new SimpleResourceTimestamp(resource);
-		}
-	}
-
-	/**
-	 * Provides a point in time signature of a Resource to determine whether that resource has
-	 * changed in a meaningful way since the time this signature was created or last updated.
-	 * 
-	 */
-	public interface TimestampSignature {
-
-		/**
-		 * 
-		 * @param resource
-		 *            A resource related to this signature
-		 * @return True if the current resource is different from this signature in a meaningful way
-		 */
-		boolean hasChanged(IResource resource);
-
-		/**
-		 * 
-		 * @param resource
-		 *            Update the signature details to the given resource's signature.
-		 */
-		void update(IResource resource);
-
-	}
-
-	/**
-	 * Provides a signature based on the modificationStamp of a resource.
-	 */
-	public class SimpleResourceTimestamp implements TimestampSignature {
-		private long timestamp = 0;
-
-		public SimpleResourceTimestamp(IResource resource) {
-			update(resource);
-		}
-
-		public boolean hasChanged(IResource resource) {
-			return timestamp != resource.getModificationStamp();
-		}
-
-		public void update(IResource resource) {
-			timestamp = resource.getModificationStamp();
-		}
-	}
-
-	/**
-	 * Provides a signature for a project based on the modificationStamp of the (1) project, (2) the
-	 * component manifest, and (3) the facet configuration
-	 */
-	public class ProjectTimestamp implements TimestampSignature {
-
-		private long projectTimestamp = 0;
-		private long componentManifestTimestamp = 0;
-		private long facetConfigTimestamp = 0;
-
-		public ProjectTimestamp(IProject project) {
-			update(project);
-		}
-
-		public boolean hasChanged(IResource resource) {
-			if (resource.getType() == IResource.PROJECT) {
-				IProject project = (IProject) resource;
-				if (projectTimestamp != project.getModificationStamp())
-					return true;
-
-				IFile file = project.getFile(COMPONENT_MANIFEST_PATH);
-				if (!file.exists() || componentManifestTimestamp != file.getModificationStamp())
-					return true;
-
-				file = project.getFile(FACET_CONFIG_PATH);
-				if (!file.exists() || facetConfigTimestamp != file.getModificationStamp())
-					return true;
-
-				return false;
-			}
-			return true;
-
-		}
-
-		public void update(IResource resource) {
-
-			if (resource instanceof IProject) {
-
-				IProject project = (IProject) resource;
-
-				projectTimestamp = project.getModificationStamp();
-
-				IFile file = project.getFile(COMPONENT_MANIFEST_PATH);
-				componentManifestTimestamp = file.getModificationStamp();
-
-				file = project.getFile(FACET_CONFIG_PATH);
-				facetConfigTimestamp = file.getModificationStamp();
-
-			} else {
-				projectTimestamp = componentManifestTimestamp = facetConfigTimestamp = IResource.NULL_STAMP;
-			}
-
-		}
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualArchiveComponent.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualArchiveComponent.java
deleted file mode 100644
index 0d66c2f..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualArchiveComponent.java
+++ /dev/null
@@ -1,270 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.resources;
-
-
-import java.io.File;
-import java.util.Properties;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-import org.eclipse.wst.common.frameworks.internal.HashUtil;
-
-
-public class VirtualArchiveComponent implements IVirtualComponent, IAdaptable {
-
-	public static final Class ADAPTER_TYPE = VirtualArchiveComponent.class;
-	public static final String LIBARCHIVETYPE = "lib";
-	public static final String VARARCHIVETYPE = "var";
-	/**
-	 * VirtualArchiveComponent type for VirtualArchiveComponents that represent classpath component dependencies.
-	 */
-	public static final String CLASSPATHARCHIVETYPE = "cpe"; //$NON-NLS-1
-	
-	private static final IVirtualReference[] NO_REFERENCES = new VirtualReference[0];
-	private static final IVirtualComponent[] NO_COMPONENTS = new VirtualComponent[0];
-//	private static final IResource[] NO_RESOURCES = null;
-	private static final IVirtualResource[] NO_VIRTUAL_RESOURCES = null;
-	private static final Properties NO_PROPERTIES = new Properties();
-	private static final IPath[] NO_PATHS = new Path[0];
-
-//	private IPath runtimePath;
-	private IProject componentProject;
-//	private IVirtualFolder rootFolder;
-	private int flag = 1;
-//	private String archiveLocation;
-
-
-	private IPath archivePath;
-	private String archiveType;
-
-
-
-	public VirtualArchiveComponent(IProject aComponentProject,String archiveLocation, IPath aRuntimePath) {
-		if(aComponentProject == null){
-			throw new NullPointerException();
-		}
-		componentProject = aComponentProject;
-//		runtimePath = aRuntimePath;
-
-		String archivePathString = archiveLocation.substring(4, archiveLocation.length());
-		archiveType	= archiveLocation.substring(0, archiveLocation.length() - archivePathString.length() -1);
-		archivePath = new  Path(archivePathString);
-	}
-
-	public IVirtualComponent getComponent() {
-		return this;
-	}
-
-	public String getName() {
-		return this.archiveType + IPath.SEPARATOR + this.archivePath.toString();
-	}
-	
-	public String getDeployedName() {
-		return getName();
-	}
-
-	public void setComponentTypeId(String aComponentTypeId) {
-		return;
-	}
-
-	public int getType() {
-		return IVirtualResource.COMPONENT;
-	}
-
-	public boolean isBinary() {
-		boolean ret = (flag & BINARY) == 1 ? true : false;
-		return ret;
-	}
-
-	public IPath[] getMetaResources() {
-		return NO_PATHS;
-	}
-
-	public void setMetaResources(IPath[] theMetaResourcePaths) {
-
-	}
-
-	public void delete(int updateFlags, IProgressMonitor monitor) throws CoreException {
-
-	}
-
-	public String getFileExtension() {
-		return archivePath.getFileExtension();
-	}
-
-	public IPath getWorkspaceRelativePath() {
-		if( archivePath.segmentCount() > 1 ){
-			IFile aFile = ResourcesPlugin.getWorkspace().getRoot().getFile(archivePath);
-			if (aFile.exists())
-				return aFile.getFullPath();
-		}
-		return null;
-	}
-
-	public IPath getProjectRelativePath() {
-		IFile aFile = ResourcesPlugin.getWorkspace().getRoot().getFile(getWorkspaceRelativePath());
-		if (aFile.exists())
-			return aFile.getProjectRelativePath();
-		return null;
-	}
-
-	public IProject getProject() {
-		return componentProject;
-	}
-
-	public IPath getRuntimePath() {
-		return ROOT;
-	}
-
-	public boolean isAccessible() {
-		return true;
-	}
-
-	public Properties getMetaProperties() {
-		return NO_PROPERTIES;
-	}
-
-	public IVirtualResource[] getResources(String aResourceType) {
-		return NO_VIRTUAL_RESOURCES;
-	}
-
-	public void create(int updateFlags, IProgressMonitor aMonitor) throws CoreException {
-
-	}
-
-	public IVirtualReference[] getReferences() {
-		return NO_REFERENCES;
-	}
-
-	public void setReferences(IVirtualReference[] theReferences) {
-		// no op
-	}
-	
-	public void addReferences(IVirtualReference[] references) {
-		// no op
-	}
-
-	public IVirtualReference getReference(String aComponentName) {
-		return null;
-	}
-
-	public boolean exists() {
-		boolean exists = false;
-		java.io.File diskFile = getUnderlyingDiskFile();
-		if( diskFile != null )
-			exists = diskFile.exists();
-		
-		if( !exists ){
-			IFile utilityJar = getUnderlyingWorkbenchFile();
-			if( utilityJar != null )
-				exists =  utilityJar.exists();
-		}
-		return exists;
-	}
-
-	public IVirtualFolder getRootFolder() {
-		return null;
-	}
-
-	public IVirtualComponent[] getReferencingComponents() {
-		return NO_COMPONENTS;
-	}
-
-
-	public Object getAdapter(Class adapterType) {
-		return Platform.getAdapterManager().getAdapter(this, adapterType);
-	}
-
-	public String getArchiveType() {
-		return archiveType;
-	}
-
-	public int hashCode() {
-		int hash = HashUtil.SEED;
-		hash = HashUtil.hash(hash, getProject().getName());
-		hash = HashUtil.hash(hash, getName());
-		hash = HashUtil.hash(hash, isBinary());
-		return hash;
-	}
-	
-	public boolean equals(Object anOther) {
-		if (anOther instanceof VirtualArchiveComponent) {
-			VirtualArchiveComponent otherComponent = (VirtualArchiveComponent) anOther;
-			return getProject().equals(otherComponent.getProject()) && 
-					getName().equals(otherComponent.getName()) && 
-					isBinary() == otherComponent.isBinary();
-		}
-		return false;
-	}
-
-	public void setMetaProperty(String name, String value) {
-
-	}
-
-	public void setMetaProperties(Properties properties) {
-
-	}
-	public IFile getUnderlyingWorkbenchFile() {
-		if (getWorkspaceRelativePath()==null)
-			return null;
-		return ResourcesPlugin.getWorkspace().getRoot().getFile(getWorkspaceRelativePath());
-	}
-
-	public File getUnderlyingDiskFile() {
-		String osPath = null;
-		IPath loc = null;
-		if (getArchiveType().equals(VirtualArchiveComponent.VARARCHIVETYPE)) {
-			Object adapted = getAdapter(VirtualArchiveComponent.ADAPTER_TYPE);
-			if (adapted instanceof IPath) {
-				IPath resolvedpath = (IPath) adapted;
-				osPath = resolvedpath.toOSString();
-			} 
-		} else if(!archivePath.isAbsolute()) {
-			IFile file = getProject().getFile(archivePath);
-			if(file.exists())
-				loc  = file.getLocation();
-			else if(archivePath.segmentCount() > 1) {
-				file = ResourcesPlugin.getWorkspace().getRoot().getFile(archivePath);
-				if(file.exists())
-					loc = file.getLocation();
-			}
-			// this is a file on the local filesystem
-			if(loc != null)  
-				osPath = loc.toOSString();
-		} else {
-			osPath = archivePath.toOSString();
-		}
-		if (osPath==null || osPath.length()==0)
-			return null;
-		File diskFile = new File(osPath);
-		return diskFile;
-	}
-	
-	public String toString() {
-		if(archivePath != null){
-			return componentProject + " " +archivePath;
-		}
-		return super.toString();
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualComponent.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualComponent.java
deleted file mode 100644
index 104db30..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualComponent.java
+++ /dev/null
@@ -1,530 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.resources;
-
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.ModuleCoreNature;
-import org.eclipse.wst.common.componentcore.internal.ComponentcoreFactory;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.DependencyType;
-import org.eclipse.wst.common.componentcore.internal.ModulecorePlugin;
-import org.eclipse.wst.common.componentcore.internal.Property;
-import org.eclipse.wst.common.componentcore.internal.ReferencedComponent;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.builder.DependencyGraphManager;
-import org.eclipse.wst.common.componentcore.internal.impl.ModuleURIUtil;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-import org.eclipse.wst.common.frameworks.internal.HashUtil;
-
-
-public class VirtualComponent implements IVirtualComponent {
-	IPath			runtimePath;
-	IProject	componentProject;
-	IVirtualFolder	rootFolder;
-	String componentTypeId;
-	private int flag = 0;
-	
-
-	protected VirtualComponent(){
-	}
-	
-	public VirtualComponent(IProject aProject, IPath aRuntimePath) {
-		if(aProject == null){
-			throw new NullPointerException();
-		}
-		componentProject = aProject;
-		runtimePath = aRuntimePath;
-		rootFolder = ComponentCore.createFolder(componentProject, new Path("/")); //$NON-NLS-1$
-	}
-	
-	public IVirtualComponent getComponent() {
-		return this;
-	}
-	
-	public String getName() {
-		return getProject().getName();
-	}
-	
-	public String getDeployedName() {
-		StructureEdit core = null;
-		IProject project = getProject();
-		try {
-			if (project != null && getName() != null) {
-				core = StructureEdit.getStructureEditForRead(project);
-				if(core != null && core.getComponent() != null){
-					WorkbenchComponent component = core.getComponent();
-					if (component.getName()!=null && component.getName().length()>0)
-						return component.getName();
-				}
-			}
-		} finally {
-			if(core != null)
-				core.dispose();
-		}
-		return getProject().getName();
-	}
-	
-	public boolean exists() { 
-		IProject project = getProject();
-		return ModuleCoreNature.isFlexibleProject(project);
-	}
-	
-
-	public Properties getMetaProperties() {
-        StructureEdit core = null;
-        Properties props = new Properties();
-        try {
-            core = StructureEdit.getStructureEditForRead(getProject());
-            if (core == null)
-            	return props;
-            WorkbenchComponent component = core.getComponent(); 
-            if (component == null) return props;
-            List propList = component.getProperties();
-            if(propList != null) {
-                for (int i = 0; i < propList.size(); i++) {
-                	Property property = (Property)propList.get(i);
-                	String name = property.getName();
-                	String value = property.getValue();
-                	if(value == null){
-                		value = ""; //$NON-NLS-1$
-                		String message = "WARNING:  The component file in "+getProject().getName()+" has no value defined for the property: "+name;  //$NON-NLS-1$//$NON-NLS-2$
-                		ModulecorePlugin.logError(IStatus.ERROR, message, null);
-                	}
-                    props.setProperty(name, value);
-                }
-            }
-            return props; 
-        } finally {
-            if(core != null)
-                core.dispose();
-        }
-	}
-
-	public void setMetaProperties(Properties properties) {
-        StructureEdit core = null;
-        try {
-            core = StructureEdit.getStructureEditForWrite(getProject());
-            WorkbenchComponent component = core.getComponent(); 
-            
-            List propList = component.getProperties();
-			if (properties != null && !properties.isEmpty()) {
-		        for(Enumeration itr = properties.keys(); itr.hasMoreElements();) {
-		            final String key = (String) itr.nextElement();
-		            final Property prop = ComponentcoreFactory.eINSTANCE.createProperty();
-		            prop.setName(key);
-		            prop.setValue(properties.getProperty(key));
-		            // Remove existing property first
-		            for (int i=0; i<propList.size(); i++) {
-		            	Property existing = (Property) propList.get(i);
-		            	if (existing.getName().equals(key)) {
-		            		propList.remove(existing);
-		            		break;
-		            	}
-		            }
-		            // Add new property
-		            propList.add(prop);
-		         }
-			} 
-        } finally {
-            if(core != null){
-            	core.saveIfNecessary(null);
-                core.dispose();
-            }
-        }
-	}
-	
-	public void clearMetaProperties() {
-		StructureEdit core = null;
-        try {
-            core = StructureEdit.getStructureEditForWrite(getProject());
-            WorkbenchComponent component = core.getComponent(); 
-            component.getProperties().clear();
-        } finally {
-            if(core != null){
-            	core.saveIfNecessary(null);
-                core.dispose();
-            }
-        }
-	}
-	
-	public void setMetaProperty(String key, String value) {
-        StructureEdit core = null;
-        try {
-            core = StructureEdit.getStructureEditForWrite(getProject());
-            WorkbenchComponent component = core.getComponent();
-            //Remove existing property first
-            List properties = component.getProperties();
-            for (int i=0; i<properties.size(); i++) {
-            	Property existing = (Property) properties.get(i);
-            	if (existing.getName().equals(key)) {
-            		properties.remove(existing);
-            		break;
-            	}
-            }
-        	//Set new property
-            final Property prop = ComponentcoreFactory.eINSTANCE.createProperty();
-			prop.setName(key);
-			prop.setValue(value);
-			component.getProperties().add(prop);
-            
-        } finally {
-            if(core != null){
-            	core.saveIfNecessary(null);
-                core.dispose();
-            }
-        }
-	}
-	
-	public IPath[] getMetaResources() {
-		StructureEdit moduleCore = null;
-		List metaResources = new ArrayList();
-		try {
-			moduleCore = StructureEdit.getStructureEditForRead(getProject());
-			if (moduleCore != null) {
-				WorkbenchComponent component = moduleCore.getComponent();
-				if (component != null)
-					metaResources.addAll(component.getMetadataResources());
-			}
-		} finally {
-			if (moduleCore != null) {
-				moduleCore.dispose();
-			}
-		}
-		return (IPath[]) metaResources.toArray(new IPath[metaResources.size()]);
-	}
-
-	public void setMetaResources(IPath[] theMetaResourcePaths) {
-		StructureEdit moduleCore = null;
-		try {
-			moduleCore = StructureEdit.getStructureEditForWrite(getProject());
-			WorkbenchComponent component = moduleCore.getComponent();
-			if (component != null) {
-				for (int i=0; i<theMetaResourcePaths.length; i++) {
-					if (!component.getMetadataResources().contains(theMetaResourcePaths[i]))
-						component.getMetadataResources().add(theMetaResourcePaths[i]);
-				}
-			}
-		} finally {
-			if (moduleCore != null) {
-				moduleCore.saveIfNecessary(null);
-				moduleCore.dispose();
-			}
-		}
-	}
-	
-	public int getType() {
-		return IVirtualResource.COMPONENT;
-	}
-	
-
-	public boolean isBinary(){
-		boolean ret =  (flag & BINARY) == 1  ? true :false;
-		return ret;		
-	}	
-
-	public void create(int updateFlags, IProgressMonitor aMonitor)
-	throws CoreException {
-
-		StructureEdit moduleCore = null;
-		try {
-			moduleCore = StructureEdit.getStructureEditForWrite(getProject());
-			WorkbenchComponent component = moduleCore
-					.getComponent();
-			if (component == null)
-				component = moduleCore
-						.createWorkbenchModule(getProject().getName());
-				
-		} finally {
-			if (moduleCore != null) {
-				moduleCore.saveIfNecessary(null);
-				moduleCore.dispose();
-			}
-		}
-	}	
-
-	public IVirtualReference[] getReferences(Map<String, Object> options) {
-		return getReferences();
-	}
-	
-	public IVirtualReference[] getReferences() { 
-		StructureEdit core = null;
-		List references = new ArrayList();
-		try {
-			core = StructureEdit.getStructureEditForRead(getProject());
-			if (core!=null && core.getComponent()!=null) {
-				WorkbenchComponent component = core.getComponent();
-				if (component!=null) {
-					List referencedComponents = component.getReferencedComponents();
-					for (Iterator iter = referencedComponents.iterator(); iter.hasNext();) {
-						ReferencedComponent referencedComponent = (ReferencedComponent) iter.next();
-						if (referencedComponent==null) 
-							continue;
-						IVirtualReference vReference = StructureEdit.createVirtualReference(this, referencedComponent);
-						if( vReference != null ){
-							vReference.setArchiveName( referencedComponent.getArchiveName() );
-						}
-						if (vReference != null && vReference.getReferencedComponent() != null && vReference.getReferencedComponent().exists())
-							references.add(vReference); 
-					}
-				}
-			}
-			return (IVirtualReference[]) references.toArray(new IVirtualReference[references.size()]);
-		} finally {
-			if(core != null)
-				core.dispose();
-		}		
-	}
-
-	public void addReferences(IVirtualReference[] references) {
-		if (references==null || references.length==0)
-			return;
-		StructureEdit core = null;
-		try {
-			core = StructureEdit.getStructureEditForWrite(getProject());
-			if (core == null)
-				return;
-			WorkbenchComponent component = core.getComponent();
-			ReferencedComponent referencedComponent = null;
-			ComponentcoreFactory factory = ComponentcorePackage.eINSTANCE.getComponentcoreFactory();
-			for (int i=0; i<references.length; i++) {
-				if (references[i] == null)
-					continue;
-				referencedComponent = factory.createReferencedComponent();				
-				referencedComponent.setDependencyType(DependencyType.get(references[i].getDependencyType()));
-				referencedComponent.setRuntimePath(references[i].getRuntimePath());
-
-				IVirtualComponent comp = references[i].getReferencedComponent();
-				if(comp!=null && !comp.isBinary())
-					referencedComponent.setHandle(ModuleURIUtil.fullyQualifyURI(comp.getProject()));
-				else if (comp!=null)
-					referencedComponent.setHandle(ModuleURIUtil.archiveComponentfullyQualifyURI(comp.getName()));
-				if (component != null)
-					component.getReferencedComponents().add(referencedComponent);
-				referencedComponent.setArchiveName(references[i].getArchiveName());
-			}
-			//clean up any old obsolete references
-			if (component != null){
-				cleanUpReferences(component);
-			}
-		} finally {
-			if(core != null) {
-				core.saveIfNecessary(null);
-				core.dispose();
-			}
-		}	
-	}
-	
-	private void cleanUpReferences(WorkbenchComponent component) {
-		List referencedComponents = component.getReferencedComponents();
-		for (Iterator iter = referencedComponents.iterator(); iter.hasNext();) {
-			ReferencedComponent referencedComponent = (ReferencedComponent) iter.next();
-			if (referencedComponent==null) 
-				continue;
-			IVirtualReference vReference = StructureEdit.createVirtualReference(this, referencedComponent);
-			if (vReference == null || vReference.getReferencedComponent() == null || !vReference.getReferencedComponent().exists()){
-				iter.remove();
-			}
-		}
-	}
-	
-	public void setReferences(IVirtualReference[] references) { 
-		StructureEdit core = null;
-		try {
-			core = StructureEdit.getStructureEditForWrite(getProject());
-			WorkbenchComponent component = core.getComponent();
-			ReferencedComponent referencedComponent = null;
-			  
-			component.getReferencedComponents().clear();
-			ComponentcoreFactory factory = ComponentcorePackage.eINSTANCE.getComponentcoreFactory();
-			for (int i=0; i<references.length; i++) {
-				referencedComponent = factory.createReferencedComponent();				
-				referencedComponent.setDependencyType(DependencyType.get(references[i].getDependencyType()));
-				referencedComponent.setRuntimePath(references[i].getRuntimePath());
-
-				IVirtualComponent comp = references[i].getReferencedComponent();
-				if( !comp.isBinary())
-					referencedComponent.setHandle(ModuleURIUtil.fullyQualifyURI(references[i].getReferencedComponent().getProject()));
-				else
-					referencedComponent.setHandle(ModuleURIUtil.archiveComponentfullyQualifyURI(references[i].getReferencedComponent().getName()));
-				
-				referencedComponent.setArchiveName(references[i].getArchiveName());
-				component.getReferencedComponents().add(referencedComponent);
-			}
-			 
-		} finally {
-			if(core != null) {
-				core.saveIfNecessary(null);
-				core.dispose();
-			}
-		}	
-	}
-
-	public int hashCode() {
-		int hash = HashUtil.SEED;
-		hash = HashUtil.hash(hash, getProject().getName());
-		hash = HashUtil.hash(hash, getName());
-		hash = HashUtil.hash(hash, isBinary());
-		return hash;
-	}
-	
-	public boolean equals(Object anOther) { 
-		if(anOther instanceof IVirtualComponent) {
-			IVirtualComponent otherComponent = (IVirtualComponent) anOther;
-			return getProject().equals(otherComponent.getProject()) && 
-				   getName().equals(otherComponent.getName()) && 
-				   isBinary() == otherComponent.isBinary();
-		}
-		return false;
-	}
-
-	public IVirtualReference getReference(String aComponentName) {
-		IVirtualReference[] refs = getReferences();
-		for (int i = 0; i < refs.length; i++) {
-			IVirtualReference reference = refs[i];
-			if( reference.getReferencedComponent() != null ){
-				if (reference.getReferencedComponent().getName().equals(aComponentName))
-					return reference;
-			}
-		}
-		return null;
-	}
-	
-	public Object getAdapter(Class adapterType) {
-		return Platform.getAdapterManager().getAdapter(this, adapterType);
-	}
-
-	public IVirtualFolder getRootFolder() {
-		return rootFolder;
-	}
-
-	public IProject getProject() {
-		return componentProject;
-	}
-	
-	/**
-	 * Return all components which have a reference to the passed in target component.
-	 * 
-	 * @param target
-	 * @return array of components
-	 */
-	public IVirtualComponent[] getReferencingComponents() {
-		IProject[] handles =  DependencyGraphManager.getInstance().getDependencyGraph().getReferencingComponents(getProject());
-		IVirtualComponent[] result = new IVirtualComponent[handles.length];
-		for (int i=0; i<handles.length; i++)
-			result[i] = ComponentCore.createComponent(handles[i]);
-		return result;
-	}
-	
-	/**
-	 * Remove the associated ReferencedComponent for the virtual reference from the workbench component 
-	 * associated with this virtual component
-	 * 
-	 * @param aReference
-	 */
-	public void removeReference(IVirtualReference aReference) {
-		StructureEdit core = null;
-		try {
-			core = StructureEdit.getStructureEditForWrite(getProject());
-			if (core == null || aReference == null)
-				return;
-			WorkbenchComponent component = core.getComponent();
-			ReferencedComponent refComponent = getWorkbenchReferencedComponent(aReference, component);
-			if (component != null && refComponent != null)
-				component.getReferencedComponents().remove(refComponent);
-		} finally {
-			if(core != null) {
-				core.saveIfNecessary(null);
-				core.dispose();
-			}
-		}	
-	}
-	
-	/**
-	 * Return the associated structure edit ReferencedComponent object for the given IVirtualReference based on the handle
-	 * and module URI.
-	 * 
-	 * @param aReference
-	 * @param core
-	 * @return ReferencedComponent
-	 */
-	protected ReferencedComponent getWorkbenchReferencedComponent(IVirtualReference aReference, WorkbenchComponent component) {
-		if (aReference == null || aReference.getReferencedComponent() == null || component == null)
-			return null;
-		List referencedComponents = component.getReferencedComponents();
-		for (int i=0; i<referencedComponents.size(); i++) {
-			ReferencedComponent ref = (ReferencedComponent) referencedComponents.get(i);
-			if (!aReference.getReferencedComponent().isBinary()) {
-				if (ref.getHandle().equals(ModuleURIUtil.fullyQualifyURI(aReference.getReferencedComponent().getProject())))
-					return ref;	
-			} 
-			else {
-				if (ref.getHandle().equals(ModuleURIUtil.archiveComponentfullyQualifyURI(aReference.getReferencedComponent().getName())))
-					return ref;
-			}	
-		}
-		return null;
-	}
-	
-	
-	/**
-	 * @return IVirtualReference[] - All the references of this component, including potentially deleted references
-	 */
-	public IVirtualReference[] getAllReferences() { 
-		StructureEdit core = null;
-		List references = new ArrayList();
-		try {
-			core = StructureEdit.getStructureEditForRead(getProject());
-			if (core!=null && core.getComponent()!=null) {
-				WorkbenchComponent component = core.getComponent();
-				if (component!=null) {
-					List referencedComponents = component.getReferencedComponents();
-					for (Iterator iter = referencedComponents.iterator(); iter.hasNext();) {
-						ReferencedComponent referencedComponent = (ReferencedComponent) iter.next();
-						if (referencedComponent==null) 
-							continue;
-						IVirtualReference vReference = StructureEdit.createVirtualReference(this, referencedComponent);
-						if( vReference != null ){
-							vReference.setArchiveName( referencedComponent.getArchiveName() );
-						}
-						if (vReference != null && vReference.getReferencedComponent() != null)
-							references.add(vReference); 
-					}
-				}
-			}
-			return (IVirtualReference[]) references.toArray(new IVirtualReference[references.size()]);
-		} finally {
-			if(core != null)
-				core.dispose();
-		}		
-	}
-	
-	public String toString() {
-		return componentProject.toString();
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualContainer.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualContainer.java
deleted file mode 100644
index 51f4f15..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualContainer.java
+++ /dev/null
@@ -1,363 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.resources;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeNode;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeRoot;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualContainer;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-
-public abstract class VirtualContainer extends VirtualResource implements IVirtualContainer {
-
-
-	public VirtualContainer(IProject aComponentProject, IPath aRuntimePath) {
-		super(aComponentProject, aRuntimePath);
-	}
-
-	// TODO WTP:Implement this method
-	public boolean exists(IPath path) {
-		throw new UnsupportedOperationException("Method not supported"); //$NON-NLS-1$
-
-	}
-
-	/**
-	 * @see IContainer#findMember(java.lang.String)
-	 */
-	public IVirtualResource findMember(String aChildName) {
-		return findMember(new Path(aChildName), 0);
-	}
-
-	/**
-	 * @see IContainer#findMember(java.lang.String, boolean)
-	 */
-	public IVirtualResource findMember(String aChildName, int searchFlags) {
-		return findMember(new Path(aChildName), searchFlags);
-	}
-
-	/**
-	 * @see IContainer#findMember(org.eclipse.core.runtime.IPath)
-	 */
-	public IVirtualResource findMember(IPath aChildPath) {
-		return findMember(aChildPath, 0);
-	}
-
-	public IVirtualResource findMember(IPath aPath, int theSearchFlags) {
-
-		StructureEdit structureEdit = null;
-		try {
-
-			structureEdit = StructureEdit.getStructureEditForRead(getProject());
-			WorkbenchComponent component = structureEdit.getComponent();
-			if (null != component) {
-				ResourceTreeRoot root = ResourceTreeRoot.getDeployResourceTreeRoot(component);
-				ComponentResource[] resources = root.findModuleResources(getRuntimePath().append(aPath), ResourceTreeNode.CREATE_NONE);
-
-				for (int i = 0; i < resources.length; i++) {
-				// return the resources corresponding to the root, not any of the children if its a folder
-					if (resources[i].getRuntimePath().equals(getRuntimePath().append(aPath))) {
-						IResource platformResource = getProject().findMember(resources[i].getSourcePath());
-						if (platformResource == null)
-							platformResource = ResourcesPlugin.getWorkspace().getRoot().findMember(resources[i].getSourcePath());
-						if (platformResource != null) {
-							switch (platformResource.getType()) {
-								case IResource.FOLDER :
-								case IResource.PROJECT :
-									return ComponentCore.createFolder(getProject(), getRuntimePath().append(aPath));
-								case IResource.FILE :
-									return new VirtualFile(getProject(), getRuntimePath().append(aPath));
-							}
-						}
-					}
-				}
-			}
-		} finally {
-			if (structureEdit != null)
-				structureEdit.dispose();
-		}
-		return null;
-	}
-
-	/**
-	 * @see IContainer#getFile(org.eclipse.core.runtime.IPath)
-	 */
-	public IVirtualFile getFile(IPath aPath) {
-		return new VirtualFile(getProject(), getRuntimePath().append(aPath));
-	}
-
-	/**
-	 * @see IContainer#getFolder(org.eclipse.core.runtime.IPath)
-	 */
-	public IVirtualFolder getFolder(IPath aPath) {
-		return ComponentCore.createFolder(getProject(), getRuntimePath().append(aPath));
-	}
-
-	/**
-	 * @see org.eclipse.core.resources.IFolder#getFile(java.lang.String)
-	 */
-	public IVirtualFile getFile(String name) {
-		return new VirtualFile(getProject(), getRuntimePath().append(name));
-	}
-
-	/**
-	 * @see org.eclipse.core.resources.IFolder#getFolder(java.lang.String)
-	 */
-	public IVirtualFolder getFolder(String name) {
-		return ComponentCore.createFolder(getProject(), getRuntimePath().append(name));
-	}
-
-	/**
-	 * @see IContainer#members()
-	 */
-	public IVirtualResource[] members() throws CoreException {
-		return members(IResource.NONE);
-	}
-
-	/**
-	 * @see IContainer#members(boolean)
-	 */
-	public IVirtualResource[] members(boolean includePhantoms) throws CoreException {
-		return members(includePhantoms ? IGNORE_EXCLUSIONS : IResource.NONE);
-	}
-
-	/**
-	 * @see IContainer#members(int)
-	 */
-	public IVirtualResource[] members(int memberFlags) throws CoreException {
-		List virtualResources = new ArrayList(); // result
-		Set allNames = new HashSet();
-		// Ignore all meta data paths in the virtual container resource set
-		IVirtualComponent component = getComponent();
-		if (component == null)
-		    return new IVirtualResource[0];
-		IPath[] metaPaths = component.getMetaResources();
-		for (int i = 0; i < metaPaths.length; i++) {
-			String localName = getLocalName(metaPaths[i]);
-			if (localName != null)
-				allNames.add(localName);
-		}
-		StructureEdit moduleCore = null;
-		try {
-			moduleCore = StructureEdit.getStructureEditForRead(getProject());
-			WorkbenchComponent wbComponent = moduleCore.getComponent();
-			if (wbComponent != null) {
-				ResourceTreeRoot root = ResourceTreeRoot.getDeployResourceTreeRoot(wbComponent);
-				ComponentResource[] componentResources = root.findModuleResources(getRuntimePath(), ResourceTreeNode.CREATE_NONE);
-				// componentResources = orderResourcesByFolder(componentResources);
-
-				for (int componentResourceIndex = 0; componentResourceIndex < componentResources.length; componentResourceIndex++) {
-					IPath fullRuntimePath = componentResources[componentResourceIndex].getRuntimePath();
-					// exact match
-					if (fullRuntimePath.equals(getRuntimePath())) {
-
-						IResource realResource = getProject().findMember(componentResources[componentResourceIndex].getSourcePath());
-						if ((realResource != null) && (realResource.getType() == IResource.FOLDER || realResource.getType() == IResource.PROJECT)) {
-							IContainer realContainer = (IContainer) realResource;
-							IResource[] realChildResources = realContainer.members(memberFlags);
-							for (int realResourceIndex = 0; realResourceIndex < realChildResources.length; realResourceIndex++) {
-								IResource child = realChildResources[realResourceIndex];
-								String localName = child.getName();
-								if (allNames.add(localName)) {
-									IPath newRuntimePath = getRuntimePath().append(localName);
-									if (child instanceof IFile) {
-										virtualResources.add(new VirtualFile(getProject(), newRuntimePath, (IFile) child));
-									} else {
-										virtualResources.add(ComponentCore.createFolder(getProject(), newRuntimePath));
-									}
-								}
-							}
-						}
-						// An IResource.FILE would be an error condition (as this is a container)
-
-					} else { // fuzzy match
-						String localName = getLocalName(fullRuntimePath);
-						if (localName != null && allNames.add(localName)) {
-							IResource realResource = StructureEdit.getEclipseResource(componentResources[componentResourceIndex]);
-							if (realResource != null) {
-								IPath newRuntimePath = getRuntimePath().append(localName);
-								if (fullRuntimePath.segmentCount() > getRuntimePath().segmentCount() + 1) {	// not a direct child
-									virtualResources.add(ComponentCore.createFolder(getProject(), newRuntimePath));
-								} else {
-									if (realResource instanceof IFile) {
-										virtualResources.add(new VirtualFile(getProject(), newRuntimePath, (IFile) realResource));
-									} else {
-										virtualResources.add(ComponentCore.createFolder(getProject(), newRuntimePath));
-									}
-								}
-							}
-						}
-					}
-				}
-			}
-		} catch (Exception e) {
-			if (virtualResources == null)
-				return new IVirtualResource[0];
-		} finally {
-			if (moduleCore != null)
-				moduleCore.dispose();
-		}
-		return (IVirtualResource[]) virtualResources.toArray(new IVirtualResource[virtualResources.size()]);
-	}
-
-	/**
-	 * Local name within context of this virtual container.
-	 */
-	private String getLocalName(IPath path) {
-		if (!getRuntimePath().isPrefixOf(path))
-			return null;
-		return path.segment(getRuntimePath().segmentCount());
-	}
-
-	public IVirtualFile[] findDeletedMembersWithHistory(int depth, IProgressMonitor monitor) throws CoreException {
-		throw new UnsupportedOperationException("Method not supported"); //$NON-NLS-1$
-		// return null;
-	}
-
-	/**
-	 * @see org.eclipse.core.resources.IFolder#createLink(org.eclipse.core.runtime.IPath, int,
-	 *      org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void createLink(IPath aProjectRelativeLocation, int updateFlags, IProgressMonitor monitor) throws CoreException {
-
-		StructureEdit moduleCore = null;
-		try {
-			IContainer resource = null;
-			if (aProjectRelativeLocation.isRoot() || aProjectRelativeLocation.isEmpty()) {
-				resource = getProject();
-			} else {
-				resource = getProject().getFolder(aProjectRelativeLocation);
-			}
-
-			moduleCore = StructureEdit.getStructureEditForWrite(getProject());
-			WorkbenchComponent component = moduleCore.getComponent();
-			if (null != component) {
-				ResourceTreeRoot root = ResourceTreeRoot.getDeployResourceTreeRoot(component);
-				ComponentResource[] resources = root.findModuleResources(getRuntimePath(), ResourceTreeNode.CREATE_NONE);
-
-				if (resources.length == 0) {
-					ComponentResource componentResource = moduleCore.createWorkbenchModuleResource(resource);
-					componentResource.setRuntimePath(getRuntimePath());
-					component.getResources().add(componentResource);
-				} else {
-					boolean foundMapping = false;
-					for (int resourceIndx = 0; resourceIndx < resources.length && !foundMapping; resourceIndx++) {
-						if (aProjectRelativeLocation.makeAbsolute().equals(resources[resourceIndx].getSourcePath()))
-							foundMapping = true;
-					}
-					if (!foundMapping) {
-						ComponentResource componentResource = moduleCore.createWorkbenchModuleResource(resource);
-						componentResource.setRuntimePath(getRuntimePath());
-						component.getResources().add(componentResource);
-					}
-				}
-				createResource(resource, updateFlags, monitor);
-			}
-
-		} finally {
-			if (moduleCore != null) {
-				moduleCore.saveIfNecessary(monitor);
-				moduleCore.dispose();
-			}
-		}
-	}
-
-	public int getType() {
-		return IVirtualResource.COMPONENT;
-	}
-
-	public IResource getUnderlyingResource() {
-		return null;
-	}
-
-	public IResource[] getUnderlyingResources() {
-		return NO_RESOURCES;
-	}
-
-	protected void doDeleteMetaModel(int updateFlags, IProgressMonitor monitor) {
-		StructureEdit moduleCore = null;
-		try {
-			moduleCore = StructureEdit.getStructureEditForWrite(getProject());
-			WorkbenchComponent component = moduleCore.getComponent();
-			if (null != component) {
-				moduleCore.getComponentModelRoot().getComponents().remove(component);
-			}
-		} finally {
-			if (moduleCore != null) {
-				moduleCore.saveIfNecessary(monitor);
-				moduleCore.dispose();
-			}
-		}
-	}
-
-	protected void doDeleteRealResources(int updateFlags, IProgressMonitor monitor) throws CoreException {
-		throw new UnsupportedOperationException("Method not supported"); //$NON-NLS-1$
-	}
-
-	public IVirtualResource[] getResources(String aResourceType) {
-		StructureEdit core = null;
-		try {
-			core = StructureEdit.getStructureEditForRead(getProject());
-			WorkbenchComponent component = core.getComponent();
-			if (null != component) {
-				List currentResources = component.getResources();
-				List foundResources = new ArrayList();
-
-				if (aResourceType != null) {
-					for (Iterator iter = currentResources.iterator(); iter.hasNext();) {
-						ComponentResource resource = (ComponentResource) iter.next();
-						if (aResourceType.equals(resource.getResourceType())) {
-							IVirtualResource vres = createVirtualResource(resource);
-							if (vres != null)
-								foundResources.add(vres);
-						}
-					}
-				}
-				return (IVirtualResource[]) foundResources.toArray(new IVirtualResource[foundResources.size()]);
-			}
-			return new IVirtualResource[0];
-		} finally {
-			if (core != null)
-				core.dispose();
-		}
-	}
-
-	private IVirtualResource createVirtualResource(ComponentResource aComponentResource) {
-		IResource resource = StructureEdit.getEclipseResource(aComponentResource);
-		switch (resource.getType()) {
-			case IResource.FILE :
-				return ComponentCore.createFile(getProject(), aComponentResource.getRuntimePath());
-			case IResource.FOLDER :
-				return ComponentCore.createFolder(getProject(), aComponentResource.getRuntimePath());
-		}
-		return null;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualFile.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualFile.java
deleted file mode 100644
index ee9ec04..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualFile.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.resources;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeNode;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeRoot;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-
-public class VirtualFile extends VirtualResource implements IVirtualFile {
-
-	private IFile underlyingFile;
-
-	public VirtualFile(IProject aComponentProject, IPath aRuntimePath) {
-		super(aComponentProject, aRuntimePath); 
-	}
-
-	public VirtualFile(IProject aComponentProject, IPath aRuntimePath, IFile underlyingFile) {
-		super(aComponentProject, aRuntimePath);
-		this.underlyingFile = underlyingFile; 
-	}
-
-	/**
-	 * @see org.eclipse.core.resources.IFolder#createLink(org.eclipse.core.runtime.IPath, int,
-	 *      org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void createLink(IPath aProjectRelativeLocation, int updateFlags, IProgressMonitor monitor) throws CoreException {
-
-		StructureEdit moduleCore = null;
-		try {
-			IFile resource = getProject().getFile(aProjectRelativeLocation);
-
-			moduleCore = StructureEdit.getStructureEditForWrite(getProject());
-			WorkbenchComponent component = moduleCore.getComponent();
-			
-			ResourceTreeRoot root = ResourceTreeRoot.getDeployResourceTreeRoot(component);
-			ComponentResource[] resources = root.findModuleResources(getRuntimePath(), ResourceTreeNode.CREATE_NONE);
-
-			if(resources.length == 0) {
-				ComponentResource componentResource = moduleCore.createWorkbenchModuleResource(resource);
-				componentResource.setRuntimePath(getRuntimePath());
-				component.getResources().add(componentResource);
-			} else { 
-				boolean foundMapping = false;
-				for (int resourceIndx = 0; resourceIndx < resources.length && !foundMapping; resourceIndx++) {
-					if(aProjectRelativeLocation.equals(resources[resourceIndx].getSourcePath()))
-						foundMapping = true;
-				}
-				if(!foundMapping) {
-					ComponentResource componentResource = moduleCore.createWorkbenchModuleResource(resource);
-					componentResource.setRuntimePath(getRuntimePath());
-					component.getResources().add(componentResource);					
-				}
-			} 
-
-		} finally {
-			if (moduleCore != null) {
-				moduleCore.saveIfNecessary(monitor);
-				moduleCore.dispose();
-			}
-		}
-	} 
- 
-	public int getType() {
-		return IVirtualResource.FILE;
-	}
-	
-	public IResource getUnderlyingResource() {
-		return getUnderlyingFile();
-	}
-	
-	public IResource[] getUnderlyingResources() {
-		return getUnderlyingFiles();
-	}
-	
-	public IFile getUnderlyingFile() {
-		if (underlyingFile == null) {
-			underlyingFile = getProject().getFile(getProjectRelativePath());
-		}
-		return underlyingFile;
-	}
-
-	public IFile[] getUnderlyingFiles() {
-		IPath[] paths = getProjectRelativePaths();
-		List result = new ArrayList();
-		for (int i=0; i<paths.length; i++) {
-			IFile file = getProject().getFile(paths[i]);
-			if (file!=null && file.exists() && !result.contains(file))
-				result.add(file);
-		}
-		return (IFile[]) result.toArray(new IFile[result.size()]);
-	}
-
-	protected void doDeleteMetaModel(int updateFlags,IProgressMonitor monitor) {
-		//Default
-	}	
-	
-	protected void doDeleteRealResources(int updateFlags, IProgressMonitor monitor) throws CoreException {
-		//Default
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualFolder.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualFolder.java
deleted file mode 100644
index b3fa912..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualFolder.java
+++ /dev/null
@@ -1,150 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.resources;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-
-public class VirtualFolder extends VirtualContainer implements IVirtualFolder { 
-
-
-	/**
-	 * p> Creates an unassigned mapping contained by the component identified by aComponentHandle
-	 * with a runtime path of aRuntimePath.
-	 * </p>
-	 * 
-	 * @param aComponentHandle
-	 * @param aRuntimePath
-	 */
-	public VirtualFolder(IProject aComponentProject, IPath aRuntimePath) {
-		super(aComponentProject, aRuntimePath);
-	}
- 
-	// TODO WTP:Implement this method
-	public void create(int updateFlags, IProgressMonitor monitor) throws CoreException {
-
-		IVirtualComponent container = ComponentCore.createComponent(getProject()); 
-		if( !container.getRootFolder().getProjectRelativePath().isRoot()){
-			IFolder realFolder = getProject().getFolder(container.getRootFolder().getProjectRelativePath()); 
-			IFolder newFolder = realFolder.getFolder(getRuntimePath()); 
-			createResource(newFolder, updateFlags, monitor);  
-		}
-		else {
-			IFolder newFolder = getProject().getFolder(getRuntimePath()); 
-			createResource(newFolder, updateFlags, monitor); 
-		}
-	} 
-
-	// TODO WTP:Implement this method
-	public boolean exists(IPath path) {
-		throw new UnsupportedOperationException("Method not supported"); //$NON-NLS-1$
-		// return false;
-	}
-
- 
-	public int getType() {
-		return IVirtualResource.FOLDER;
-	} 
-	
-	public IResource getUnderlyingResource() {
-		return getUnderlyingFolder();
-	}
-	
-	public IResource[] getUnderlyingResources() {
-		return getUnderlyingFolders();
-	}
-
-	public IContainer getUnderlyingFolder() { 
-		IPath path = getProjectRelativePath();
-		if( !path.isRoot() )
-			return getProject().getFolder(getProjectRelativePath());
-		return getProject();
-	}
-	
-	public IContainer[] getUnderlyingFolders() {
-		IPath[] paths = getProjectRelativePaths();
-		List result = new ArrayList();
-		for (int i=0; i<paths.length; i++) {
-			if( !paths[i].isRoot() ){
-				IContainer folder = getProject().getFolder(paths[i]);
-				if (folder!=null && folder.exists() && !result.contains(folder))
-					result.add(folder);
-			} else 
-				result.add(getProject());
-		}
-		return (IContainer[]) result.toArray(new IContainer[result.size()]);
-	}
-
-	protected void doDeleteMetaModel(int updateFlags, IProgressMonitor monitor) {
-
-		// only handles explicit mappings
-		StructureEdit moduleCore = null;
-		try { 
-			IPath runtimePath = getRuntimePath();
-			moduleCore = StructureEdit.getStructureEditForWrite(getProject());
-			WorkbenchComponent component = moduleCore.getComponent();
-			ComponentResource[] resources = component.findResourcesByRuntimePath(runtimePath);
-			for (int i = 0; i < resources.length; i++) {
-				if(runtimePath.equals(resources[i].getRuntimePath())) 
-					component.getResources().remove(resources[i]);								
-			}
-			
-		} finally {
-			if (moduleCore != null) {
-				moduleCore.saveIfNecessary(null);
-				moduleCore.dispose();
-			}
-		}
-	}	
-	
-	protected void doDeleteRealResources(int updateFlags, IProgressMonitor monitor) throws CoreException {
-
-		// only handles explicit mappings
-		StructureEdit moduleCore = null;
-		try {
-			IPath runtimePath = getRuntimePath();
-			moduleCore = StructureEdit.getStructureEditForWrite(getProject());
-			WorkbenchComponent component = moduleCore.getComponent();
-			ComponentResource[] resources = component.findResourcesByRuntimePath(runtimePath);
-			IResource realResource;
-			for (int i = 0; i < resources.length; i++) {
-				if(runtimePath.equals(resources[i].getRuntimePath())) {
-					realResource = StructureEdit.getEclipseResource(resources[i]);
-					if(realResource != null && realResource.getType() == getType())
-						realResource.delete(updateFlags, monitor);
-				}
-					
-			}
-			
-		} finally {
-			if (moduleCore != null) {
-				moduleCore.saveIfNecessary(null);
-				moduleCore.dispose();
-			}
-		}
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualReference.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualReference.java
deleted file mode 100644
index 007b1ce..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualReference.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.resources;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.DependencyType;
-import org.eclipse.wst.common.componentcore.internal.ReferencedComponent;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.impl.ModuleURIUtil;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-public class VirtualReference implements IVirtualReference {
-	
-	private IVirtualComponent referencedComponent;
-	private IVirtualComponent enclosingComponent;
-	private IPath runtimePath;
-	private int dependencyType;
-	private String archiveName;
-
-	public VirtualReference() {
-		
-	} 
-	
-	public VirtualReference(IVirtualComponent anEnclosingComponent, IVirtualComponent aReferencedComponent) {
-		this(anEnclosingComponent, aReferencedComponent, new Path(String.valueOf(IPath.SEPARATOR)), DEPENDENCY_TYPE_USES); 
-	}
-	
-	public VirtualReference(IVirtualComponent anEnclosingComponent, IVirtualComponent aReferencedComponent, IPath aRuntimePath) {
-		this(anEnclosingComponent, aReferencedComponent, aRuntimePath, DEPENDENCY_TYPE_USES);
-	}
-
-	public VirtualReference(IVirtualComponent anEnclosingComponent, IVirtualComponent aReferencedComponent, IPath aRuntimePath, int aDependencyType) {
-		enclosingComponent = anEnclosingComponent;
-		referencedComponent = aReferencedComponent;
-		runtimePath = aRuntimePath;
-		dependencyType = aDependencyType;
-	}
-
-	public void create(int updateFlags, IProgressMonitor aMonitor) { 
-		StructureEdit core = null;
-		try {
-			core = StructureEdit.getStructureEditForWrite(enclosingComponent.getProject());
-			WorkbenchComponent component = core.getComponent();
-			List referencedComponents = component.getReferencedComponents();
-			ReferencedComponent refComp = ComponentcorePackage.eINSTANCE.getComponentcoreFactory().createReferencedComponent();
-			if( !referencedComponent.isBinary())
-				refComp.setHandle(ModuleURIUtil.fullyQualifyURI(referencedComponent.getProject()));
-			else
-				refComp.setHandle(ModuleURIUtil.archiveComponentfullyQualifyURI(referencedComponent.getName())); 
-			refComp.setRuntimePath(runtimePath);
-			refComp.setDependencyType(DependencyType.get(dependencyType));
-			refComp.setArchiveName(archiveName);
-			if(!referencedComponents.contains(refComp)){
-				referencedComponents.add(refComp);
-			}
-		}
-		finally{
-			if(null != core){
-				core.saveIfNecessary(aMonitor);
-				core.dispose();
-			}
-		}
-	}
-
-	public void setRuntimePath(IPath aRuntimePath) { 
-		runtimePath = aRuntimePath;
-	}
-
-	public IPath getRuntimePath() { 
-		return runtimePath;
-	}
-
-	public void setDependencyType(int aDependencyType) {
-		dependencyType = aDependencyType;
-	}
-
-	public int getDependencyType() { 
-		return dependencyType;
-	}
-
-	public boolean exists() { 
-		return false;
-	}
-
-	public IVirtualComponent getEnclosingComponent() { 
-		return enclosingComponent;
-	}
-
-	public IVirtualComponent getReferencedComponent() { 
-		return referencedComponent;
-	}
-	
-	/**
-	 * This is a helper method to update the actual referenceComponent on the .component file for this virtual reference.
-	 */
-	public void setReferencedComponent(IVirtualComponent aReferencedComponent, EObject dependentObject) {
-		if (aReferencedComponent == null)
-			return;
-		StructureEdit enclosingCore = null;
-		StructureEdit refCore = null;
-		try {
-			enclosingCore = StructureEdit.getStructureEditForWrite(enclosingComponent.getProject());
-			refCore = StructureEdit.getStructureEditForWrite(referencedComponent.getProject());
-			WorkbenchComponent enclosingComp = enclosingCore.getComponent();
-			WorkbenchComponent refComp = refCore.getComponent();
-			ReferencedComponent actualReferencedComponent = enclosingCore.findReferencedComponent(enclosingComp, refComp);
-			if (actualReferencedComponent != null) {
-				referencedComponent = aReferencedComponent;
-				if(!referencedComponent.isBinary())
-					actualReferencedComponent.setHandle(ModuleURIUtil.fullyQualifyURI(referencedComponent.getProject()));
-				else
-					actualReferencedComponent.setHandle(ModuleURIUtil.archiveComponentfullyQualifyURI(referencedComponent.getName()));
-				actualReferencedComponent.setDependentObject(dependentObject);
-			}
-		} finally {
-			if (enclosingCore != null) {
-				enclosingCore.saveIfNecessary(new NullProgressMonitor());
-				enclosingCore.dispose();
-			}
-			if (refCore != null) {
-				refCore.saveIfNecessary(new NullProgressMonitor());
-				refCore.dispose();
-			}
-		}
-	}
-
-	public String getArchiveName() {
-		return archiveName;
-	}
-
-	public void setArchiveName(String archiveName) {
-		this.archiveName = archiveName;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualResource.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualResource.java
deleted file mode 100644
index 5f637f9..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/resources/VirtualResource.java
+++ /dev/null
@@ -1,344 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.resources;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.impl.ModuleURIUtil;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeNode;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeRoot;
-import org.eclipse.wst.common.componentcore.internal.impl.WorkbenchComponentImpl;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualContainer;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-
-public abstract class VirtualResource implements IVirtualResource {
-
-	protected static final IResource[] NO_RESOURCES = null;
-	private final IProject componentProject;
-	private final IPath runtimePath;
-	private int hashCode;
-	private String toString;
-	private static final String EMPTY_STRING = ""; //$NON-NLS-1$
-	private IVirtualComponent component;
-	private String resourceType;
-
-	private final ResourceTimestampMappings mapping = new ResourceTimestampMappings();
-
-
-	protected VirtualResource(IProject aComponentProject, IPath aRuntimePath) {
-		componentProject = aComponentProject;
-		runtimePath = aRuntimePath;
-	}
-
-	public void delete(int updateFlags, IProgressMonitor monitor) throws CoreException {
-
-		if ((updateFlags & IVirtualResource.IGNORE_UNDERLYING_RESOURCE) == 0) {
-			doDeleteRealResources(updateFlags, monitor);
-		}
-
-		doDeleteMetaModel(updateFlags, monitor);
-	}
-
-	protected void doDeleteMetaModel(int updateFlags, IProgressMonitor monitor) {
-		StructureEdit moduleCore = null;
-		try {
-			moduleCore = StructureEdit.getStructureEditForWrite(getProject());
-			WorkbenchComponent aComponent = moduleCore.getComponent();
-			ComponentResource[] resources = aComponent.findResourcesByRuntimePath(getRuntimePath());
-			aComponent.getResources().removeAll(Arrays.asList(resources));
-		}
-		finally {
-			if (moduleCore != null) {
-				moduleCore.saveIfNecessary(monitor);
-				moduleCore.dispose();
-			}
-		}
-	}
-
-
-	protected abstract void doDeleteRealResources(int updateFlags, IProgressMonitor monitor) throws CoreException;
-
-	public boolean exists() {
-		// verify all underlying resources exist for the virtual resource to
-		// exist
-		IResource[] resources = getUnderlyingResources();
-		if (resources == null || resources.length == 0)
-			return false;
-		for (int i = 0; i < resources.length; i++) {
-			if (resources[i] == null || !resources[i].exists())
-				return false;
-		}
-		return true;
-	}
-
-	public String getFileExtension() {
-		String name = getName();
-		int dot = name.lastIndexOf('.');
-		if (dot == -1)
-			return null;
-		if (dot == name.length() - 1)
-			return EMPTY_STRING;
-		return name.substring(dot + 1);
-	}
-
-	public IPath getWorkspaceRelativePath() {
-		return getProject().getFullPath().append(getProjectRelativePath());
-	}
-
-	public IPath getRuntimePath() {
-		return runtimePath;
-	}
-
-	public IPath[] getProjectRelativePaths() {
-
-		WorkbenchComponent aComponent = getReadOnlyComponent();
-		if (aComponent != null) {
-			ResourceTreeRoot root = ResourceTreeRoot.getDeployResourceTreeRoot(aComponent);
-			// still need some sort of loop here to search subpieces of the
-			// runtime path.
-			ComponentResource[] componentResources = null;
-
-			if (root != null) {
-				IPath[] estimatedPaths = null;
-				IPath searchPath = null;
-				do {
-					searchPath = (searchPath == null) ? getRuntimePath() : searchPath.removeLastSegments(1);
-					if (searchPath.isAbsolute())
-						searchPath = searchPath.makeRelative();
-					componentResources = root.findModuleResources(searchPath, ResourceTreeNode.CREATE_NONE);
-					estimatedPaths = findBestMatches(componentResources);
-				}
-				while (estimatedPaths.length == 0 && canSearchContinue(componentResources, searchPath));
-				if (estimatedPaths == null || estimatedPaths.length == 0)
-					return new IPath[]{getRuntimePath()};
-				return estimatedPaths;
-			}
-		}
-
-		return new IPath[]{getRuntimePath()};
-	}
-
-	public IPath getProjectRelativePath() {
-		if (getRuntimePath().equals(new Path("/"))) {
-			WorkbenchComponent aComponent = getReadOnlyComponent();
-			if (aComponent != null) {
-				if (((WorkbenchComponentImpl) aComponent).getDefaultSourceRoot() != null)
-					return ((WorkbenchComponentImpl) aComponent).getDefaultSourceRoot();
-			}
-		}
-		return getProjectRelativePaths()[0];
-	}
-
-	private boolean canSearchContinue(ComponentResource[] componentResources, IPath searchPath) {
-		return (searchPath.segmentCount() > 0);
-	}
-
-	private IPath[] findBestMatches(ComponentResource[] theComponentResources) {
-		List result = new ArrayList();
-		int currentMatchLength = 0;
-		int bestMatchLength = -1;
-		IPath estimatedPath = null;
-		IPath currentPath = null;
-		final IPath aRuntimePath = getRuntimePath();
-		for (int i = 0; i < theComponentResources.length; i++) {
-			currentPath = theComponentResources[i].getRuntimePath();
-			if (currentPath.isPrefixOf(aRuntimePath)) {
-				if (currentPath.segmentCount() == aRuntimePath.segmentCount()) {
-					result.add(theComponentResources[i].getSourcePath());
-					continue;
-				}
-				currentMatchLength = currentPath.matchingFirstSegments(aRuntimePath);
-				if (currentMatchLength == currentPath.segmentCount() && currentMatchLength > bestMatchLength) {
-					bestMatchLength = currentMatchLength;
-					IPath sourcePath = theComponentResources[i].getSourcePath();
-					IPath subpath = aRuntimePath.removeFirstSegments(currentMatchLength);
-					estimatedPath = sourcePath.append(subpath);
-				}
-			}
-		}
-		if (result.size() > 0)
-			return (IPath[]) result.toArray(new IPath[result.size()]);
-		if (estimatedPath == null)
-			return new IPath[]{};
-		return new IPath[]{estimatedPath};
-	}
-
-	public String getName() {
-		if (getRuntimePath().segmentCount() > 0)
-			return getRuntimePath().lastSegment();
-		return getRuntimePath().toString();
-	}
-
-	public IVirtualComponent getComponent() {
-		if (component == null)
-			component = ComponentCore.createComponent(getProject());
-		return component;
-	}
-
-	// returns null if the folder is already the root folder
-	public IVirtualContainer getParent() {
-		if (getRuntimePath().segmentCount() >= 1)
-			return ComponentCore.createFolder(getProject(), getRuntimePath().removeLastSegments(1));
-		return null;
-	}
-
-	public IProject getProject() {
-		return componentProject;
-	}
-
-	public boolean isAccessible() {
-		throw new UnsupportedOperationException("Method not supported"); //$NON-NLS-1$
-		// return false;
-	}
-
-	public Object getAdapter(Class adapter) {
-		throw new UnsupportedOperationException("Method not supported"); //$NON-NLS-1$
-		// return null;
-	}
-
-	public boolean contains(ISchedulingRule rule) {
-		throw new UnsupportedOperationException("Method not supported"); //$NON-NLS-1$
-		// return false;
-	}
-
-	public boolean isConflicting(ISchedulingRule rule) {
-		throw new UnsupportedOperationException("Method not supported"); //$NON-NLS-1$
-		// return false;
-	}
-
-	public String toString() {
-		if (toString == null)
-			toString = "[" + ModuleURIUtil.getHandleString(getComponent()) + ":" + getRuntimePath() + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		return toString;
-	}
-
-	public int hashCode() {
-		if (hashCode == 0)
-			hashCode = toString().hashCode();
-		return hashCode;
-	}
-
-	public boolean equals(Object anOther) {
-		return hashCode() == ((anOther != null && anOther instanceof VirtualResource) ? anOther.hashCode() : 0);
-	}
-
-	public void setResourceType(String aResourceType) {
-		resourceType = aResourceType;
-		WorkbenchComponent aComponent = getReadOnlyComponent();
-		ComponentResource[] resources = aComponent.findResourcesByRuntimePath(getRuntimePath());
-		for (int i = 0; i < resources.length; i++) {
-			resources[i].setResourceType(aResourceType);
-		}
-
-	}
-
-	// TODO Fetch the resource type from the model.
-	public String getResourceType() {
-		if (null == resourceType) {
-			WorkbenchComponent aComponent = getReadOnlyComponent();
-			ComponentResource[] resources = aComponent.findResourcesByRuntimePath(getRuntimePath());
-			for (int i = 0; i < resources.length; i++) {
-				resourceType = resources[i].getResourceType();
-				return resourceType;
-			}
-
-		}
-		resourceType = ""; //$NON-NLS-1$
-		return resourceType;
-	}
-
-
-	protected void createResource(IContainer resource, int updateFlags, IProgressMonitor monitor) throws CoreException {
-
-		if (resource.exists())
-			return;
-		if (!resource.getParent().exists())
-			createResource(resource.getParent(), updateFlags, monitor);
-		if (!resource.exists() && resource.getType() == IResource.FOLDER) {
-			((IFolder) resource).create(updateFlags, true, monitor);
-		}
-	}
-
-	protected boolean isPotentalMatch(IPath aRuntimePath) {
-		return aRuntimePath.isPrefixOf(getRuntimePath());
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.componentcore.resources.IVirtualResource#removeLink(org.eclipse.core.runtime.IPath,
-	 *      int, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void removeLink(IPath aProjectRelativeLocation, int updateFlags, IProgressMonitor monitor) throws CoreException {
-		StructureEdit moduleCore = null;
-		try {
-			moduleCore = StructureEdit.getStructureEditForWrite(getProject());
-			WorkbenchComponent component = moduleCore.getComponent();
-			if (component != null) {
-				ResourceTreeRoot root = ResourceTreeRoot.getDeployResourceTreeRoot(component);
-				ComponentResource[] resources = root.findModuleResources(getRuntimePath(), ResourceTreeNode.CREATE_NONE);
-				if (resources.length > 0) {
-					for (int resourceIndx = 0; resourceIndx < resources.length; resourceIndx++) {
-						if (aProjectRelativeLocation.makeAbsolute().equals(resources[resourceIndx].getSourcePath())) {
-							component.getResources().remove(resources[resourceIndx]);
-						}
-					}
-				}
-			}
-		}
-		finally {
-			if (moduleCore != null) {
-				if (component != null)
-					moduleCore.saveIfNecessary(monitor);
-				moduleCore.dispose();
-			}
-		}
-	}
-
-	protected final WorkbenchComponent getReadOnlyComponent() {
-		if (!mapping.hasChanged(getProject()) && mapping.hasCacheData(getProject()))
-			return (WorkbenchComponent) mapping.getData(getProject());
-
-		StructureEdit moduleCore = null;
-		WorkbenchComponent component = null;
-		try {
-			moduleCore = StructureEdit.getStructureEditForRead(getProject());
-			if (moduleCore != null) {
-				component = moduleCore.getComponent();
-				mapping.mark(getProject(), component);
-			}
-		}
-		finally {
-			if (moduleCore != null) {
-				moduleCore.dispose();
-			}
-		}
-		return component;
-
-
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ArtifactEditAdapterFactory.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ArtifactEditAdapterFactory.java
deleted file mode 100644
index 14d94f8..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ArtifactEditAdapterFactory.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.wst.common.componentcore.ArtifactEdit;
-import org.eclipse.wst.common.componentcore.ModuleCoreNature;
-import org.eclipse.wst.common.componentcore.internal.ArtifactEditModel;
-import org.eclipse.wst.common.componentcore.internal.impl.ArtifactEditModelFactory;
-import org.eclipse.wst.common.componentcore.internal.impl.ModuleURIUtil;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.internal.emfworkbench.edit.EditModelRegistry;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-
-/**
- * <p>
- * The following class is not intended to be used by clients.
- * </p>
- * <p>
- * Adapts {@see ArtifactEditModel} to an {@see ArtifactEdit) 
- * instance facade, if possible. The following class is 
- * registered with the Platform Adapter Manager in 
- * {@see org.eclipse.wst.common.componentcore.internal.ModulecorePlugin#start(BundleContext)}
- * </p>
- * @see org.eclipse.wst.common.componentcore.internal.ModulecorePlugin
- */
-public class ArtifactEditAdapterFactory implements IAdapterFactory {
-
-	private static final Class ARTIFACT_EDIT_MODEL_CLASS = ArtifactEditModel.class;
-	private static final Class ARTIFACT_EDIT_CLASS = ArtifactEdit.class;
-	
-	/**
-	 * <p>
-	 * Returns an instance facade for the given anAdaptableObject, if possible.
-	 * </p> 
-	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
-	 */
-	public Object getAdapter(Object anAdaptableObject, Class anAdapterType) {
-		if (anAdapterType == ArtifactEditModel.ADAPTER_TYPE) {
-			if (anAdaptableObject instanceof ArtifactEdit) {
-				ArtifactEdit edit = (ArtifactEdit)anAdaptableObject;
-				IProject aProject = edit.getProject();
-				URI componentURI = ModuleURIUtil.fullyQualifyURI(aProject);
-				ModuleCoreNature nature = ModuleCoreNature.getModuleCoreNature(edit.getComponent().getProject());
-				Map params = new HashMap();
-				params.put(ArtifactEditModelFactory.PARAM_MODULE_URI, componentURI);
-				try {
-					String[] editModelIDs = EditModelRegistry.getInstance().getRegisteredEditModelIDs();
-					for (int i=0; i<editModelIDs.length; i++) {
-						try {
-							EditModel editModel = nature.getExistingEditModel(editModelIDs[i],params,edit.isReadOnly());
-							if (editModel !=null)
-								return editModel;
-						} catch (Exception e) {
-							continue;
-						}
-					}
-					
-				} catch (Exception e){
-					//Return null
-				}
-				return null;
-			}
-		}
-		if (anAdapterType == ArtifactEdit.ADAPTER_TYPE) {
-			if (anAdaptableObject instanceof ArtifactEditModel)
-				return new ArtifactEdit((ArtifactEditModel) anAdaptableObject);
-			if (anAdaptableObject instanceof IVirtualComponent) {
-				ArtifactEditRegistryReader reader = ArtifactEditRegistryReader.instance();
-	    		IArtifactEditFactory factory = reader.getArtifactEdit(((IVirtualComponent)anAdaptableObject).getProject());
-	    		if (factory != null)
-	    			return factory.createArtifactEditForRead((IVirtualComponent)anAdaptableObject);
-			}
-		}
-		return null;
-	}
-
-	/**  
-	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
-	 */
-	public Class[] getAdapterList() {
-		return new Class[]{ARTIFACT_EDIT_MODEL_CLASS,ARTIFACT_EDIT_CLASS};
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ArtifactEditRegistryReader.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ArtifactEditRegistryReader.java
deleted file mode 100644
index 1eb05c3..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ArtifactEditRegistryReader.java
+++ /dev/null
@@ -1,184 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Mar 29, 2004
- *
- * To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.SafeRunner;
-import org.eclipse.jem.util.RegistryReader;
-import org.eclipse.wst.common.componentcore.internal.ModulecorePlugin;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * @author cbridgha
- * 
- * To change the template for this generated type comment go to Window - Preferences - Java - Code
- * Generation - Code and Comments
- */
-public class ArtifactEditRegistryReader extends RegistryReader {
-
-	static final String ARTIFACT_EDIT_EXTENSION_POINT = "artifactedit"; //$NON-NLS-1$
-	static final String ARTIFACTEDIT = "artifactedit"; //$NON-NLS-1$
-	static final String TYPE = "typeID"; //$NON-NLS-1$
-	static final String ARTIFACTEDITCLASS = "class"; //$NON-NLS-1$
-	
-	private static final ArtifactEditRegistryReader instance = new ArtifactEditRegistryReader();
-	
-	private final Map/*<String, ArtifactEditDescriptor>*/ descriptors = new HashMap();
-	
-	private final Map/*<ArtifactEditDescriptor, IArtifactEditFactory>*/ instances = new HashMap();
-	
-	/**
-	 * @return Returns the instance.
-	 */
-	public static ArtifactEditRegistryReader instance() {
-		/* already initialized and registry read by the time the class initializes */
-		return instance;
-	}
-	
-	public ArtifactEditRegistryReader() {
-		super(ModulecorePlugin.PLUGIN_ID, ARTIFACT_EDIT_EXTENSION_POINT);
-		SafeRunner.run(new ISafeRunnable() {
-
-			public void handleException(Throwable exception) { 
-				ModulecorePlugin.logError(0, exception.getMessage(), exception);
-			}
-
-			public void run() throws Exception {
-				readRegistry();				
-			}
-			
-		});
-	}
-
-	/**
-	 * @see org.eclipse.wst.common.frameworks.internal.RegistryReader#readElement(org.eclipse.core.runtime.IConfigurationElement)
-	 */
-	public boolean readElement(IConfigurationElement element) {
-		if (ARTIFACTEDIT.equals(element.getName())) {
-			
-			/* Because the only instance of this type is created from a static singleton 
-			 * field, and the registry is initialized in the constructor of this type, 
-			 * other threads cannot compete with readElement() for access to <i>descriptors</i> 
-			 */
-			String type = element.getAttribute(TYPE);
-			if(type != null)
-				descriptors.put(element.getAttribute(TYPE), new ArtifactEditDescriptor(element));
-			else 
-				ModulecorePlugin.logError(0, "No type attribute is specified for " + //$NON-NLS-1$
-										ModulecorePlugin.PLUGIN_ID + "." + ARTIFACT_EDIT_EXTENSION_POINT +  //$NON-NLS-1$ 
-										" extension in "  + element.getDeclaringExtension().getNamespaceIdentifier(), null);  //$NON-NLS-1$
-			return true;
-		}
-		return false;
-	}
-	
-	public synchronized IArtifactEditFactory getArtifactEdit(String typeID) {
-		
-		ArtifactEditDescriptor descriptor = (ArtifactEditDescriptor) descriptors.get(typeID);
-		IArtifactEditFactory factory = null;
-		
-		if(descriptor != null) {  
-			
-			factory = (IArtifactEditFactory) instances.get(descriptor);
-			
-			if(factory == null) {
-				
-				if((factory = descriptor.createFactory()) != null) {
-					instances.put(descriptor, factory);
-				} else {
-					descriptors.remove(descriptor);
-				} 
-			} 
-		}
-		return factory;			
-	} 
-	
-	// TODO Don't like this because it's going to cycle every project facet for each project
-	public IArtifactEditFactory getArtifactEdit(IProject project) {
-		try {
-			IFacetedProject facetedProject = ProjectFacetsManager.create(project);
-			Iterator keys = descriptors.keySet().iterator();
-			while (keys.hasNext()) {
-				String typeID = (String) keys.next();
-				try {
-					IProjectFacet projectFacet = ProjectFacetsManager.getProjectFacet(typeID);
-					if (projectFacet != null && facetedProject.hasProjectFacet(projectFacet))
-						return getArtifactEdit(typeID);
-				} catch (Exception e) {
-					continue;
-				}
-			}
-		} catch (Exception e) {
-			//Just return null
-		}
-		return null;
-	} 
-	
-	public class ArtifactEditDescriptor {
-		
-		private final IConfigurationElement element;
-		private final String type;
-
-		public ArtifactEditDescriptor(IConfigurationElement configElement) {
-			element = configElement;
-			type = element.getAttribute(TYPE);
-		}
-		
-		/**
-		 * Create and return an {@link IArtifactEditFactory} for the given descriptor or 
-		 * <b>null</b> if there are problems instantiating the extension.
-		 * @return An {@link IArtifactEditFactory} for the given descriptor or 
-		 * <b>null</b> if there are problems instantiating the extension.
-		 */
-		public IArtifactEditFactory createFactory() {
-			
-			final IArtifactEditFactory[] factory = new IArtifactEditFactory[1];
-			
-			SafeRunner.run(new ISafeRunnable() {
-
-				public void handleException(Throwable exception) {
-					ModulecorePlugin.logError(0, exception.getMessage(), exception); 
-				}
-
-				public void run() throws Exception {
-					factory[0] = (IArtifactEditFactory) element.createExecutableExtension(ARTIFACTEDITCLASS); 
-				}
-				
-			});
-			
-			return factory[0]; 
-		}
-
-		/**
-		 * 
-		 * @return The type id of this ArtifactEdit definition 
-		 */
-		public String getType() {
-			return type;
-		} 
-		
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentImplManager.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentImplManager.java
deleted file mode 100644
index 60a9feb..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentImplManager.java
+++ /dev/null
@@ -1,277 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.SafeRunner;
-import org.eclipse.jem.util.RegistryReader;
-import org.eclipse.wst.common.componentcore.ModuleCoreNature;
-import org.eclipse.wst.common.componentcore.internal.ModulecorePlugin;
-import org.eclipse.wst.common.componentcore.internal.resources.ResourceTimestampMappings;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualArchiveComponent;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualComponent;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualFolder;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-public class ComponentImplManager  {
-
-	private static final String NO_FACETS = "NONE";//$NON-NLS-1$
-	
-	private static final String COMPONENT_IMPL_EXTENSION_POINT = "componentimpl"; //$NON-NLS-1$
-	private static final String TAG_COMPONENT_IMPL = "componentimpl"; //$NON-NLS-1$
-	private static final String ATT_TYPE = "typeID"; //$NON-NLS-1$
-	private static final String ATT_CLASS = "class"; //$NON-NLS-1$
-
-	private static final ComponentImplManager instance = new ComponentImplManager();
-//	private static final Object LOAD_FAILED = new Object();
-
-	private final Map/* <String, ComponentImplDescriptor> */ descriptors = new Hashtable();
-
-	private final Map/* <ComponentImplDescriptor, IComponentImplFactory> */ instances = new Hashtable();
-	private final ResourceTimestampMappings factoryMap = new ResourceTimestampMappings();
-
-	/**
-	 * @return Returns the instance.
-	 */
-	public static ComponentImplManager instance() {
-		/* already initialized and registry read by the time the class initializes */
-		return instance;
-	}
-
-	public ComponentImplManager() {
-		SafeRunner.run(new ISafeRunnable() {
-
-			public void handleException(Throwable exception) {
-				ModulecorePlugin.logError(0, exception.getMessage(), exception);
-			}
-
-			public void run() throws Exception {
-				new ComponentImplRegistryReader().readRegistry();
-			}
-
-		});
-	}
-
-
-	private IComponentImplFactory getComponentImplFactory(String typeID) {
-
-		ComponentImplDescriptor descriptor = (ComponentImplDescriptor) descriptors.get(typeID);
-		IComponentImplFactory factory = null;
-
-		if (descriptor != null) {
-
-			factory = (IComponentImplFactory) instances.get(descriptor);
-
-			if (factory == null) {
-
-				if ((factory = descriptor.createFactory()) != null) {
-					instances.put(descriptor, factory);
-				} else {
-					descriptors.remove(descriptor);
-				}
-			}
-		}
-		return factory;
-	}
-	 
-	private IComponentImplFactory findFactoryForProject(IProject project){
-		try {
-			IComponentImplFactory factory = null;		
-			
-			if( !factoryMap.hasChanged(project) ) {				
-
-				if( factoryMap.hasCacheError(project))
-					return null;
-				
-				if( factoryMap.hasCacheData(project)) 
-					return (IComponentImplFactory) factoryMap.getData(project);
-			} 
-			
-			IFacetedProject facetedProject = ProjectFacetsManager.create(project);
-			if (facetedProject == null){
-				factory = getComponentImplFactory(NO_FACETS);
-				factoryMap.mark(project, factory);
-				return factory;
-			}
-			Iterator keys = descriptors.keySet().iterator();
-			while (keys.hasNext()) {
-				String typeID = (String) keys.next();
-				if(typeID.equals(NO_FACETS)){
-					continue;
-				}
-				try {
-					IProjectFacet projectFacet = ProjectFacetsManager.getProjectFacet(typeID);
-					if (projectFacet != null && facetedProject.hasProjectFacet(projectFacet)){
-						factory = getComponentImplFactory(typeID);
-						if(null != factory){
-							factoryMap.mark(project, factory);
-							return factory;
-						}
-					}
-				} catch (Exception e) {
-					continue;
-				}
-			}
-			
-		} catch (Exception e) {
-			ModulecorePlugin.logError(0, "Returning null factory for project: " + project, e); //$NON-NLS-1$
-			factoryMap.markError(project);
-		}
-		return null;
-	}
-	 
-	
-	
-	public IVirtualFolder createFolder(IProject aProject, IPath aRuntimePath){
-		try {
-			IComponentImplFactory factory = findFactoryForProject(aProject);
-			if(null != factory){
-				return factory.createFolder(aProject, aRuntimePath);
-			}
-		} catch (Exception e) {
-			// Just return a default folder
-		}
-		return new VirtualFolder(aProject, aRuntimePath);
-	}
-
-	public IVirtualComponent createComponent(IProject project) {
-		try {
-			IComponentImplFactory factory = findFactoryForProject(project);
-			if(null != factory){
-				return factory.createComponent(project);
-			}
-		} catch (Exception e) {
-			// Just return a default component
-		}
-		if (!ModuleCoreNature.isFlexibleProject(project)){
-			return null;
-		}
-		return new VirtualComponent(project, new Path("/")); //$NON-NLS-1$
-	}
-
-	public IVirtualComponent createComponent(IProject project, boolean checkSettings) {
-		if  (checkSettings)
-			return createComponent(project);
-		try {
-			IComponentImplFactory factory = findFactoryForProject(project);
-			if(null != factory){
-				return factory.createComponent(project);
-			}
-		} catch (Exception e) {
-			// Just return a default component
-		}
-		if (ModuleCoreNature.getModuleCoreNature(project) == null){
-			return null;
-		}
-		return new VirtualComponent(project, new Path("/")); //$NON-NLS-1$
-	}
-
-	public IVirtualComponent createArchiveComponent(IProject aProject, String aComponentName) {
-		try {
-			IComponentImplFactory factory = findFactoryForProject(aProject);
-			if(null != factory){
-				return factory.createArchiveComponent(aProject, aComponentName, new Path("/")); //$NON-NLS-1$
-			}
-		} catch (Exception e) {
-			// Just return a default archive component
-		}
-		return new VirtualArchiveComponent(aProject, aComponentName, new Path("/")); //$NON-NLS-1$
-	}
-	
-	private class ComponentImplDescriptor {
-
-		private final IConfigurationElement element;
-		private final String type;
-
-		public ComponentImplDescriptor(IConfigurationElement configElement) {
-			element = configElement;
-			type = element.getAttribute(ATT_TYPE);
-		}
-
-		/**
-		 * Create and return an {@link IArtifactEditFactory} for the given descriptor or <b>null</b>
-		 * if there are problems instantiating the extension.
-		 * 
-		 * @return An {@link IArtifactEditFactory} for the given descriptor or <b>null</b> if there
-		 *         are problems instantiating the extension.
-		 */
-		public IComponentImplFactory createFactory() {
-
-			final IComponentImplFactory[] factory = new IComponentImplFactory[1];
-
-			SafeRunner.run(new ISafeRunnable() {
-
-				public void handleException(Throwable exception) {
-					ModulecorePlugin.logError(0, exception.getMessage(), exception);
-				}
-
-				public void run() throws Exception {
-					factory[0] = (IComponentImplFactory) element.createExecutableExtension(ATT_CLASS);
-				}
-
-			});
-
-			return factory[0];
-		}
-
-		/**
-		 * 
-		 * @return The type id of this ArtifactEdit definition
-		 */
-		public String getType() {
-			return type;
-		}
-
-	}
-	
-	private class ComponentImplRegistryReader extends RegistryReader {
-
-		public ComponentImplRegistryReader() {
-			super(ModulecorePlugin.PLUGIN_ID, COMPONENT_IMPL_EXTENSION_POINT);
-		} 
-
-		/**
-		 * @see org.eclipse.wst.common.frameworks.internal.RegistryReader#readElement(org.eclipse.core.runtime.IConfigurationElement)
-		 */
-		public boolean readElement(IConfigurationElement element) {
-			if (TAG_COMPONENT_IMPL.equals(element.getName())) {
-
-				/*
-				 * Because the only instance of this type is created from a static singleton field, and
-				 * the registry is initialized in the constructor of this type, other threads cannot
-				 * compete with readElement() for access to <i>descriptors</i>
-				 */
-				String type = element.getAttribute(ATT_TYPE);
-				if (type != null)
-					descriptors.put(element.getAttribute(ATT_TYPE), new ComponentImplDescriptor(element));
-				else
-					ModulecorePlugin.logError(0, "No type attribute is specified for " + //$NON-NLS-1$
-								ModulecorePlugin.PLUGIN_ID + "." + COMPONENT_IMPL_EXTENSION_POINT + //$NON-NLS-1$ 
-								" extension in " + element.getDeclaringExtension().getNamespaceIdentifier(), null); //$NON-NLS-1$
-				return true;
-			}
-			return false;
-		}
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentResolver.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentResolver.java
deleted file mode 100644
index 94f8334..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentResolver.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import java.net.MalformedURLException;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.net.URL;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.internal.ModulecorePlugin;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-import org.eclipse.wst.common.uriresolver.internal.provisional.URIResolverExtension;
-import org.osgi.framework.Bundle;
-
-public class ComponentResolver implements URIResolverExtension {
-	private static boolean _DEBUG = "true".equals(Platform.getDebugOption("org.eclipse.wst.common.modulecore/ComponentResolver")); //$NON-NLS-1$ //$NON-NLS-2$ 
-	private static final String FILE_PROTOCOL = "file:///"; //$NON-NLS-1$
-	private static final String FILE_PROTOCOL2 = "file://"; //$NON-NLS-1$
-	private static final String ROOT_PATH_STRING = Path.ROOT.toString(); //$NON-NLS-1$
-	private static final String HTTP_PROTOCOL = "http:"; //$NON-NLS-1$
-
-	/**
-	 * Various resolvers disagree on how many preceding slashes should
-	 * actually be used. On Win32, 2 slashes results in a URL object where the
-	 * volume is stripped out of the file path as the host name, but on Unix 2
-	 * is the correct number. On Win32, java.io.File.toURL adds only 1 slash,
-	 * and on Unix it adds 2.
-	 * 
-	 * @param uri
-	 * @return The IFile for this file location
-	 */
-	private IFile recalculateFile(String uri) {
-		IFile file = null;
-		String location = null;
-
-		long time0 = -1;
-		if (_DEBUG)
-			time0 = System.currentTimeMillis();
-		if (uri.startsWith(HTTP_PROTOCOL)) {
-			IFile files[] = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocationURI(URI.create(uri));
-			for (int i = 0; i < files.length && file == null; i++) {
-				if (files[i].isAccessible()) {
-					file = files[i];
-				}
-			}
-			if (_DEBUG) {
-				System.out.println("\"" + uri + "\" findFilesForLocationURI:" + (System.currentTimeMillis() - time0));
-				time0 = System.currentTimeMillis();
-			}
-		}
-		else {
-			if (uri.startsWith(FILE_PROTOCOL)) {
-				location = uri.substring(FILE_PROTOCOL.length());
-			}
-			else if (uri.startsWith(FILE_PROTOCOL2)) {
-				location = uri.substring(FILE_PROTOCOL2.length());
-			}
-			else {
-				location = uri;
-			}
-			IPath path = new Path(location);
-			IFile[] files = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocation(path);
-			for (int i = 0; i < files.length && file == null; i++) {
-				if (files[i].isAccessible()) {
-					file = files[i];
-				}
-			}
-		}
-		if (_DEBUG)
-			System.out.println("\"" + location + "\" findFilesForLocation:" + (System.currentTimeMillis() - time0));
-		return file;
-	}
-
-	public String resolve(IFile file, String baseLocation, String publicId, String systemId) {
-		if (_DEBUG) {
-			System.out.print("ComponentResolver: resolve \"[{" + publicId + "}{" + systemId + "}]\" from \"" + baseLocation + "\""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-		}
-		// argument sanity checks
-		/*
-		 * Check for a system reference; without one, there's no point in
-		 * continuing (we can't resolve just a public identifier).
-		 */
-		if (systemId == null || systemId.length() == 0) {
-			if (_DEBUG) {
-				System.out.println(" (no system reference)"); //$NON-NLS-1$
-			}
-			return null;
-		}
-
-		/* Recompute the IFile, if needed, from the base location. */
-		if (file == null) {
-			if (baseLocation == null || baseLocation.length() == 0) {
-				/*
-				 * We can't proceed if we lack both an IFile and a system
-				 * reference
-				 */
-				if (_DEBUG) {
-					System.out.println(" (no base location or file given)"); //$NON-NLS-1$
-				}
-				return null;
-			}
-			file = recalculateFile(baseLocation);
-		}
-
-		/*
-		 * If a workspace IFile is (still) not the base point of reference,
-		 * don't continue.
-		 */
-		if (file == null) {
-			if (_DEBUG) {
-				System.out.println(" (not a workspace file)"); //$NON-NLS-1$
-			}
-			return null;
-		}
-
-		/* Check for an absolute URL as the system reference. */
-		try {
-			URL testURL = new URL(systemId);
-			if (testURL != null) {
-				if (_DEBUG) {
-					System.out.println(" (reference is already a URL)"); //$NON-NLS-1$
-				}
-				return null;
-			}
-		}
-		catch (MalformedURLException e) {
-			// Continue resolving
-		}
-
-		/* Check for a URI without a scheme, but with a host */
-		try
-		{
-			URI uri = new URI(systemId);
-			if ((uri.getScheme() == null) && (uri.getHost() != null))
-			{
-				return null;
-			}
-		}
-		catch (URISyntaxException use)
-		{
-			// do nothing- we need to check to see if this is a local file
-		}
-
-		/* Check for a system file name as the system reference. */
-		IPath systemPath = new Path(systemId);
-		if (systemPath.toFile().exists()) {
-			if (_DEBUG) {
-				System.out.println(" (reference is a system file)"); //$NON-NLS-1$
-			}
-			return null;
-		}
-
-		boolean prependFilePrefix = baseLocation.startsWith(FILE_PROTOCOL) && baseLocation.length() > 7;
-		boolean prependFilePrefix2 = baseLocation.startsWith(FILE_PROTOCOL2) && baseLocation.length() > 8;
-
-		String resolvedPath = null;
-
-		IVirtualResource[] virtualResources = null;
-		try {
-			virtualResources = ComponentCore.createResources(file);
-		}
-		catch (Exception e) {
-			Status statusObj = new Status(IStatus.ERROR, ModulecorePlugin.PLUGIN_ID, IStatus.ERROR, "Exception calling ComponentCore.createResources()", e);
-			Bundle bundle = Platform.getBundle(ModulecorePlugin.PLUGIN_ID);
-			if (bundle != null) {
-				Platform.getLog(bundle).log(statusObj);
-			}
-		}
-
-		// Only return results for Flexible projects
-		if (virtualResources != null) {
-			for (int i = 0; i < virtualResources.length && resolvedPath == null; i++) {
-				IPath resolvedRuntimePath = null;
-				if (systemId.startsWith(ROOT_PATH_STRING)) {
-					resolvedRuntimePath = new Path(systemId);
-				}
-				else {
-					resolvedRuntimePath = new Path(virtualResources[i].getRuntimePath().removeLastSegments(1).append(systemId).toString());
-				}
-				IVirtualFile virtualFile = ComponentCore.createFile(file.getProject(), resolvedRuntimePath);
-				IFile resolvedFile = null;
-				if (virtualFile.getWorkspaceRelativePath().segmentCount() > 1) {
-					resolvedFile = virtualFile.getUnderlyingFile();
-				}
-				if (resolvedFile != null && resolvedFile.getLocation() != null) {
-					if (prependFilePrefix) {
-						resolvedPath = FILE_PROTOCOL + resolvedFile.getLocation().toString();
-					}
-					else if (prependFilePrefix2) {
-						resolvedPath = FILE_PROTOCOL2 + resolvedFile.getLocation().toString();
-					}
-					else {
-						resolvedPath = resolvedFile.getLocation().toString();
-					}
-				}
-			}
-		}
-		else {
-			if (_DEBUG) {
-				System.out.println(" (not in flexible project)"); //$NON-NLS-1$
-			}
-		}
-		if (_DEBUG) {
-			System.out.println(" -> \"" + resolvedPath + "\""); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		return resolvedPath;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentUtilities.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentUtilities.java
deleted file mode 100644
index 0ddeaf9..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentUtilities.java
+++ /dev/null
@@ -1,362 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourceAttributes;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-import org.eclipse.wst.common.componentcore.ArtifactEdit;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.ModuleCoreNature;
-import org.eclipse.wst.common.componentcore.datamodel.properties.ICreateReferenceComponentsDataModelProperties;
-import org.eclipse.wst.common.componentcore.datamodel.properties.IServerContextRootDataModelProperties;
-import org.eclipse.wst.common.componentcore.internal.Property;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.operation.CreateReferenceComponentsDataModelProvider;
-import org.eclipse.wst.common.componentcore.internal.operation.CreateReferenceComponentsOp;
-import org.eclipse.wst.common.componentcore.internal.operation.RemoveReferenceComponentOperation;
-import org.eclipse.wst.common.componentcore.internal.operation.RemoveReferenceComponentsDataModelProvider;
-import org.eclipse.wst.common.componentcore.internal.resources.ResourceTimestampMappings;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper;
-
-public class ComponentUtilities {
-	
-	private static final ResourceTimestampMappings ContextRootMapping = new ResourceTimestampMappings();
-
-	/**
-	 * Ensure the container is not read-only.
-	 * <p>
-	 * For Linux, a Resource cannot be created in a ReadOnly folder. This is only necessary for new
-	 * files.
-	 * 
-	 * @param resource
-	 *            workspace resource to make read/write
-	 * @plannedfor 1.0.0
-	 */
-	public static void ensureContainerNotReadOnly(IResource resource) {
-		if (resource != null && !resource.exists()) { // it must be new
-			IContainer container = resource.getParent();
-			if (container != null) {
-				ResourceAttributes attr = container.getResourceAttributes();
-				if (!attr.isReadOnly())
-					container = container.getParent();
-				attr.setReadOnly(false);
-			}
-		}
-	}
-
-	public static IFolder createFolderInComponent(IVirtualComponent component, String folderName) throws CoreException {
-		if (folderName != null) {
-			IVirtualFolder rootfolder = component.getRootFolder();
-			IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(rootfolder.getProject().getName()).append(folderName));
-			if (!folder.exists()) {
-				ProjectUtilities.ensureContainerNotReadOnly(folder);
-				folder.create(true, true, null);
-			}
-			return folder;
-		}
-		return null;
-	}
-
-
-
-	public static ArtifactEdit getArtifactEditForRead(IVirtualComponent comp) {
-		if (comp != null) {
-			ArtifactEditRegistryReader reader = ArtifactEditRegistryReader.instance();
-			IArtifactEditFactory factory = reader.getArtifactEdit(comp.getProject());
-			if (factory != null)
-				return factory.createArtifactEditForRead(comp);
-		}
-		return null;
-	}
-
-	public static ArtifactEdit getArtifactEditForRead(IVirtualComponent comp, String type) {
-		if (comp != null) {
-			ArtifactEditRegistryReader reader = ArtifactEditRegistryReader.instance();
-			IArtifactEditFactory factory = reader.getArtifactEdit(type);
-			if (factory != null)
-				return factory.createArtifactEditForRead(comp);
-		}
-		return null;
-	}
-
-
-	public static IFile findFile(IVirtualComponent comp, IPath aPath) throws CoreException {
-		if (comp == null || aPath == null)
-			return null;
-		IVirtualFolder root = comp.getRootFolder();
-		IVirtualResource file = root.findMember(aPath);
-		if (file != null && file.getType() == IVirtualResource.FILE){
-			IResource resource = file.getUnderlyingResource();
-			if(resource.getType() == IResource.FILE){
-				return (IFile) resource;
-			}
-		}
-		return null;
-	}
-
-	public static IVirtualComponent findComponent(IResource res) {
-
-		return (IVirtualComponent)res.getAdapter(IVirtualComponent.class);
-	}
-	
-	/**
-	 * **********************Please read java doc before using this api*******************
-	 * This is a very expensive api from a performance point as it does a structure edit
-	 * access and release for each component in the workspace. Use this api very sparingly
-	 * and if used cached the information returned by this api for further processing
-	 * @return - A an array of all virtual components in the workspace
-	 * ***********************************************************************************
-	 */
-
-	public static IVirtualComponent[] getAllWorkbenchComponents() {
-		List components = new ArrayList();
-		List projects = Arrays.asList(ResourcesPlugin.getWorkspace().getRoot().getProjects());
-		for (int i = 0; i < projects.size(); i++) {
-			if( ModuleCoreNature.isFlexibleProject((IProject)projects.get(i))){
-				IVirtualComponent wbComp = ComponentCore.createComponent((IProject)projects.get(i));
-				components.add(wbComp);
-			}
-		}
-		IVirtualComponent[] temp = (IVirtualComponent[]) components.toArray(new IVirtualComponent[components.size()]);
-		return temp;
-	}
-	
-	/**
-	 * **********************Please read java doc before using this api*******************
-	 * This is a very expensive api from a performance point as it does a structure edit
-	 * access and release for each component in the workspace. Use this api very sparingly
-	 * and if used cached the information returned by this api for further processing.
-	 * 
-	 * @return - A virtual component in the workspace
-	 * ***********************************************************************************
-	 */
-	public static IVirtualComponent getComponent(String componentName) {
-		IVirtualComponent[] allComponents = getAllWorkbenchComponents();
-		for (int i = 0; i < allComponents.length; i++) {
-			if (allComponents[i].getName().equals(componentName))
-				return allComponents[i];
-		}
-		return null;
-	}
-
-
-
-	public static ArtifactEdit getArtifactEditForWrite(IVirtualComponent comp) {
-		if (comp != null) {
-			ArtifactEditRegistryReader reader = ArtifactEditRegistryReader.instance();
-			IArtifactEditFactory factory = reader.getArtifactEdit(comp.getProject());
-			if (factory != null)
-				return factory.createArtifactEditForWrite(comp);
-		}
-		return null;
-	}
-
-	public static IVirtualComponent findComponent(EObject anObject) {
-		Resource res = anObject.eResource();
-		return findComponent(res);
-	}
-
-	public static IVirtualComponent findComponent(Resource aResource) {
-		IFile file = WorkbenchResourceHelper.getFile(aResource);
-		if (file == null)
-			return null;
-		return (IVirtualComponent)file.getAdapter(IVirtualComponent.class);
-	}
-
-//	public static JavaProjectMigrationOperation createFlexJavaProjectForProjectOperation(IProject project) {
-//		IDataModel model = DataModelFactory.createDataModel(new JavaProjectMigrationDataModelProvider());
-//		model.setProperty(IJavaProjectMigrationDataModelProperties.PROJECT_NAME, project.getName());
-//		return new JavaProjectMigrationOperation(model);
-//	}
-
-	public static CreateReferenceComponentsOp createReferenceComponentOperation(IVirtualComponent sourceComponent, List targetComponentProjects) {
-		IDataModel model = DataModelFactory.createDataModel(new CreateReferenceComponentsDataModelProvider());
-		model.setProperty(ICreateReferenceComponentsDataModelProperties.SOURCE_COMPONENT, sourceComponent);
-		List modHandlesList = (List) model.getProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST);
-		modHandlesList.addAll(targetComponentProjects);
-		model.setProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST, modHandlesList);
-		
-		return new CreateReferenceComponentsOp(model);
-	}
-	
-	public static CreateReferenceComponentsOp createWLPReferenceComponentOperation(IVirtualComponent sourceComponent, List targetComponentProjects) {
-		IDataModel model = DataModelFactory.createDataModel(new CreateReferenceComponentsDataModelProvider());
-		model.setProperty(ICreateReferenceComponentsDataModelProperties.SOURCE_COMPONENT, sourceComponent);
-		List modHandlesList = (List) model.getProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST);
-		modHandlesList.addAll(targetComponentProjects);
-		model.setProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST, modHandlesList);
-		model.setProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENTS_DEPLOY_PATH,"/WEB-INF/lib"); //$NON-NLS-1$
-		if(modHandlesList != null){
-			Map map = new HashMap();
-			for(int i=0; i<modHandlesList.size();i++){
-				IVirtualComponent comp = (IVirtualComponent)modHandlesList.get(i);
-				String uri = comp.getName().replace(' ', '_') + ".jar";
-				map.put(comp, uri);
-			}
-			if(map.size() > 0){
-				model.setProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENTS_TO_URI_MAP, map);
-			}
-		}
-		
-		return new CreateReferenceComponentsOp(model);
-	}
-
-	public static RemoveReferenceComponentOperation removeWLPReferenceComponentOperation(IVirtualComponent sourceComponent, List targetComponentProjects) {
-		IDataModel model = DataModelFactory.createDataModel(new RemoveReferenceComponentsDataModelProvider());
-		model.setProperty(ICreateReferenceComponentsDataModelProperties.SOURCE_COMPONENT, sourceComponent);
-		List modHandlesList = (List) model.getProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST);
-		modHandlesList.addAll(targetComponentProjects);
-		model.setProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST, modHandlesList);
-		
-		model.setProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENTS_DEPLOY_PATH,"/WEB-INF/lib"); //$NON-NLS-1$
-		
-		return new RemoveReferenceComponentOperation(model);
-
-	}
-	
-	public static RemoveReferenceComponentOperation removeReferenceComponentOperation(IVirtualComponent sourceComponent, List targetComponentProjects) {
-		IDataModel model = DataModelFactory.createDataModel(new RemoveReferenceComponentsDataModelProvider());
-		model.setProperty(ICreateReferenceComponentsDataModelProperties.SOURCE_COMPONENT, sourceComponent);
-		List modHandlesList = (List) model.getProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST);
-		modHandlesList.addAll(targetComponentProjects);
-		model.setProperty(ICreateReferenceComponentsDataModelProperties.TARGET_COMPONENT_LIST, modHandlesList);
-		return new RemoveReferenceComponentOperation(model);
-
-	}
-	
-	public static IVirtualComponent[] getComponents(IProject[] projects) {
-		List result = new ArrayList();
-		if (projects!=null) {
-			for (int i=0; i<projects.length; i++) {
-				if (projects[i] != null) {
-					IVirtualComponent comp = ComponentCore.createComponent(projects[i]);
-					if (comp != null && comp.exists())
-						result.add(comp);
-				}
-			}
-		}
-		return (IVirtualComponent[]) result.toArray(new IVirtualComponent[result.size()]);
-	}
-	
-	/**
-	 * This method will retrieve the context root for the associated workbench module which is used
-	 * by the server at runtime.  This method is not yet completed as the context root has to be
-	 * abstracted and added to the workbenchModule model.  This API will not change though.
-	 * Returns null for now.
-	 * 
-	 * @return String value of the context root for runtime of the associated module
-	 */
-	public static String getServerContextRoot(IProject project) {		
-		
-		if(!ContextRootMapping.hasChanged(project)) {
-			/*Simply return the cached data*/
-			String data = null;
-			if(!ContextRootMapping.hasCacheError(project) && ContextRootMapping.hasCacheData(project))
-				data = (String) ContextRootMapping.getData(project);
-			return data;
-		}
-		
-		StructureEdit moduleCore = null;
-		WorkbenchComponent wbComponent = null;
-		try {
-			moduleCore = StructureEdit.getStructureEditForRead(project);
-			if (moduleCore == null || moduleCore.getComponent() == null) {
-				ContextRootMapping.markError(project);
-				return null;
-			}
-			wbComponent = moduleCore.getComponent();
-		} finally {
-			if (moduleCore != null) {
-				moduleCore.dispose();
-			}
-		}
-		List existingProps = wbComponent.getProperties();
-		for (int i = 0; i < existingProps.size(); i++) {
-			Property prop = (Property) existingProps.get(i);
-			if(prop.getName().equals(IModuleConstants.CONTEXTROOT)){
-				ContextRootMapping.mark(project, prop.getValue());
-				return prop.getValue();
-			}
-		}		
-		ContextRootMapping.markError(project);
-		// If all else fails...
-		return null;
-	}
-	
-	/**
-	 * This method will set the context root on the associated workbench module with the given string
-	 * value passed in.  This context root is used by the server at runtime.  This method is not yet
-	 * completed as the context root still needs to be abstracted and added to the workbench module
-	 * model.  This API will not change though.
-	 * Does nothing as of now.
-	 * 
-	 * @param contextRoot string
-	 */
-	public static void setServerContextRoot(IProject project, String newContextRoot) {
-		
-		IDataModel model = DataModelFactory.createDataModel(IServerContextRootDataModelProperties.class);
-		model.setProperty(IServerContextRootDataModelProperties.PROJECT, project);
-		model.setStringProperty(IServerContextRootDataModelProperties.CONTEXT_ROOT,
-				newContextRoot);
-		
-		try {
-			model.getDefaultOperation().execute(new NullProgressMonitor(), null);
-		}
-		catch (ExecutionException e) {
-			org.eclipse.wst.common.componentcore.internal.ModulecorePlugin.logError(e);
-		}
-	}
-
-	/**
-	 * @deprecated use {@link #getDeployUriOfComponent(IVirtualReference, String)}
-	 * @param reference
-	 * @return
-	 */
-	public static String getDeployUriOfUtilComponent(IVirtualReference reference){
-		return ComponentUtilities.getDeployUriOfComponent(reference, ".jar"); //$NON-NLS-1$
-	}
-
-	public static String getDeployUriOfComponent(IVirtualReference reference, String extension) {
-		String archiveName = reference.getArchiveName();
-		String uri = null;
-		if( archiveName != null && !archiveName.equals("") ){ //$NON-NLS-1$
-			uri = reference.getRuntimePath() + "/" + reference.getArchiveName(); //$NON-NLS-1$
-		}else{
-			uri = reference.getRuntimePath() + "/" + reference.getReferencedComponent().getProject().getName() + extension; //$NON-NLS-1$
-		}
-		return uri;
-	}}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentcoreAdapterFactory.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentcoreAdapterFactory.java
deleted file mode 100644
index 3716298..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentcoreAdapterFactory.java
+++ /dev/null
@@ -1,208 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: ComponentcoreAdapterFactory.java,v 1.6 2005/10/18 22:27:18 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notifier;
-import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentType;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.ProjectComponents;
-import org.eclipse.wst.common.componentcore.internal.Property;
-import org.eclipse.wst.common.componentcore.internal.ReferencedComponent;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Adapter Factory</b> for the model.
- * It provides an adapter <code>createXXX</code> method for each class of the model.
- * <!-- end-user-doc -->
- * @see org.eclipse.wst.common.componentcore.internal.ComponentcorePackage
- * @generated
- */
-public class ComponentcoreAdapterFactory extends AdapterFactoryImpl {
-	/**
-	 * The cached model package.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected static ComponentcorePackage modelPackage;
-
-	/**
-	 * Creates an instance of the adapter factory.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ComponentcoreAdapterFactory() {
-		if (modelPackage == null) {
-			modelPackage = ComponentcorePackage.eINSTANCE;
-		}
-	}
-
-	/**
-	 * Returns whether this factory is applicable for the type of the object.
-	 * <!-- begin-user-doc -->
-	 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
-	 * <!-- end-user-doc -->
-	 * @return whether this factory is applicable for the type of the object.
-	 * @generated
-	 */
-	public boolean isFactoryForType(Object object) {
-		if (object == modelPackage) {
-			return true;
-		}
-		if (object instanceof EObject) {
-			return ((EObject)object).eClass().getEPackage() == modelPackage;
-		}
-		return false;
-	}
-
-	/**
-	 * The switch the delegates to the <code>createXXX</code> methods.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected ComponentcoreSwitch modelSwitch =
-		new ComponentcoreSwitch() {
-			public Object caseWorkbenchComponent(WorkbenchComponent object) {
-				return createWorkbenchComponentAdapter();
-			}
-			public Object caseComponentResource(ComponentResource object) {
-				return createComponentResourceAdapter();
-			}
-			public Object caseComponentType(ComponentType object) {
-				return createComponentTypeAdapter();
-			}
-			public Object caseProperty(Property object) {
-				return createPropertyAdapter();
-			}
-			public Object caseReferencedComponent(ReferencedComponent object) {
-				return createReferencedComponentAdapter();
-			}
-			public Object caseProjectComponents(ProjectComponents object) {
-				return createProjectComponentsAdapter();
-			}
-			public Object defaultCase(EObject object) {
-				return createEObjectAdapter();
-			}
-		};
-
-	/**
-	 * Creates an adapter for the <code>target</code>.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param target the object to adapt.
-	 * @return the adapter for the <code>target</code>.
-	 * @generated
-	 */
-	public Adapter createAdapter(Notifier target) {
-		return (Adapter)modelSwitch.doSwitch((EObject)target);
-	}
-
-
-	/**
-	 * Creates a new adapter for an object of class '{@link org.eclipse.wst.common.componentcore.internal.WorkbenchComponent <em>Workbench Component</em>}'.
-	 * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-	 * @return the new adapter.
-	 * @see org.eclipse.wst.common.componentcore.internal.WorkbenchComponent
-	 * @generated
-	 */
-	public Adapter createWorkbenchComponentAdapter() {
-		return null;
-	}
-
-	/**
-	 * Creates a new adapter for an object of class '{@link org.eclipse.wst.common.componentcore.internal.ComponentResource <em>Component Resource</em>}'.
-	 * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-	 * @return the new adapter.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentResource
-	 * @generated
-	 */
-	public Adapter createComponentResourceAdapter() {
-		return null;
-	}
-
-	/**
-	 * Creates a new adapter for an object of class '{@link org.eclipse.wst.common.componentcore.internal.ComponentType <em>Component Type</em>}'.
-	 * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-	 * @return the new adapter.
-	 * @see org.eclipse.wst.common.componentcore.internal.ComponentType
-	 * @generated
-	 */
-	public Adapter createComponentTypeAdapter() {
-		return null;
-	}
-
-	/**
-	 * Creates a new adapter for an object of class '{@link org.eclipse.wst.common.componentcore.internal.Property <em>Property</em>}'.
-	 * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-	 * @return the new adapter.
-	 * @see org.eclipse.wst.common.componentcore.internal.Property
-	 * @generated
-	 */
-	public Adapter createPropertyAdapter() {
-		return null;
-	}
-
-	/**
-	 * Creates a new adapter for an object of class '{@link org.eclipse.wst.common.componentcore.internal.ReferencedComponent <em>Referenced Component</em>}'.
-	 * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-	 * @return the new adapter.
-	 * @see org.eclipse.wst.common.componentcore.internal.ReferencedComponent
-	 * @generated
-	 */
-	public Adapter createReferencedComponentAdapter() {
-		return null;
-	}
-
-	/**
-	 * Creates a new adapter for an object of class '{@link org.eclipse.wst.common.componentcore.internal.ProjectComponents <em>Project Components</em>}'.
-	 * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-	 * @return the new adapter.
-	 * @see org.eclipse.wst.common.componentcore.internal.ProjectComponents
-	 * @generated
-	 */
-	public Adapter createProjectComponentsAdapter() {
-		return null;
-	}
-
-	/**
-	 * Creates a new adapter for the default case.
-	 * <!-- begin-user-doc -->
-	 * This default implementation returns null.
-	 * <!-- end-user-doc -->
-	 * @return the new adapter.
-	 * @generated
-	 */
-	public Adapter createEObjectAdapter() {
-		return null;
-	}
-
-} //ComponentcoreAdapterFactory
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentcoreSwitch.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentcoreSwitch.java
deleted file mode 100644
index f556abc..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ComponentcoreSwitch.java
+++ /dev/null
@@ -1,240 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: ComponentcoreSwitch.java,v 1.6 2005/10/18 22:27:18 cbridgha Exp $
- */
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import java.util.List;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentType;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.ProjectComponents;
-import org.eclipse.wst.common.componentcore.internal.Property;
-import org.eclipse.wst.common.componentcore.internal.ReferencedComponent;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Switch</b> for the model's inheritance hierarchy.
- * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
- * to invoke the <code>caseXXX</code> method for each class of the model,
- * starting with the actual class of the object
- * and proceeding up the inheritance hierarchy
- * until a non-null result is returned,
- * which is the result of the switch.
- * <!-- end-user-doc -->
- * @see org.eclipse.wst.common.componentcore.internal.ComponentcorePackage
- * @generated
- */
-public class ComponentcoreSwitch {
-	/**
-	 * The cached model package
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected static ComponentcorePackage modelPackage;
-
-	/**
-	 * Creates an instance of the switch.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ComponentcoreSwitch() {
-		if (modelPackage == null) {
-			modelPackage = ComponentcorePackage.eINSTANCE;
-		}
-	}
-
-	/**
-	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the first non-null result returned by a <code>caseXXX</code> call.
-	 * @generated
-	 */
-	public Object doSwitch(EObject theEObject) {
-		return doSwitch(theEObject.eClass(), theEObject);
-	}
-
-	/**
-	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the first non-null result returned by a <code>caseXXX</code> call.
-	 * @generated
-	 */
-	protected Object doSwitch(EClass theEClass, EObject theEObject) {
-		if (theEClass.eContainer() == modelPackage) {
-			return doSwitch(theEClass.getClassifierID(), theEObject);
-		}
-		else {
-			List eSuperTypes = theEClass.getESuperTypes();
-			return
-				eSuperTypes.isEmpty() ?
-					defaultCase(theEObject) :
-					doSwitch((EClass)eSuperTypes.get(0), theEObject);
-		}
-	}
-
-	/**
-	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the first non-null result returned by a <code>caseXXX</code> call.
-	 * @generated
-	 */
-	protected Object doSwitch(int classifierID, EObject theEObject) {
-		switch (classifierID) {
-			case ComponentcorePackage.WORKBENCH_COMPONENT: {
-				WorkbenchComponent workbenchComponent = (WorkbenchComponent)theEObject;
-				Object result = caseWorkbenchComponent(workbenchComponent);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
-			case ComponentcorePackage.COMPONENT_RESOURCE: {
-				ComponentResource componentResource = (ComponentResource)theEObject;
-				Object result = caseComponentResource(componentResource);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
-			case ComponentcorePackage.COMPONENT_TYPE: {
-				ComponentType componentType = (ComponentType)theEObject;
-				Object result = caseComponentType(componentType);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
-			case ComponentcorePackage.PROPERTY: {
-				Property property = (Property)theEObject;
-				Object result = caseProperty(property);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
-			case ComponentcorePackage.REFERENCED_COMPONENT: {
-				ReferencedComponent referencedComponent = (ReferencedComponent)theEObject;
-				Object result = caseReferencedComponent(referencedComponent);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
-			case ComponentcorePackage.PROJECT_COMPONENTS: {
-				ProjectComponents projectComponents = (ProjectComponents)theEObject;
-				Object result = caseProjectComponents(projectComponents);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
-			default: return defaultCase(theEObject);
-		}
-	}
-
-	/**
-	 * Returns the result of interpretting the object as an instance of '<em>Workbench Component</em>'.
-	 * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-	 * @param object the target of the switch.
-	 * @return the result of interpretting the object as an instance of '<em>Workbench Component</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public Object caseWorkbenchComponent(WorkbenchComponent object) {
-		return null;
-	}
-
-	/**
-	 * Returns the result of interpretting the object as an instance of '<em>Component Resource</em>'.
-	 * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-	 * @param object the target of the switch.
-	 * @return the result of interpretting the object as an instance of '<em>Component Resource</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public Object caseComponentResource(ComponentResource object) {
-		return null;
-	}
-
-	/**
-	 * Returns the result of interpretting the object as an instance of '<em>Component Type</em>'.
-	 * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-	 * @param object the target of the switch.
-	 * @return the result of interpretting the object as an instance of '<em>Component Type</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public Object caseComponentType(ComponentType object) {
-		return null;
-	}
-
-	/**
-	 * Returns the result of interpretting the object as an instance of '<em>Property</em>'.
-	 * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-	 * @param object the target of the switch.
-	 * @return the result of interpretting the object as an instance of '<em>Property</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public Object caseProperty(Property object) {
-		return null;
-	}
-
-	/**
-	 * Returns the result of interpretting the object as an instance of '<em>Referenced Component</em>'.
-	 * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-	 * @param object the target of the switch.
-	 * @return the result of interpretting the object as an instance of '<em>Referenced Component</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public Object caseReferencedComponent(ReferencedComponent object) {
-		return null;
-	}
-
-	/**
-	 * Returns the result of interpretting the object as an instance of '<em>Project Components</em>'.
-	 * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-	 * @param object the target of the switch.
-	 * @return the result of interpretting the object as an instance of '<em>Project Components</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public Object caseProjectComponents(ProjectComponents object) {
-		return null;
-	}
-
-	/**
-	 * Returns the result of interpretting the object as an instance of '<em>EObject</em>'.
-	 * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch, but this is the last case anyway.
-	 * <!-- end-user-doc -->
-	 * @param object the target of the switch.
-	 * @return the result of interpretting the object as an instance of '<em>EObject</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
-	 * @generated
-	 */
-	public Object defaultCase(EObject object) {
-		return null;
-	}
-
-} //ComponentcoreSwitch
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/DependencyTypeTranslator.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/DependencyTypeTranslator.java
deleted file mode 100644
index 2a9127c..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/DependencyTypeTranslator.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on Apr 2, 2003
- *
- * To change the template for this generated file go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.DependencyType;
-import org.eclipse.wst.common.internal.emf.resource.Translator;
-
-/**
- * @author administrator
- *
- * To change the template for this generated type comment go to
- * Window>Preferences>Java>Code Generation>Code and Comments
- */
-public class DependencyTypeTranslator extends Translator implements WTPModulesXmlMapperI{
-	
-	public DependencyTypeTranslator(){
-		super(DEPENDENCY_TYPE,ComponentcorePackage.eINSTANCE.getReferencedComponent_DependencyType());
-	}
-	
-	/* (non-Javadoc)
-	 * @see com.ibm.etools.emf2xml.impl.Translator#convertStringToValue(java.lang.String, org.eclipse.emf.ecore.EObject)
-	 */
-	public Object convertStringToValue(String strValue, EObject owner) {
-		String correct = strValue;
-		if (strValue.toUpperCase().equals("CONSUMES")) //$NON-NLS-1$
-			correct = DependencyType.CONSUMES_LITERAL.getName(); 
-		else if (strValue.toUpperCase().equals("USES")) //$NON-NLS-1$
-			correct = DependencyType.USES_LITERAL.getName(); 
-			
-		return super.convertStringToValue(correct, owner);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/DeployedPathProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/DeployedPathProvider.java
deleted file mode 100644
index 6964233..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/DeployedPathProvider.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class DeployedPathProvider implements IPathProvider {
-	
-	public static IPathProvider INSTANCE = new DeployedPathProvider();
-	
-	private DeployedPathProvider() {} 
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.modulecore.util.IPathProvider#getPath(org.eclipse.wst.common.modulecore.WorkbenchComponent)
-	 */
-	public IPath getPath(ComponentResource aModuleResource) { 
-		return aModuleResource.getRuntimePath();
-	}
-	
-	public EStructuralFeature getFeature() {
-		return ComponentcorePackage.eINSTANCE.getComponentResource_RuntimePath();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/EclipseResourceAdapter.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/EclipseResourceAdapter.java
deleted file mode 100644
index 0109525..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/EclipseResourceAdapter.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.impl.AdapterImpl;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class EclipseResourceAdapter extends AdapterImpl implements Adapter {
-
-	public static final Class ADAPTER_TYPE = EclipseResourceAdapter.class;
-	private IResource resource; 
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.notify.Adapter#notifyChanged(org.eclipse.emf.common.notify.Notification)
-	 */
-	public void notifyChanged(Notification aNotification) {
-		if (aNotification.getFeature() == ComponentcorePackage.eINSTANCE.getComponentResource_SourcePath()) {
-			if (aNotification.getEventType() == Notification.SET) {
-				resource = null;
-				
-			}
-		}
-	}
-
-	public IResource getEclipseResource() { 
-		synchronized (this) {
-			if (resource == null) {
-
-				IProject container = null;
-				ComponentResource moduleResource = (ComponentResource) getTarget();
-				if (moduleResource != null) {
-					IPath sourcePath = moduleResource.getSourcePath();
-					if (moduleResource.getOwningProject() != null)
-						container = moduleResource.getOwningProject();
-					else
-						container = StructureEdit.getContainingProject(moduleResource.getComponent());
-					if (container != null)
-						resource = container.findMember(sourcePath); 
-					if(resource == null)
-						resource = ResourcesPlugin.getWorkspace().getRoot().findMember(sourcePath);
-				}
-			}
-		}
-		return resource;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.emf.common.notify.Adapter#isAdapterForType(java.lang.Object)
-	 */
-	public boolean isAdapterForType(Object aType) {
-		return ADAPTER_TYPE == aType;
-	}
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/HRefTranslator.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/HRefTranslator.java
deleted file mode 100644
index 8fba627..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/HRefTranslator.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.wst.common.componentcore.ArtifactEdit;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResource;
-import org.eclipse.wst.common.internal.emf.resource.Translator;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorPath;
-
-public class HRefTranslator extends Translator {
-
-	public HRefTranslator(String domNameAndPath, EClass eClass) {
-		super(domNameAndPath, eClass);
-		// TODO Auto-generated constructor stub
-	}
-
-	public HRefTranslator(String domNameAndPath, EStructuralFeature aFeature) {
-		super(domNameAndPath, aFeature);
-		// TODO Auto-generated constructor stub
-	}
-
-	public HRefTranslator(String domNameAndPath, EStructuralFeature aFeature,
-			EClass eClass) {
-		super(domNameAndPath, aFeature, eClass);
-		// TODO Auto-generated constructor stub
-	}
-
-	public HRefTranslator(String domNameAndPath, EStructuralFeature aFeature,
-			TranslatorPath path) {
-		super(domNameAndPath, aFeature, path);
-		// TODO Auto-generated constructor stub
-	}
-
-	public HRefTranslator(String domNameAndPath, EStructuralFeature aFeature,
-			TranslatorPath[] paths) {
-		super(domNameAndPath, aFeature, paths);
-		// TODO Auto-generated constructor stub
-	}
-
-	public HRefTranslator(String domNameAndPath, EStructuralFeature aFeature,
-			int style) {
-		super(domNameAndPath, aFeature, style);
-		// TODO Auto-generated constructor stub
-	}
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.Translator#convertStringToValue(java.lang.String,
-	 *      org.eclipse.emf.ecore.EObject)
-	 */
-	public Object convertStringToValue(String aValue, EObject anOwner) {
-		Object retVal = null;
-		if (aValue != null)
-		{
-			Resource res = null;
-			try {
-				WorkbenchComponent earComp = (WorkbenchComponent)anOwner.eContainer();
-				IVirtualComponent virtualComp = ComponentCore.createComponent(StructureEdit.getContainingProject(earComp));
-				ArtifactEdit edit = (ArtifactEdit)virtualComp.getAdapter(ArtifactEdit.class);
-				if (edit != null)
-				{
-					EObject contentModelRoot = edit.getContentModelRoot(); 
-					if( contentModelRoot != null )
-					{
-						res = contentModelRoot.eResource();
-						if (res != null && res instanceof CompatibilityXMIResource)
-							retVal = res.getEObject(aValue);
-					}
-				}
-			} finally {
-//			if ((res != null) && res.getResourceSet() != null) {
-//				res.getResourceSet().getResources().remove(res);
-//				res.unload();
-//			}
-			}
-		}
-		return retVal;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.Translator#convertValueToString(java.lang.Object,
-	 *      org.eclipse.emf.ecore.EObject)
-	 */
-	public String convertValueToString(Object aValue, EObject anOwner) { 
-		String frag = null;
-		Resource theResource = ((EObject)aValue).eResource();
-		if (theResource != null)
-		{
-			if (theResource instanceof CompatibilityXMIResource)
-				frag = theResource.getURIFragment((EObject)aValue);
-			else
-				frag = null;
-		}
-		else
-			frag = EcoreUtil.getID((EObject)aValue);
-		return frag;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IArtifactEditFactory.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IArtifactEditFactory.java
deleted file mode 100644
index cd5f471..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IArtifactEditFactory.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.wst.common.componentcore.ArtifactEdit;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public interface IArtifactEditFactory {
-	
-	public ArtifactEdit createArtifactEditForRead(IVirtualComponent aComponent);
-	
-	public ArtifactEdit createArtifactEditForWrite(IVirtualComponent aComponent);
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IComponentImplFactory.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IComponentImplFactory.java
deleted file mode 100644
index 8673b16..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IComponentImplFactory.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-
-public interface IComponentImplFactory {
-
-	public IVirtualComponent createComponent(IProject aProject);
-	
-	public IVirtualFolder createFolder(IProject aProject, IPath aRuntimePath);
-	
-	public IVirtualComponent createArchiveComponent(IProject aProject, String archiveLocation, IPath aRuntimePath);
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IModuleConstants.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IModuleConstants.java
deleted file mode 100644
index f1c98d0..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IModuleConstants.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public interface IModuleConstants {
-	
-	public static final String DOT_SETTINGS =  ".settings"; //$NON-NLS-1$
-	
-	public final static String COMPONENT_FILE_NAME = ".component"; //$NON-NLS-1$
-	public final static Path COMPONENT_FILE_PATH = new Path(StructureEdit.MODULE_META_FILE_NAME);
-    public final static String WTPMODULE_FILE_NAME = ".wtpmodules"; //$NON-NLS-1$
-    public final static Path R1_MODULE_META_FILE_PATH = new Path(".settings/.component"); //$NON-NLS-1$
-	public final static Path WTPMODULE_FILE_PATH = new Path(WTPMODULE_FILE_NAME);
-	public final static String MODULE_PLUG_IN_ID = "org.eclipse.wst.common.modulecore"; //$NON-NLS-1$
-	public final static String MODULE_NATURE_ID = "org.eclipse.wst.common.modulecore.ModuleCoreNature"; //$NON-NLS-1$
-
-	//moduleTypes
-	public final static String JST_WEB_MODULE = "jst.web"; //$NON-NLS-1$
-	public final static String JST_EJB_MODULE = "jst.ejb"; //$NON-NLS-1$
-	public final static String JST_UTILITY_MODULE = "jst.utility"; //$NON-NLS-1$
-	public final static String WST_WEB_MODULE = "wst.web"; //$NON-NLS-1$
-	public final static String JST_EAR_MODULE = "jst.ear"; //$NON-NLS-1$
-	public final static String JST_APPCLIENT_MODULE = "jst.appclient"; //$NON-NLS-1$
-	public final static String JST_CONNECTOR_MODULE = "jst.connector"; //$NON-NLS-1$
-	public final static String JST_JAVA = "jst.java"; //$NON-NLS-1$
-	
-	public final static String DEPENDENT_MODULE = "dependent"; //$NON-NLS-1$
-    
-    //Property Constants
-    public final static String PROJ_REL_JAVA_OUTPUT_PATH = "java-output-path"; //$NON-NLS-1$ 
-    
-    public final static String CONTEXTROOT = "context-root"; //$NON-NLS-1$
-	 
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IPathProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IPathProvider.java
deleted file mode 100644
index 389edd2..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IPathProvider.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public interface IPathProvider {
-	
-	IPath getPath(ComponentResource aModuleResource);
-	
-	EStructuralFeature getFeature();
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IPathTranslator.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IPathTranslator.java
deleted file mode 100644
index 8012cb1..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/IPathTranslator.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.wst.common.internal.emf.resource.Translator;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorPath;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class IPathTranslator extends Translator {
-
-	public IPathTranslator(String aDomPath, EStructuralFeature aFeature) {
-		super(aDomPath, aFeature);
-	}
-	
-	public IPathTranslator(String aDomPath, EStructuralFeature aFeature, TranslatorPath aTranslatorPath) {
-		super(aDomPath, aFeature, new TranslatorPath[]{aTranslatorPath});
-	}
-	
-	public IPathTranslator(String aDomPath, EStructuralFeature aFeature, TranslatorPath[] theTranslatorPaths) {
-		super(aDomPath, aFeature, theTranslatorPaths);
-	}
-	
-	public IPathTranslator(String aDomPath, EStructuralFeature aFeature, int aStyleMask) {
-		super(aDomPath, aFeature, aStyleMask);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.Translator#convertStringToValue(java.lang.String,
-	 *      org.eclipse.emf.ecore.EObject)
-	 */
-	public Object convertStringToValue(String aValue, EObject anOwner) { 
-		return new Path(aValue);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.Translator#convertValueToString(java.lang.Object,
-	 *      org.eclipse.emf.ecore.EObject)
-	 */
-	public String convertValueToString(Object aValue, EObject anOwner) { 
-		if(aValue instanceof IPath) 
-			return ((IPath)aValue).toString();
-		return super.convertValueToString(aValue, anOwner);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ModuleCoreEclipseAdapterFactory.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ModuleCoreEclipseAdapterFactory.java
deleted file mode 100644
index ca3e606..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ModuleCoreEclipseAdapterFactory.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.UnresolveableURIException;
-import org.eclipse.wst.common.componentcore.internal.ModuleStructuralModel;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.impl.ResourceTreeNode;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class ModuleCoreEclipseAdapterFactory implements IAdapterFactory {
-	
-	private static final Class MODULE_CORE_CLASS = StructureEdit.class;
-	private static final Class VIRTUAL_COMPONENT_CLASS = IVirtualComponent.class;
-	private static final Class[] ADAPTER_LIST = new Class[] { MODULE_CORE_CLASS, VIRTUAL_COMPONENT_CLASS};
-
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
-	 */
-	public Object getAdapter(Object adaptable, Class anAdapterType) {
-		if(anAdapterType == MODULE_CORE_CLASS)
-				return new StructureEdit((ModuleStructuralModel)adaptable);
-		if(anAdapterType == VIRTUAL_COMPONENT_CLASS)
-			return getComponent((IResource)adaptable);
-		return null;
-	}
-
-	private Object getComponent(IResource resource) {
-		StructureEdit moduleCore = null;
-		WorkbenchComponent module = null;
-		if (!resource.exists()) return null;
-			
-		try {
-			moduleCore = StructureEdit.getStructureEditForRead(resource.getProject());
-			if (moduleCore == null)
-				return null;
-			if (resource.getType() == IResource.PROJECT) {
-				WorkbenchComponent[] comps = moduleCore.getWorkbenchModules();
-				if (comps.length > 0)
-					return ComponentCore.createComponent(resource.getProject());
-				return null;
-			}
-			module = moduleCore.findComponent(resource.getFullPath(),ResourceTreeNode.CREATE_NONE);	
-		} catch (UnresolveableURIException e) {
-			// Ignore
-		} finally {
-			if (moduleCore != null)
-				moduleCore.dispose();
-		}
-		return module == null ? null : ComponentCore.createComponent(resource.getProject());
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
-	 */
-	public Class[] getAdapterList() { 
-		return ADAPTER_LIST;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ModuleCoreMessages.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ModuleCoreMessages.java
deleted file mode 100644
index b3e395d..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ModuleCoreMessages.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.osgi.util.NLS;
-
-public class ModuleCoreMessages extends NLS {
-
-	private static final String BUNDLE_NAME = "modulecoreNLS"; //$NON-NLS-1$
-	
-	private ModuleCoreMessages() {
-		//do not instantiate
-	}
-	
-	static {
-		NLS.initializeMessages(BUNDLE_NAME, ModuleCoreMessages.class);
-	}
-	
-	public static String Acquiring_ArtifactEdit_For_Read_Exception;
-	public static String Acquiring_ArtifactEdit_For_Write_Exception;
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/SourcePathProvider.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/SourcePathProvider.java
deleted file mode 100644
index 4cc4ab1..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/SourcePathProvider.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class SourcePathProvider implements IPathProvider {
-	
-	public static IPathProvider INSTANCE = new SourcePathProvider();
-	
-	private SourcePathProvider() {} 
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.modulecore.util.IPathProvider#getPath(org.eclipse.wst.common.modulecore.WorkbenchComponent)
-	 */
-	public IPath getPath(ComponentResource aModuleResource) {
-		return aModuleResource.getSourcePath();
-	}
-
-	public EStructuralFeature getFeature() {
-		return ComponentcorePackage.eINSTANCE.getComponentResource_SourcePath();
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/URITranslator.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/URITranslator.java
deleted file mode 100644
index 84743f9..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/URITranslator.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.wst.common.internal.emf.resource.Translator;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorPath;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class URITranslator extends Translator {
-
-	public URITranslator(String aDomPath, EStructuralFeature aFeature) {
-		super(aDomPath, aFeature);
-	}
-	
-	public URITranslator(String aDomPath, EStructuralFeature aFeature, TranslatorPath aTranslatorPath) {
-		super(aDomPath, aFeature, new TranslatorPath[]{aTranslatorPath});
-	}
-	
-	public URITranslator(String aDomPath, EStructuralFeature aFeature, TranslatorPath[] theTranslatorPaths) {
-		super(aDomPath, aFeature, theTranslatorPaths);
-	}
-	
-	public URITranslator(String aDomPath, EStructuralFeature aFeature, int aStyleMask) {
-		super(aDomPath, aFeature, aStyleMask);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.Translator#convertStringToValue(java.lang.String,
-	 *      org.eclipse.emf.ecore.EObject)
-	 */
-	public Object convertStringToValue(String aValue, EObject anOwner) { 
-		return URI.createURI(aValue);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.internal.emf.resource.Translator#convertValueToString(java.lang.Object,
-	 *      org.eclipse.emf.ecore.EObject)
-	 */
-	public String convertValueToString(Object aValue, EObject anOwner) { 
-		if(aValue instanceof URI) 
-			return ((URI)aValue).toString();
-		return super.convertValueToString(aValue, anOwner);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/WTPModulesTranslator.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/WTPModulesTranslator.java
deleted file mode 100644
index b88af6b..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/WTPModulesTranslator.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.internal.emf.resource.GenericTranslator;
-import org.eclipse.wst.common.internal.emf.resource.IDTranslator;
-import org.eclipse.wst.common.internal.emf.resource.RootTranslator;
-import org.eclipse.wst.common.internal.emf.resource.Translator;
-
-
-public class WTPModulesTranslator extends RootTranslator implements WTPModulesXmlMapperI{
-	public static WTPModulesTranslator INSTANCE = new WTPModulesTranslator();
-	private static Translator[] children;
-	private static final ComponentcorePackage MODULE_CORE_PKG = ComponentcorePackage.eINSTANCE;
-	/**
-	 * @param domNameAndPath
-	 * @param eClass
-	 */
-	public WTPModulesTranslator() {
-		super(PROJECT_MODULES, ComponentcorePackage.eINSTANCE.getProjectComponents());
-	}	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emf.resource.Translator#getChildren(java.lang.Object, int)
-	 */
-	public Translator[] getChildren(Object target, int versionID) {
-		if(children == null)
-			children = createWTPModulesTranslator();
-		return children;
-	}
-	
-	private static Translator[] createWTPModulesTranslator() {
-		return new Translator[] {
-				IDTranslator.INSTANCE,
-				new Translator(PROJECT_VERSION, MODULE_CORE_PKG.getProjectComponents_Version(), DOM_ATTRIBUTE), 
-				createWBModuleTranslator(MODULE_CORE_PKG.getProjectComponents_Components())
-		};
-	}
-
-	/**
-	 * @return
-	 */
-	private static Translator createWBModuleTranslator(EStructuralFeature afeature) {
-		GenericTranslator result = new GenericTranslator(WORKBENCH_COMPONENT, afeature);
-		result.setChildren(new Translator[] {
-			IDTranslator.INSTANCE,
-			//new Translator(HANDLE, MODULE_CORE_PKG.getWorkbenchComponent_Handle(), DOM_ATTRIBUTE), REMOVED SINCE HANDLE SHOULD NOW BE DERIVED -MDE
-			new Translator(RUNTIME_NAME, MODULE_CORE_PKG.getWorkbenchComponent_Name(), DOM_ATTRIBUTE), 
-			createModuleTypeTranslator(MODULE_CORE_PKG.getWorkbenchComponent_ComponentType()),
-			createWBResourceTranslator(MODULE_CORE_PKG.getWorkbenchComponent_Resources()),
-			createDependentModuleTranslator(MODULE_CORE_PKG.getWorkbenchComponent_ReferencedComponents()),
-			new IPathTranslator(META_RESOURCES, MODULE_CORE_PKG.getWorkbenchComponent_MetadataResources()),
-			createPropertiesTranslator(MODULE_CORE_PKG.getWorkbenchComponent_Properties())
-		});
-		return result;
-	}
-	private static Translator createModuleTypeTranslator(EStructuralFeature afeature) {
-		GenericTranslator result = new GenericTranslator(MODULE_TYPE, afeature);
-		result.setChildren(new Translator[] {			
-			new Translator(COMPONENT_TYPE_ID, MODULE_CORE_PKG.getComponentType_ComponentTypeId(), DOM_ATTRIBUTE),
-			new Translator(META_RESOURCES, MODULE_CORE_PKG.getComponentType_MetadataResources()),
-			new Translator(COMPONENT_TYPE_VERSION, MODULE_CORE_PKG.getComponentType_Version()),
-			createPropertiesTranslator(MODULE_CORE_PKG.getComponentType_Properties())
-			
-		});
-		return result;
-	}
-	
-	private static Translator createPropertiesTranslator(EStructuralFeature afeature){
-		GenericTranslator result = new GenericTranslator(PROPERTY, afeature);
-		result.setChildren(new Translator[] {
-			new Translator(PROPERTY_NAME, MODULE_CORE_PKG.getProperty_Name(), DOM_ATTRIBUTE ),
-			new Translator(PROPERTY_VALUE, MODULE_CORE_PKG.getProperty_Value(), DOM_ATTRIBUTE ),
-	
-		});
-		return result;		
-	}
-	
-	
-	private static Translator createDependentModuleTranslator(EStructuralFeature afeature) {
-		GenericTranslator result = new GenericTranslator(REFERENCED_COMPONENT, afeature);
-		result.setChildren(new Translator[] { 
-			new IPathTranslator(RUNTIME_PATH, MODULE_CORE_PKG.getReferencedComponent_RuntimePath(), DOM_ATTRIBUTE),
-			new URITranslator(HANDLE, MODULE_CORE_PKG.getReferencedComponent_Handle(), DOM_ATTRIBUTE),
-			new HRefTranslator(DEP_OBJECT,MODULE_CORE_PKG.getReferencedComponent_DependentObject()),
-			new Translator(ARCHIVE_NAME, MODULE_CORE_PKG.getReferencedComponent_ArchiveName(), DOM_ATTRIBUTE),
-			new DependencyTypeTranslator()
-		});
-		return result;
-	}
-
-
-	private static Translator createWBResourceTranslator(EStructuralFeature afeature) {
-		GenericTranslator result = new GenericTranslator(COMPONENT_RESOURCE, afeature);
-		result.setChildren(new Translator[] {
-			IDTranslator.INSTANCE,
-			new IPathTranslator(SOURCE_PATH, MODULE_CORE_PKG.getComponentResource_SourcePath(), DOM_ATTRIBUTE),
-			new IPathTranslator(RUNTIME_PATH, MODULE_CORE_PKG.getComponentResource_RuntimePath(), DOM_ATTRIBUTE),
-			new Translator(RESOURCE_TYPE, MODULE_CORE_PKG.getComponentResource_ResourceType(), DOM_ATTRIBUTE),
-			new Translator(EXCLUSIONS, MODULE_CORE_PKG.getComponentResource_Exclusions())
-		});
-		return result;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/WTPModulesXmlMapperI.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/WTPModulesXmlMapperI.java
deleted file mode 100644
index 9ed9de9..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/WTPModulesXmlMapperI.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-public interface WTPModulesXmlMapperI {
-	String PROJECT_MODULES = "project-modules";//$NON-NLS-1$  
-	String WORKBENCH_COMPONENT = "wb-module";//$NON-NLS-1$
-	String REFERENCED_COMPONENT = "dependent-module";//$NON-NLS-1$
-	String COMPONENT_RESOURCE = "wb-resource"; //$NON-NLS-1$
-	String MODULE_TYPE = "module-type";//$NON-NLS-1$ 
-	String META_RESOURCES = "meta-resources";//$NON-NLS-1$ 
-	String COMPONENT_TYPE_VERSION = "version";//$NON-NLS-1$ 
-	String HANDLE = "handle";//$NON-NLS-1$
-	String DEP_OBJECT = "dependent-object";//$NON-NLS-1$ 
-	String OBJECTREF = "href";//$NON-NLS-1$
-	String DEPENDENCY_TYPE = "dependency-type";//$NON-NLS-1$
-	String SOURCE_PATH = "source-path"; //$NON-NLS-1$
-	String RUNTIME_PATH = "deploy-path"; //$NON-NLS-1$
-	String EXCLUSIONS = "exclusions";//$NON-NLS-1$  
-	String COMPONENT_TYPE_ID = "module-type-id"; //$NON-NLS-1$
-	String RUNTIME_NAME = "deploy-name"; //$NON-NLS-1$
-	String PROPERTY = "property"; //$NON-NLS-1$
-	String PROPERTY_NAME = "name";//$NON-NLS-1$
-	String PROPERTY_VALUE = "value";//$NON-NLS-1$
-	String RESOURCE_TYPE = "resource-type";//$NON-NLS-1$
-	String ARCHIVE_NAME="archiveName";//$NON-NLS-1$
-	String PROJECT_VERSION="project-version";
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ZipFileExporter.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ZipFileExporter.java
deleted file mode 100644
index cc0a5b6..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/internal/util/ZipFileExporter.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.internal.util;
-
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.zip.CRC32;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipOutputStream;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Path;
-
-/**
- * Exports resources to a .zip file
- */
-public class ZipFileExporter {
-	private ZipOutputStream outputStream;
-
-	private boolean useCompression = true;
-
-	/**
-	 * Create an instance of this class.
-	 * 
-	 * @param filename
-	 *            java.lang.String
-	 * @param compress
-	 *            boolean
-	 * @param includeManifestFile
-	 *            boolean
-	 * @exception java.io.IOException
-	 */
-	public ZipFileExporter(String filename, boolean compress) throws IOException {
-		Path directoryPath = new Path(filename);
-		directoryPath = (Path) directoryPath.removeLastSegments(1);
-		File newZipFile = new File(directoryPath.toString());
-		newZipFile.mkdirs();
-		outputStream = new ZipOutputStream(new FileOutputStream(filename));
-		useCompression = compress;
-	}
-
-	/**
-	 * Do all required cleanup now that we're finished with the currently-open .zip
-	 * 
-	 * @exception java.io.IOException
-	 */
-	public void finished() throws IOException {
-		outputStream.close();
-	}
-
-	/**
-	 * Create a new ZipEntry with the passed pathname and contents, and write it to the current
-	 * archive
-	 * 
-	 * @param pathname
-	 *            java.lang.String
-	 * @param contents
-	 *            byte[]
-	 * @exception java.io.IOException
-	 */
-	protected void write(String pathname, byte[] contents) throws IOException {
-		ZipEntry newEntry = new ZipEntry(pathname);
-
-		// if the contents are being compressed then we get the below for free.
-		if (!useCompression) {
-			newEntry.setMethod(ZipEntry.STORED);
-			newEntry.setSize(contents.length);
-			CRC32 checksumCalculator = new CRC32();
-			checksumCalculator.update(contents);
-			newEntry.setCrc(checksumCalculator.getValue());
-		}
-
-		outputStream.putNextEntry(newEntry);
-		outputStream.write(contents);
-		outputStream.closeEntry();
-	}
-
-	public void writeFolder(String destinationPath) throws IOException {
-		if (!destinationPath.endsWith("/"))
-			destinationPath = destinationPath + '/';
-		ZipEntry newEntry = new ZipEntry(destinationPath);
-		outputStream.putNextEntry(newEntry);
-		outputStream.closeEntry();
-	}
-
-	/**
-	 * Write the passed resource to the current archive
-	 * 
-	 * @param resource
-	 *            org.eclipse.core.resources.IFile
-	 * @param destinationPath
-	 *            java.lang.String
-	 * @exception java.io.IOException
-	 * @exception org.eclipse.core.runtime.CoreException
-	 */
-	public void write(IFile resource, String destinationPath) throws IOException, CoreException {
-		InputStream contentStream = null;
-		try {
-			contentStream = resource.getContents(false);
-			write(contentStream, destinationPath);
-		} finally {
-			if (contentStream != null)
-				contentStream.close();
-		}
-	}
-
-	public void write(InputStream contentStream, String destinationPath) throws IOException, CoreException {
-		ByteArrayOutputStream output = null;
-
-		try {
-			output = new ByteArrayOutputStream();
-			int chunkSize = contentStream.available();
-			byte[] readBuffer = new byte[chunkSize];
-			int n = contentStream.read(readBuffer);
-
-			while (n > 0) {
-				output.write(readBuffer);
-				n = contentStream.read(readBuffer);
-			}
-		} finally {
-			if (output != null)
-				output.close();
-		}
-
-		write(destinationPath, output.toByteArray());
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/package.html b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/package.html
deleted file mode 100644
index 9c904da..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/package.html
+++ /dev/null
@@ -1,368 +0,0 @@
-<html>
-<head>
-<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<link rel="stylesheet" href="../../../../..//apistyles.css" type="text/css">
-<title>modulecore api overview</title>
-</head>
-<body>
-<p>
-        The ComponentCore API allows clients to work with the Structural 
-        Metamodels that define abstract modules within Eclipse projects. 
-        These metamodels are exposed through the Virtual Path API layer 
-        (see <a href="ComponentCore.html">ComponentCore</a>). Clients 
-        should also review the <b>org.eclipse.wst.common.componentcore.resources</b>
-        package.
-		</p>
-<a name="top"></a>
-<table width="500">
-<tr>
-<td>
-<p>
-			The following document includes information on these topics:
-			<ul>
-				
-<li>
-<a href="#structural-metamodel">ComponentCore Metamodel (CCM)</a> 
-					used to understand which files should or should not be 
-					included within a module.</li> 
-				
-<li>
-<a href="#constraints">Constraints</a> enforced by the 
-					design</li> 
-				
-<li>
-<a href="#module-core-examples">The API entry-point</a>
-</li>
-			
-</ul>
-		
-</p>
-</td>
-</tr>
-</table>
-<a name="structural-metamodel"></a>
-<table width="100%" cellspacing="5" cellpadding="2" border="0">
-<tbody>
-<tr>
-<td valign="top" bgcolor="#0080c0" align="left" colspan="2"><b><font face="Arial,Helvetica" color="#ffffff">ComponentCore Metamodel (CCM)</font></b></td>
-</tr>
-</tbody>
-</table>
-<BR>
-<table width="500">
-<tr>
-<td>
-<p>
-            The ComponentCore Metamodel (CCM) is an EMF model that allows 
-			the tooling to understand most project structures. Each project 
-			has a single CCM which is stored under the project root named
-            <I>.wtpmodules</I>
-            . The XML format is defined by the 
-            <a href="../../../../../overview/componentCore.xsd">ComponentCore schema</a>.
-            The following diagram is a UML representation of the 
-			ComponentCore Metamodel. This information is published for 
-			potential contributors of editors, but the EMF model is 
-			not exposed directly as API, and could change in view of 
-			changes for WTP 1.1.
-		</p>
-</td>
-</tr>
-</table>
-<table cellpadding="10" cellspacing="10">
-<tr>
-<td>
-<p>
-<img src="../../../../../overview/componentcore_model.jpg"></p>
-</td>
-</tr>
-<tr>
-<td>
-<p>
-<i>Figure 1: The Component Core Metamodel</i>
-</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>
-            Each logical component contained in the project is represented by a
-            <b>WorkbenchComponent</b> element. The <b>WorkbenchComponent</b> defines 
-            information about the type of component, the resources consumed by the 
-            module from the project, and the referenced components. The 
-            <b>WorkbenchComponent</b> is very generic, and as modeled, does 
-            not necessarily correspond to only J2EE artifacts.
-        </p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>
-            The <b>WorkbenchComponent</b> has a
-            <i>name</i>
-            , which is the name that will be used when the runtime form of the
-            component is constructed. For a web application, the
-            <i>name</i>
-            might be "MyWebApplication".
-        </p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>
-            The <b>WorkbenchComponent</b> may be uniquely referenced by a URI. The 
-            fully qualified URI to any component must begin with the component
-            protocol ("component:"), specify a subprotocol ("resource|classpath") and
-            then a path to the referenced component. A <b>WorkbenchComponent</b> with the
-            name "MyWebApplication" defined in a project named
-            "MyWebModulesProject" would be referenced by the following URI:
-            "component:/resource/MyWebModulesProject/MyWebApplication". As a future 
-            extension, a component referenced on the classpath of a project (perhaps 
-            a Utility Jar or an EJB Client Jar), the URI might be something like:
-            "component:/classpath/MyWebModulesProject/CustomerEJBClient.jar". 
-        </p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>
-            The <b>WorkbenchComponent</b> has a <b>ComponentType</b>. The 
-            <b>ComponentType</b> defines a <i>componentTypeId</i>
-            , which indicates the specific kind of component. The Web Tools Platform
-            uses the <i>componentTypeId</i>
-            to determine how to work with the content component of the <b>WorkbenchComponent</b>
-            and prepare the component for deployment. The <b>ComponentType</b> may 
-            also define the runtime-paths of special metadata resources which are 
-            important to the <b>WorkbenchComponent</b>. "Metadata" refers to resources 
-            which explain the content details of the specific modules. An example of 
-            such a file would be the "WEB-INF/web.xml" deployment descriptor for 
-            Web Applications.
-        </p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>
-            The <b>WorkbenchComponent</b> contains a list of ComponentResources. Each
-            <b>ComponentResource</b> has "sourcePath" and a corresponding
-            "runtimePath". The "sourcePath" can reference either a file or folder,
-            but the referenced resource must be contained in the same project as the
-            <b>WorkbenchComponent</b> definition. The "runtimePath" specifies a location
-            relative to the deployed structure of the <b>WorkbenchComponent</b> where the
-            contents of the referenced resource will be represented when the module is
-            prepared for runtime.
-        </p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>
-            The <b>WorkbenchComponent</b> contains a list of <b>ReferencedComponent</b>s. 
-            Each <b>ReferencedComponent</b> provides a handle that must resolve to a 
-            <b>WorkbenchComponent</b>, a runtimePath that defines where the constructed 
-            component will be placed within the context of the runtime 
-            <b>WorkbenchComponent</b>, and a <b>DependencyType</b>
-            that can be either "consume" or "use" to indicate how the contents of
-            that <b>ReferencedComponent</b> should be absorbed by the <b>WorkbenchComponent</b>.
-            <b>ReferencedComponent</b>s may reference <b>WorkbenchComponent</b>s in 
-            other projects and on current project's classpath (Not yet implemented). 
-            The <b>DependencyType</b> will determine whether the contents of
-            the <b>ReferencedComponent</b> are absorbed as-is or archived into a *.{w|j|e}ar
-            file.
-        </p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>
-            The <b>ProjectComponents</b> object provides a root container for all
-            <b>WorkbenchComponent</b>s defined in a given project.
-        </p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>
-            
-<b>ComponentCore</b> provides a facade to manage the underlying model for
-            clients. Static methods
-            <code>ModuleCore.getModuleCoreForRead()</code>
-            and
-            <code>ModuleCore.getModuleCoreForWrite()</code>
-            may be used to acquire an ModuleCore adapter, and clients are responsible
-            for invoking
-            <code>dispose()</code>
-            whenever they are finished using the model.
-        </p>
-</td>
-</tr>
-</table>
-<a href="#top">top</a><a name="constraints"></a>
-<table width="100%" cellspacing="5" cellpadding="2" border="0">
-<tbody>
-<tr>
-<td valign="top" bgcolor="#0080c0" align="left" colspan="2"><b><font face="Arial,Helvetica" color="#ffffff">Constraints enforced by the CCM</font></b></td>
-</tr>
-</tbody>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>
-            The following constraints are enforced by the model:
-            <ol>
-                
-<li>
-                    
-<p>
-                        The solution will not check dependencies for components that are
-                        contained in the same project. To get the full benefits of
-                        inter-component dependency checking, components must be separated
-                        into different projects. We do not have the necessary
-                        flexibility in constructing and scoping classpaths on a level
-                        more granular than the project level, which would be needed
-                        to support this functionality.
-                    </p>
-                
-</li>
-                
-<li>
-                    
-<p>
-                        The solution will not allow a single component to span more than
-                        one project. Within that project, we will have fairly broad
-                        flexibility to specify which resources map to which components.
-                        Each component within a project must have its own source folder,
-                        but a component may contain more than one source folder. Each
-                        source folder may be contained by at most one component. Components
-                        may reference dependent components in other projects (so a Web
-                        Application may reference a Web Library outside of the
-                        project that contains the Web Application).
-                    </p>
-                
-</li>
-                
-<li>
-                    
-<p>
-                        The solution will not allow more than one server target per
-                        component (and really per-project) at a time. The ability to
-                        switch this server target (via some action or property
-                        setting) will continue to be possible. Users that need the
-                        capability to develop for multiple server targets will need
-                        to manually switch and test as necessary.
-                    </p>
-                
-</li>
-                
-<li>
-                    
-<p>
-                        Each component in a project may have its own output folder
-                        structure automatically constructed for it. The output
-                        structure will match the J2EE specification output structure
-                        required for the component type (for J2EE modules). A new
-                        builder will handle this responsibility and work
-                        cooperatively with the Java builder to construct a
-                        deployable, on-disk representation of the module structure.
-                        The reference implementation will follow this pattern, but 
-                        hooks will be made available to vary this behavior.
-                        The necessity for this on-disk structure to match a
-                        J2EE-compliant layout is motivated by the requirement to have
-                        in-workbench testing, so that users will not have to deal
-                        with a deployer actually constructing a deployable module and
-                        shipping it off to a server to test their code. This approach
-                        is consistent with existing Ant-based approaches and
-                        Application Servers which can run in a "debug" mode on disk.
-                        Our value-add will be greater automation and integration with
-                        the workbench -- particularly for incremental based support.
-                        The specialized module builder would not be necessary if the
-                        source was already in the appropriate J2EE specification
-                        compliant structure. The default creation will still
-                        encourage a single module per project, which conforms to the
-                        correct J2EE structure.
-                    </p>
-                
-</li>
-                
-<li>
-                    
-<p>
-                        Components will be described using a simple XML format, and each
-                        project will contain one
-                        <I>.wtpmodules</I>
-                        file that will describe all of the components for that project.
-                        The level of tooling to help users create these files is yet
-                        to be determined for WTP M4. This would be a great area for
-                        other interested developers to suggest and provide tooling
-                        (e.g. a Wizard or Editor) to create these files from existing
-                        structures. A schema is provided to make it easier for
-                        consumers that want to build their own
-                        <I>.wtpmodules</I>
-                        by hand to take advantage of the content assist in the XML
-                        editor.
-                    </p>
-                
-</li>
-            
-</ol>
-        
-</p>
-</td>
-</tr>
-</table>
-<a href="#top">top</a><a name="module-core-examples"></a>
-<table width="100%" cellspacing="5" cellpadding="2" border="0">
-<tbody>
-<tr>
-<td valign="top" bgcolor="#0080c0" align="left" colspan="2"><b><font face="Arial,Helvetica" color="#ffffff">ComponentCore API: Working with the metamodel</font></b></td>
-</tr>
-</tbody>
-</table>
-<BR>
-<table width="500">
-<tr>
-<td>
-<p>
-			ComponentCore uses a handle based model much like the existing Platform 
-			Resource model. The ComponentCore facade is not tied to any project, and 
-			the handles that it returns may or may not exist. The complexity of 
-			managing the underlying EMF model is handled under the cover for users. 
-        </p>
-</td>
-</tr>
-</table>
-<table cellpadding="10" cellspacing="10">
-<tr>
-<td>
-<p>
-<img src="../../../../../overview/componentcore_package.jpg"></p>
-</td>
-</tr>
-<tr>
-<td>
-<p>
-<i>Figure 2: The ComponentCore API</i>
-</p>
-</td>
-</tr>
-</table>
-<a href="#top">top</a>
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/package.xml b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/package.xml
deleted file mode 100644
index 3b5c004..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/package.xml
+++ /dev/null
@@ -1,331 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<html>
-    <head>
-        <meta
-            name="root"
-            content="../../../../../" />
-        <title>modulecore api overview</title>
-    </head>
-
-    <body>  
-		<abstract>
-        The ComponentCore API allows clients to work with the Structural 
-        Metamodels that define abstract modules within Eclipse projects. 
-        These metamodels are exposed through the Virtual Path API layer 
-        (see <a href="ComponentCore.html">ComponentCore</a>). Clients 
-        should also review the <b>org.eclipse.wst.common.componentcore.resources</b>
-        package.
-		</abstract>
-
-		<a name="top"/>
-		<p>
-			The following document includes information on these topics:
-			<ul>
-				<li><a href="#structural-metamodel">ComponentCore Metamodel (CCM)</a> 
-					used to understand which files should or should not be 
-					included within a module.</li> 
-				<li><a href="#constraints">Constraints</a> enforced by the 
-					design</li> 
-				<li><a href="#module-core-examples">The API entry-point</a></li>
-			</ul>
-		</p>
-		<a name="structural-metamodel"/>
-        <h2>ComponentCore Metamodel (CCM)</h2>
-        <BR /> 
-        <p>
-            The ComponentCore Metamodel (CCM) is an EMF model that allows 
-			the tooling to understand most project structures. Each project 
-			has a single CCM which is stored under the project root named
-            <I>.wtpmodules</I>
-            . The XML format is defined by the 
-            <a href="../../../../../overview/componentCore.xsd">ComponentCore schema</a>.
-            The following diagram is a UML representation of the 
-			ComponentCore Metamodel. This information is published for 
-			potential contributors of editors, but the EMF model is 
-			not exposed directly as API, and could change in view of 
-			changes for WTP 1.1.
-		</p>	  
-		<img src="../../../../../overview/componentcore_model.jpg" caption="The Component Core Metamodel" /> 
-        <p>
-            Each logical component contained in the project is represented by a
-            <b>WorkbenchComponent</b> element. The <b>WorkbenchComponent</b> defines 
-            information about the type of component, the resources consumed by the 
-            module from the project, and the referenced components. The 
-            <b>WorkbenchComponent</b> is very generic, and as modeled, does 
-            not necessarily correspond to only J2EE artifacts.
-        </p>
-        <p>
-            The <b>WorkbenchComponent</b> has a
-            <i>name</i>
-            , which is the name that will be used when the runtime form of the
-            component is constructed. For a web application, the
-            <i>name</i>
-            might be "MyWebApplication".
-        </p>
-        <p>
-            The <b>WorkbenchComponent</b> may be uniquely referenced by a URI. The 
-            fully qualified URI to any component must begin with the component
-            protocol ("component:"), specify a subprotocol ("resource|classpath") and
-            then a path to the referenced component. A <b>WorkbenchComponent</b> with the
-            name "MyWebApplication" defined in a project named
-            "MyWebModulesProject" would be referenced by the following URI:
-            "component:/resource/MyWebModulesProject/MyWebApplication". As a future 
-            extension, a component referenced on the classpath of a project (perhaps 
-            a Utility Jar or an EJB Client Jar), the URI might be something like:
-            "component:/classpath/MyWebModulesProject/CustomerEJBClient.jar". 
-        </p>
-        <p>
-            The <b>WorkbenchComponent</b> has a <b>ComponentType</b>. The 
-            <b>ComponentType</b> defines a <i>componentTypeId</i>
-            , which indicates the specific kind of component. The Web Tools Platform
-            uses the <i>componentTypeId</i>
-            to determine how to work with the content component of the <b>WorkbenchComponent</b>
-            and prepare the component for deployment. The <b>ComponentType</b> may 
-            also define the runtime-paths of special metadata resources which are 
-            important to the <b>WorkbenchComponent</b>. "Metadata" refers to resources 
-            which explain the content details of the specific modules. An example of 
-            such a file would be the "WEB-INF/web.xml" deployment descriptor for 
-            Web Applications.
-        </p>
-        <p>
-            The <b>WorkbenchComponent</b> contains a list of ComponentResources. Each
-            <b>ComponentResource</b> has "sourcePath" and a corresponding
-            "runtimePath". The "sourcePath" can reference either a file or folder,
-            but the referenced resource must be contained in the same project as the
-            <b>WorkbenchComponent</b> definition. The "runtimePath" specifies a location
-            relative to the deployed structure of the <b>WorkbenchComponent</b> where the
-            contents of the referenced resource will be represented when the module is
-            prepared for runtime.
-        </p>
-        <p>
-            The <b>WorkbenchComponent</b> contains a list of <b>ReferencedComponent</b>s. 
-            Each <b>ReferencedComponent</b> provides a handle that must resolve to a 
-            <b>WorkbenchComponent</b>, a runtimePath that defines where the constructed 
-            component will be placed within the context of the runtime 
-            <b>WorkbenchComponent</b>, and a <b>DependencyType</b>
-            that can be either "consume" or "use" to indicate how the contents of
-            that <b>ReferencedComponent</b> should be absorbed by the <b>WorkbenchComponent</b>.
-            <b>ReferencedComponent</b>s may reference <b>WorkbenchComponent</b>s in 
-            other projects and on current project's classpath (Not yet implemented). 
-            The <b>DependencyType</b> will determine whether the contents of
-            the <b>ReferencedComponent</b> are absorbed as-is or archived into a *.{w|j|e}ar
-            file.
-        </p>
-        <p>
-            The <b>ProjectComponents</b> object provides a root container for all
-            <b>WorkbenchComponent</b>s defined in a given project.
-        </p>
-        <p>
-            <b>ComponentCore</b> provides a facade to manage the underlying model for
-            clients. Static methods
-            <code>ModuleCore.getModuleCoreForRead()</code>
-            and
-            <code>ModuleCore.getModuleCoreForWrite()</code>
-            may be used to acquire an ModuleCore adapter, and clients are responsible
-            for invoking
-            <code>dispose()</code>
-            whenever they are finished using the model.
-        </p>  
-		<a href="#top">top</a>
-		<a name="constraints"/>
-        <h2>Constraints enforced by the CCM</h2>
-        <p>
-            The following constraints are enforced by the model:
-            <ol>
-                <li>
-                    <p>
-                        The solution will not check dependencies for components that are
-                        contained in the same project. To get the full benefits of
-                        inter-component dependency checking, components must be separated
-                        into different projects. We do not have the necessary
-                        flexibility in constructing and scoping classpaths on a level
-                        more granular than the project level, which would be needed
-                        to support this functionality.
-                    </p>
-                </li>
-                <li>
-                    <p>
-                        The solution will not allow a single component to span more than
-                        one project. Within that project, we will have fairly broad
-                        flexibility to specify which resources map to which components.
-                        Each component within a project must have its own source folder,
-                        but a component may contain more than one source folder. Each
-                        source folder may be contained by at most one component. Components
-                        may reference dependent components in other projects (so a Web
-                        Application may reference a Web Library outside of the
-                        project that contains the Web Application).
-                    </p>
-                </li>
-                <li>
-                    <p>
-                        The solution will not allow more than one server target per
-                        component (and really per-project) at a time. The ability to
-                        switch this server target (via some action or property
-                        setting) will continue to be possible. Users that need the
-                        capability to develop for multiple server targets will need
-                        to manually switch and test as necessary.
-                    </p>
-                </li>
-                <li>
-                    <p>
-                        Each component in a project may have its own output folder
-                        structure automatically constructed for it. The output
-                        structure will match the J2EE specification output structure
-                        required for the component type (for J2EE modules). A new
-                        builder will handle this responsibility and work
-                        cooperatively with the Java builder to construct a
-                        deployable, on-disk representation of the module structure.
-                        The reference implementation will follow this pattern, but 
-                        hooks will be made available to vary this behavior.
-                        The necessity for this on-disk structure to match a
-                        J2EE-compliant layout is motivated by the requirement to have
-                        in-workbench testing, so that users will not have to deal
-                        with a deployer actually constructing a deployable module and
-                        shipping it off to a server to test their code. This approach
-                        is consistent with existing Ant-based approaches and
-                        Application Servers which can run in a "debug" mode on disk.
-                        Our value-add will be greater automation and integration with
-                        the workbench -- particularly for incremental based support.
-                        The specialized module builder would not be necessary if the
-                        source was already in the appropriate J2EE specification
-                        compliant structure. The default creation will still
-                        encourage a single module per project, which conforms to the
-                        correct J2EE structure.
-                    </p>
-                </li>
-                <li>
-                    <p>
-                        Components will be described using a simple XML format, and each
-                        project will contain one
-                        <I>.wtpmodules</I>
-                        file that will describe all of the components for that project.
-                        The level of tooling to help users create these files is yet
-                        to be determined for WTP M4. This would be a great area for
-                        other interested developers to suggest and provide tooling
-                        (e.g. a Wizard or Editor) to create these files from existing
-                        structures. A schema is provided to make it easier for
-                        consumers that want to build their own
-                        <I>.wtpmodules</I>
-                        by hand to take advantage of the content assist in the XML
-                        editor.
-                    </p>
-                </li>
-            </ol>
-        </p>  
-		<a href="#top">top</a>
-		<a name="module-core-examples"/>
-        <h2>ComponentCore API: Working with the metamodel</h2>
-        <BR />  
-        <p>
-			ComponentCore uses a handle based model much like the existing Platform 
-			Resource model. The ComponentCore facade is not tied to any project, and 
-			the handles that it returns may or may not exist. The complexity of 
-			managing the underlying EMF model is handled under the cover for users. 
-        </p> 
-        <img src="../../../../../overview/componentcore_package.jpg" caption="The ComponentCore API" />  
-        <!--
-        <p>
-            Clients should use one of
-            <code>ModuleCore.getModuleCoreForRead()</code>
-            or
-            <code>ModuleCore.getModuleCoreForWrite()</code>
-            to acquire an instance of ModuleCore.                         
-			<codesnippet caption="Acquiring an instance of ComponentCore for read-only access">
-IProject currentProject = ... 
-ModuleCore moduleCoreInstance = ModuleCore.getModuleCoreForRead(currentProject);
-WorkbenchComponent[] modules = moduleCoreInstance.getWorkbenchComponents(); 
-... work with modules ... 
-moduleCoreInstance.dispose();
-			</codesnippet> 
-        </p>
-        <p>
-            For clients that would like to build up their own models for a given
-            project, or modify the existing metamodel, the ModuleCore instance should
-            be acquired for write-access. 
-        </p>
-		<codesnippet caption="Creating a WorkbenchComponent">            
-...
-import org.eclipse.emf.common.util.URI; 
-...
-
-public static void createWebAppModule(IProject aTargetProject, 
-                      IFolder aJavaSourceFolder, 
-                      IFolder aWebContentFolder, 
-                      IResource aWebAppDeploymentDescriptor, 
-                      IProgressMonitor aProgressMonitor) 
-{
-    ModuleCore moduleCoreInstance = null;
-    try {
-        moduleCoreInstance = 
-            ModuleCore.getModuleCoreForWrite(aTargetProject);
-
-        /* Create a new module that will be 
-            contained by the current ModuleCore */
-        WorkbenchComponent newModule = 
-            moduleCoreInstance.createWorkbenchComponent("MyWebModule.war");
-
-        /* A Java source folder that contains 
-                the classes for the current module */
-        ComponentResource javaSource = 
-            moduleCoreInstance.createComponentResource(
-                                                aJavaSourceFolder);
-        javaSource.setDeployedPath(
-                            URI.createURI("/WEB-INF/classes"));
-        newModule.getResources().add(javaSource);
-
-        /* A resource folder that contains 
-            the *.jsp, *.html, .img, ... files */
-        ComponentResource webContent = 
-            moduleCoreInstance.createComponentResource(
-                                                    aWebContentFolder);
-        webContent.setDeployedPath(URI.createURI("/"));
-        newModule.getResources().add(webContent);
-
-        /* A resource that points to a valid web.xml 
-                file that follows the J2EE Web Deployment
-                Descriptor Specification
-         */
-        ComponentResource deploymentDescriptor = 
-            moduleCoreInstance.createComponentResource(
-                                                aWebAppDeploymentDescriptor);
-        deploymentDescriptor.setDeployedPath(
-                                    URI.createURI("/WEB-INF/web.xml"));
-        newModule.getResources().add(deploymentDescriptor);
-
-        moduleCoreInstance.saveIfNecessary(aProgressMonitor);
-    } finally {
-        if (moduleCoreInstance != null) {
-            moduleCoreInstance.dispose();
-        }
-    }
-}
-		</codesnippet>  
-        <p>
-            For clients that would like to take an existing project an add Flexible
-            Project Support, use the ModuleCoreNature.addModuleCoreIfNecessary() API
-            to prepare the project to support flexible module structures. the
-            existing metamodel, then acquire the ModuleCore instance for modification.
-        </p>
-		<codesnippet caption="Add Flexible Project support to a new or existing project">
-... 
-import org.eclipse.emf.common.util.URI; 
-...
-public static void makeFlexible(IProject aTargetProject) {
-    ModuleCore moduleCoreInstance = null;
-    try {
-        ModuleCoreNature.addModuleCoreNatureIfNecessary(aTargetProject);
-        moduleCoreInstance = ModuleCore.getModuleCoreForWrite(aTargetProject);
-        ... work with moduleCoreInstance and underlying model ...
-        moduleCoreInstance.saveIfNecessary(aProgressMonitor);
-    } finally {
-        if (moduleCoreInstance != null) {
-            moduleCoreInstance.dispose();
-        }
-    }
-}
-		</codesnippet> 
-		-->
-		<a href="#top">top</a>
-    </body>
-</html>    
-    
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualComponent.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualComponent.java
deleted file mode 100644
index 7de081d..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualComponent.java
+++ /dev/null
@@ -1,238 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.resources;
-
-import java.util.Properties;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-
-/**
- * Represents a component as defined by the .component file.
- * <p>
- * A component is a container of virtual resources which has other features that describe the
- * component including:
- * 
- * @plannedfor 1.0
- */
-public interface IVirtualComponent extends IAdaptable {
-	
-	IPath ROOT = new Path("/"); //$NON-NLS-1$
-	
-	/**
-	 * Type constant (bit mask value 1) which identifies component binary status.
-	 */
-	public static final int BINARY = 0x1;
-	
-	
-	/**
-	 * The name of the component must be unique within its enclosing project.
-	 * 
-	 * @return The name of the component.
-	 */
-	String getName();
-	
-	/**
-	 * @return The deployed name of the component.
-	 */
-	String getDeployedName();
-
-	/**
-	 * The componentTypeId is used to understand how this component should be edited and deployed.
-	 * Examples include "jst.web" or "jst.utility". The componentTypeId can be set to any value when
-	 * created so long as that value makes sense to the clients. Standard componentTypeIds may be
-	 * available for common component types.
-	 * 
-	 * @return The componentTypeId, a string based identifier that indicates the component
-	 */
-//	String getComponentTypeId();
-	
-	
-	/**
-	 * Returns reference to itself.
-	 * <p>
-	 *  
-	 * @return the name of the component that contains the virtual resource
-	 */
-	public IVirtualComponent getComponent();
-	
-
-	/**
-	 * 
-	 * The componentTypeId is used to understand how this component should be edited and deployed.
-	 * Examples include "jst.web" or "jst.utility". The componentTypeId can be set to any value when
-	 * created so long as that value makes sense to the clients. Standard componentTypeIds may be
-	 * available for common component types.
-	 * 
-	 * @param aComponentTypeId
-	 *            A value which is either standard for a common component type or client-defined for
-	 *            a custom component type
-	 */
-//	void setComponentTypeId(String aComponentTypeId);
-
-	/**
-	 * MetaProperties are String-based name-value pairs that include information about this
-	 * component that may be relevant to clients or the way that clients edit or deploy components.
-	 * 
-	 * @return A by-reference instance of the properties for this component.
-	 */
-	Properties getMetaProperties();
-	
-	/**
-	 * Adds a single property
-	 * @param property
-	 * 		A value which is name, value pair, see ComponentcoreFactory.eINSTANCE.createProperty()
-	 * 		
-	 */
-	void setMetaProperty(String name, String value);
-	
-	/**
-	 * Adds the properties provided as a list
-	 * @param properties
-	 * 			A list of properties
-	 */
-	void setMetaProperties(Properties properties);
-
-	/**
-	 * MetaResources provide a loose mechanism for components that would like to list off the
-	 * metadata-resources available in the component which can aid or expedite searching for this
-	 * resources.
-	 * <p>
-	 * Clients are not required to get or set the MetaResources for a component.
-	 * </p>
-	 * 
-	 * @return A by-value copy of the MetaResources array
-	 * @see #setMetaResources(IPath[])
-	 */
-	IPath[] getMetaResources();
-
-	/**
-	 * 
-	 * MetaResources provide a loose mechanism for components that would like to list off the
-	 * metadata-resources available in the component which can aid or expedite searching for this
-	 * resources.
-	 * <p>
-	 * Clients are not required to get or set the MetaResources for a component. The existing
-	 * MetaResources will be overwritten after the call to this method.
-	 * </p>
-	 * 
-	 * @param theMetaResourcePaths
-	 *            An array of paths that will become the new MetaResource array.
-	 */
-	void setMetaResources(IPath[] theMetaResourcePaths);
-
-
-	/**
-	 * Virtual components may reference other virtual components to build logical dependency trees. 
-	 * <p>
-	 * Each virtual reference will indicate how the content of the reference will be absorbed 
-	 * by this component. Each virtual reference will always specify an enclosing component that will
-	 * be this component.   
-	 * </p>
-	 * @return A by-value copy of the virtual reference array
-	 */
-	IVirtualReference[] getReferences();
-	/**
-	 * Virtual components may reference other virtual components to build logical dependency trees. 
-	 * <p>
-	 * Each virtual reference will indicate how the content of the reference will be absorbed 
-	 * by this component. Each virtual reference will always specify an enclosing component that will
-	 * be this component.   
-	 * </p>
-	 * @return A by-value copy of the virtual reference with given name, or null if none exist matching this name
-	 */
-	IVirtualReference getReference(String aComponentName);
-	
-	/**
-	 * Virtual components may reference other virtual components to build logical dependency trees. 
-	 * <p>
-	 * Each virtual reference will indicate how the content of the reference will be absorbed 
-	 * by this component. Each virtual reference will always specify an enclosing component that will
-	 * be this component. Any references specified in the array which do not specify an enclosing
-	 * component that matches this component will be modified to specify this virtual component. 
-	 * </p>
-	 * <p>
-	 * Existing virtual references will be overwritten when this method is called.
-	 * </p>
-	 * @param theReferences A by-value copy of the virtual reference array
-	 */
-	void setReferences(IVirtualReference[] theReferences);
-	
-	public void addReferences(IVirtualReference[] references);
-	
-	/**
-	 * Returns true if this component is of binary type
-	 * 
-	 * @return The binary status.
-	 */
-	boolean isBinary();		
-	
-	
-	/**
-	 * Create the underlying model elements if they do not already exist. Resources
-	 * may be created as a result of this method if the mapped path does not exist. 
-	 * 
-	 * @param updateFlags Any of IVirtualResource or IResource update flags. If a 
-	 * 			resource must be created, the updateFlags will be supplied to the 
-	 * 			resource creation operation.
-	 * @param aMonitor
-	 * @throws CoreException
-	 */
-	public void create(int updateFlags, IProgressMonitor aMonitor) throws CoreException; 
-	
-	/**
-	 * Returns a handle to the root folder.
-	 * <p> 
-	 * This is a resource handle operation; neither the container
-	 * nor the result need exist in the workspace.
-	 * The validation check on the resource name/path is not done
-	 * when the resource handle is constructed; rather, it is done
-	 * automatically as the resource is created.
-	 * </p>
-	 *
-	 * @param name the string name of the member folder
-	 * @return the (handle of the) member folder
-	 */
-	public IVirtualFolder getRootFolder();
-	
-	/**
-	 * Returns the project which contains the component. 
-	 * <p>
-	 * The name of the project may not (and most likely will not) be referenced in the 
-	 * runtime path of this virtual path, but will be referenced by the workspace-relative path. 
-	 * </p>
-	 * <p>
-	 * This is a resource handle operation; neither the resource nor the resulting project need
-	 * exist.
-	 * </p>
-	 * 
-	 * @return the project handle
-	 */
-	public IProject getProject();
-	
-	/**
-	 * Returns whether this component is backed by an accessible Component. 
-	 */
-	public boolean exists();
-	
-	/**
-	 * Returns the components which reference this component.  This is only a one layer
-	 * deep search algorithm.
-	 * 
-	 * @return array of IVirtualComponents
-	 */
-	public IVirtualComponent[] getReferencingComponents();
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualContainer.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualContainer.java
deleted file mode 100644
index c2411ad..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualContainer.java
+++ /dev/null
@@ -1,283 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.resources;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-/**
- * Represents a component as defined by the WTP Modules file. A 
- * virtual container represents the root of the component. 
- * <p>
- * Virtual containers can provide handles to virtual files and 
- * virtual folders that it contains. 
- * </p>
- * <p>
- * To acquire a handle to a component, use the following snippet:<br> 
- * <code>ModuleCore.createContainer(containingProject, componentName)</code>
- * which will create a handle to a virtual container contained by 
- * <i>containingProject</i> with the name <i>componentName</i>. If the 
- * a component of the given name exists, then 
- * {@link org.eclipse.wst.common.componentcore.resources.IVirtualResource#exists()}
- * will return true. Otherwise, use {@link #create(int, IProgressMonitor)} to 
- * create the relevant model elements. If a client needs to add a 
- * mapping from a folder in the same project to root, use 
- * {@link #createLink(IPath, int, IProgressMonitor)} with a 
- * project-relative path. 
- * <p>
- * This interface is not intended to be implemented by clients.
- * </p>
- * @plannedfor 1.0
- */
-public interface IVirtualContainer extends IVirtualResource {  
-
-	
-	/**
-	 * Create the underlying model elements if they do not already exist. Resources
-	 * may be created as a result of this method if the mapped path does not exist. 
-	 * 
-	 * @param updateFlags Any of IVirtualResource or IResource update flags. If a 
-	 * 			resource must be created, the updateFlags will be supplied to the 
-	 * 			resource creation operation.
-	 * @param aMonitor
-	 * @throws CoreException
-	 */
-	public void create(int updateFlags, IProgressMonitor aMonitor) throws CoreException; 
- 
- 
-	/**
-	 * Returns whether a virtual resource of some type with the given path 
-	 * exists relative to this resource.
-	 * The supplied path may be absolute or relative; in either case, it is
-	 * interpreted as relative to this resource.  Trailing separators are ignored.
-	 * If the path is empty this container is checked for existence.
-	 *
-	 * @param path the path of the resource
-	 * @return <code>true</code> if a resource of some type with the given path 
-	 *     exists relative to this resource, and <code>false</code> otherwise
-	 * @see IVirtualResource#exists()
-	 */
-	public boolean exists(IPath path);
-
-	/**
-	 * Finds and returns the member virtual resource (folder or file)
-	 * with the given name in this container, or <code>null</code> if no such
-	 * resource exists.
-	 * 
-	 *
-	 * @param name the string name of the member resource
-	 * @return the member resource, or <code>null</code> if no such
-	 * 		resource exists
-	 */
-	public IVirtualResource findMember(String name);
-
-	/**
-	 * Finds and returns the member resource (folder, or file)
-	 * with the given name in this container, or <code>null</code> if 
-	 * there is no such resource.
-	 * <p>
-	 * If the <code>includePhantoms</code> argument is <code>false</code>, 
-	 * only a member resource with the given name that exists will be returned.
-	 * If the <code>includePhantoms</code> argument is <code>true</code>,
-	 * the method also returns a resource if the workspace is keeping track of a
-	 * phantom with that name.
-	 * </p>
-	 * <p>
-	 * Note that no attempt is made to exclude team-private member resources
-	 * as with <code>members</code>.
-	 * </p>
-	 *
-	 * @param name the string name of the member resource
-	 * @param includePhantoms <code>true</code> if phantom resources are
-	 *   of interest; <code>false</code> if phantom resources are not of
-	 *   interest
-	 * @return the member resource, or <code>null</code> if no such
-	 * 		resource exists
-	 * @see #members()
-	 * @see IVirtualResource#isPhantom()
-	 */
-	public IVirtualResource findMember(String name, int searchFlags);
-
-	/**
-	 * Finds and returns the member resource identified by the given path in
-	 * this container, or <code>null</code> if no such resource exists.
-	 * The supplied path may be absolute or relative; in either case, it is
-	 * interpreted as relative to this resource.   Trailing separators and the path's
-	 * device are ignored. If the path is empty this container is returned.  
-	 *
-	 * @param path the path of the desired resource
-	 * @return the member resource, or <code>null</code> if no such
-	 * 		resource exists
-	 */
-	public IVirtualResource findMember(IPath path);
-
-	/**
-	 * Finds and returns the member resource identified by the given path in
-	 * this container, or <code>null</code> if there is no such resource.
-	 * The supplied path may be absolute or relative; in either case, it is
-	 * interpreted as relative to this resource.  Trailing separators and the path's
-	 * device are ignored.
-	 * If the path is empty this container is returned. 
-	 *
-	 * @param path the path of the desired resource
-	 * @param includePhantoms <code>true</code> if phantom resources are
-	 *   of interest; <code>false</code> if phantom resources are not of
-	 *   interest
-	 * @return the member resource, or <code>null</code> if no such
-	 * 		resource exists
-	 * @see #members(boolean)
-	 * @see IVirtualResource#isPhantom()
-	 */
-	public IVirtualResource findMember(IPath path, int searchFlags); 
-
-	/**
-	 * Returns a handle to the file identified by the given path in this
-	 * container.
-	 * <p> 
-	 * This is a resource handle operation; neither the resource nor
-	 * the result need exist in the workspace.
-	 * The validation check on the resource name/path is not done
-	 * when the resource handle is constructed; rather, it is done
-	 * automatically as the resource is created.
-	 * <p>
-	 * The supplied path may be absolute or relative; in either case, it is
-	 * interpreted as relative to this resource and is appended
-	 * to this container's full path to form the full path of the resultant resource.
-	 * A trailing separator is ignored. The path of the resulting resource must 
-	 * have at least two segments.
-	 * </p>
-	 *
-	 * @param path the path of the member file
-	 * @return the (handle of the) member file
-	 * @see #getFolder(IPath)
-	 */
-	public IVirtualFile getFile(IPath path);
-
-	/**
-	 * Returns a handle to the folder identified by the given path in this
-	 * container.
-	 * <p> 
-	 * This is a resource handle operation; neither the resource nor
-	 * the result need exist in the workspace.
-	 * The validation check on the resource name/path is not done
-	 * when the resource handle is constructed; rather, it is done
-	 * automatically as the resource is created. 
-	 * <p>
-	 * The supplied path may be absolute or relative; in either case, it is
-	 * interpreted as relative to this resource and is appended
-	 * to this container's full path to form the full path of the resultant resource.
-	 * A trailing separator is ignored. The path of the resulting resource must
-	 * have at least two segments.
-	 * </p>
-	 *
-	 * @param path the path of the member folder
-	 * @return the (handle of the) member folder
-	 * @see #getFile(IPath)
-	 */
-	public IVirtualFolder getFolder(IPath path); 
-
-	/**
-	 * Returns a handle to the file with the given name in this folder.
-	 * <p> 
-	 * This is a resource handle operation; neither the resource nor
-	 * the result need exist in the workspace.
-	 * The validation check on the resource name/path is not done
-	 * when the resource handle is constructed; rather, it is done
-	 * automatically as the resource is created.
-	 * </p>
-	 *
-	 * @param name the string name of the member file
-	 * @return the (handle of the) member file
-	 * @see #getFolder(String)
-	 */
-	public IVirtualFile getFile(String name);
-
-	/**
-	 * Returns a handle to the folder with the given name in this folder.
-	 * <p> 
-	 * This is a resource handle operation; neither the container
-	 * nor the result need exist in the workspace.
-	 * The validation check on the resource name/path is not done
-	 * when the resource handle is constructed; rather, it is done
-	 * automatically as the resource is created.
-	 * </p>
-	 *
-	 * @param name the string name of the member folder
-	 * @return the (handle of the) member folder
-	 * @see #getFile(String)
-	 */
-	public IVirtualFolder getFolder(String name);
-
-	/**
-	 * Returns a list of existing member resources (projects, folders and files)
-	 * in this resource, in no particular order.
-	 * <p>
-	 * This is a convenience method, fully equivalent to <code>members(IVirtualResource.NONE)</code>.
-	 * Team-private member resources are <b>not</b> included in the result.
-	 * </p><p>
-	 * Note that the members of a project or folder are the files and folders
-	 * immediately contained within it.  The members of the workspace root
-	 * are the projects in the workspace.
-	 * </p>
-	 *
-	 * @return an array of members of this resource
-	 * @exception CoreException if this request fails. Reasons include:
-	 * <ul>
-	 * <li> This resource does not exist.</li>
-	 * <li> This resource is a project that is not open.</li>
-	 * </ul>
-	 * @see #findMember(IPath)
-	 * @see IVirtualResource#isAccessible()
-	 */
-	public IVirtualResource[] members() throws CoreException;
-
-	/**
-	 * Returns a list of all member resources (projects, folders and files)
-	 * in this resource, in no particular order.
-	 * <p>
-	 * If the <code>INCLUDE_PHANTOMS</code> flag is not specified in the member 
-	 * flags (recommended), only member resources that exist will be returned.
-	 * If the <code>INCLUDE_PHANTOMS</code> flag is specified,
-	 * the result will also include any phantom member resources the
-	 * workspace is keeping track of.
-	 * </p><p>
-	 * If the <code>INCLUDE_TEAM_PRIVATE_MEMBERS</code> flag is specified 
-	 * in the member flags, team private members will be included along with
-	 * the others. If the <code>INCLUDE_TEAM_PRIVATE_MEMBERS</code> flag
-	 * is not specified (recommended), the result will omit any team private
-	 * member resources.
-	 * </p>
-	 * <p>
-	 * If the <code>EXCLUDE_DERIVED</code> flag is not specified, derived 
-	 * resources are included. If the <code>EXCLUDE_DERIVED</code> flag is 
-	 * specified in the member flags, derived resources are not included.
-	 * </p>
-	 *
-	 * @param memberFlags bit-wise or of member flag constants
-	 *   (<code>INCLUDE_PHANTOMS</code>, <code>INCLUDE_TEAM_PRIVATE_MEMBERS</code>
-	 *   and <code>EXCLUDE_DERIVED</code>) indicating which members are of interest
-	 * @return an array of members of this resource
-	 * @exception CoreException if this request fails. Reasons include:
-	 * <ul>
-	 * <li> This resource does not exist.</li>
-	 * <li> the <code>INCLUDE_PHANTOMS</code> flag is not specified and
-	 *     this resource does not exist.</li>
-	 * <li> the <code>INCLUDE_PHANTOMS</code> flag is not specified and
-	 *     this resource is a project that is not open.</li>
-	 * </ul>
-	 * @see IVirtualResource#exists()
-	 * @plannedfor 2.0
-	 */
-	public IVirtualResource[] members(int memberFlags) throws CoreException;
-	
-	public IVirtualResource[] getResources(String aResourceType);	
-}
- 
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualFile.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualFile.java
deleted file mode 100644
index c5d4440..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualFile.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.resources;
-
-import org.eclipse.core.resources.IFile;
-/**
- * Represents a file that can be navigated through 
- * an abstract ("virtual") path. 
- * <p>
- * This interface is not intended to be implemented by clients.
- * </p>
- * @plannedfor 1.0
- */
-public interface IVirtualFile extends IVirtualResource {  
-	/**
-	 * returns the underlying IFile, returns first IFile if multiple exist.
-	 * 
-	 * @return the underlying IFile
-	 */
-	public IFile getUnderlyingFile();
-	/**
-	 * returns the array of underlying IFiles that are mapped to the same runtime path.
-	 * 
-	 * @return the array of underlying IFiles mapped to the runtime path
-	 */
-	public IFile[] getUnderlyingFiles();
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualFolder.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualFolder.java
deleted file mode 100644
index 3519e84..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualFolder.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.resources;
-
-import org.eclipse.core.resources.IContainer;
-/**
- * Represents a folder that can be navigated through 
- * an abstract ("virtual") path.
- * <p>
- * This interface is not intended to be implemented by clients.
- * </p>
- * @plannedfor 1.0
- */
-public interface IVirtualFolder extends IVirtualContainer { 
-	/**
-	 * returns the underlying IFolder mapped to the runtime path, 
-	 * returns first IFolder if multiple exist.
-	 * 
-	 * @return the underlying IFolder
-	 */
-	public IContainer getUnderlyingFolder();
-	/**
-	 * returns the underlying IFolders mapped to the runtime path. 
-	 * Multiple IFolders can be mapped to the same runtime path.
-	 * 
-	 * @return the array of underlying IFolders
-	 */
-	public IContainer[] getUnderlyingFolders();
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualReference.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualReference.java
deleted file mode 100644
index 6ef2274..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualReference.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.resources;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.wst.common.componentcore.internal.DependencyType;
-
-/**
- * Represents a dependency between two components: EnclosingComponent->ReferencedComponent. 
- * <p>
- * The ReferencedComponent may exist in another project or as a binary form on the classpath 
- * of the project.
- * </p>
- * @plannedfor 1.0
- */
-public interface IVirtualReference {
-	
-	/**
-	 * Indicates that the dependency should be archived into a *.?ar format before being absorbed.
-	 */
-	int DEPENDENCY_TYPE_USES = DependencyType.USES;
-	/**
-	 * Indicates that the dependency will be absorbed as is without archiving. 
-	 */
-	int DEPENDENCY_TYPE_CONSUMES = DependencyType.CONSUMES;
-	
-	/**
-	 * Creates this virtual reference in model, if it doesn't already exist.
-	 * @param updateFlags Currently no update flags apply. 
-	 * @param aMonitor A progress monitor to track the completion of the operation
-	 */
-	public void create(int updateFlags, IProgressMonitor aMonitor);
-	
-	/**
-	 * Returns whether this reference actual exists in the model
-	 * @return whether this reference actual exists in the model
-	 */
-	public boolean exists();
-	
-	/**
-	 * The runtime path indicates where the contents of the referenced
-	 * component will be absorbed within the context of the enclosing component.
-	 * @param aRuntimePath A value component-relative path. 
-	 */
-	public void setRuntimePath(IPath aRuntimePath);
-	/**
-	 * The runtime path indicates where the contents of the referenced
-	 * component will be absorbed within the context of the enclosing component.
-	 * @return A value component-relative path. 
-	 */
-	public IPath getRuntimePath();
-	
-	/**
-	 * The dependencyType indicates how the contents of the referenced component will be absorbed.
-	 * @param aDependencyType One of DEPENDENCY_TYPE_USES or DEPENDENCY_TYPE_CONSUMES
-	 * @see #DEPENDENCY_TYPE_CONSUMES
-	 * @see #DEPENDENCY_TYPE_USES
-	 */
-	public void setDependencyType(int aDependencyType);
-	
-
-	/**
-	 * @return One of DEPENDENCY_TYPE_USES or DEPENDENCY_TYPE_CONSUMES
-	 * @see #DEPENDENCY_TYPE_CONSUMES
-	 * @see #DEPENDENCY_TYPE_USES
-	 */
-	public int getDependencyType();
-	
-	/**
-	 * The enclosing component contains this reference, and will absorb the contents of the referenced component
-	 * @return The enclosing component
-	 */
-	public IVirtualComponent getEnclosingComponent();
-	
-	/**
-	 * The referenced component is "targeted" by the reference, and will be absorbed by the enclosing component. 
-	 * @return the referenced component.
-	 */
-	public IVirtualComponent getReferencedComponent();
-	
-	/**
-	 * Set the referenced component that is "targeted" by the reference and will be absorbed by the enclosing component. 
-	 * @param referencedComponent
-	 */
-	public void setReferencedComponent(IVirtualComponent referencedComponent, EObject dependentObject);
-	
-	
-	/**
-	 * Get the archive name of the referenced component
-	 * @return
-	 */
-	public String getArchiveName();
-
-	/**
-	 * Set the archive name of the referenced component
-	 * @param archiveName
-	 */
-	public void setArchiveName(String archiveName);
-	
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualResource.java b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualResource.java
deleted file mode 100644
index eee8e16..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/IVirtualResource.java
+++ /dev/null
@@ -1,405 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.common.componentcore.resources;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-
-
-/**
- * <p>
- * Allows clients to work with flexible project structures 
- * using API similar to the Eclipse Platform IResource model.
- * </p>
- * <p>
- * IVirtualResource allows resources to be accessed through a
- * abstract path referred to as a "runtime path". 
- * A virtual resource may represent multiple underlying resources.
- * A virtual resource is contained by exactly one component.
- * A resource may be represented by multiple virtual resources, which
- * may be contained by one or more components. 
- * </p>
- * <p>
- * IVirtualResource allows clients to acquire
- * information about the underlying resource including the name, 
- * and the paths which are relevant to the current resource, such
- * as the {@link #getRuntimePath() runtime path}, the 
- * {@link #getWorkspaceRelativePath() workspace-relative path}
- * of the underlying resource, and the 
- * {@link #getProjectRelativePath() project-relative path}
- * of the underlying resource.
- * </p>
- * <a name="references" />
- * <p>Each IVirtualResource can represent an <b>implicit</b> reference or
- * an <b>explicit</b> reference. An <b>explicit</b> reference is a formal
- * mapping from some path within the file structure to a runtime path. Changing
- * or removing an explicit reference only requires model modifications. An 
- * <b>implicit</b> reference has a root which is derived from an explicit path,
- * but some fragment of the path towards the end is derived from the literal 
- * path within the file structure. Modifications to implicit paths may cause 
- * changes to structure on disk. For resource modifications that should not modify
- * structures on disk, use {@link #IGNORE_UNDERLYING_RESOURCE}.
- * </p>
- * <p>
- * This interface is not intended to be implemented by clients.
- * </p>
- * @plannedfor 1.0
- */
-public interface IVirtualResource extends ISchedulingRule, IAdaptable {  
-																	
-
-	/*
-	 * ==================================================================== 
-	 * Constants defining resource types: There are four possible resource 
-	 * types and their type constants are in the hex range 0x10 to 0x80 
-	 * as defined below.
-	 * ====================================================================
-	 */
-
-	/**
-	 * Type constant (bit mask value 16) which identifies file resources.
-	 * 
-	 * @see IVirtualResource#getType()
-	 * @see IVirtualFile
-	 */
-	public static final int FILE = 0x10;
-
-	/**
-	 * Type constant (bit mask value 32) which identifies folder resources.
-	 * 
-	 * @see IVirtualResource#getType()
-	 * @see IVirtualFolder
-	 */
-	public static final int FOLDER = 0x20;
-
-	/**
-	 * Type constant (bit mask value 64) which identifies the root resource.
-	 * 
-	 * @see IVirtualResource#getType()
-	 * @see IVirtualContainer
-	 */
-	public static final int COMPONENT = 0x40;
-	
-	/**
-	 * General purpose zero-valued bit mask constant. Useful whenever you need to supply a bit mask
-	 * with no bits set.
-	 * <p>
-	 * Example usage: <code>
-	 * <pre>
-	 * delete(IVirtualResource.NONE, null)
-	 * </pre>
-	 * </code>
-	 * </p>
-	 * 
-	 * @plannedfor 2.0
-	 */
-	public static final int NONE = 0;
-
-	/*
-	 * ==================================================================== Constants for update
-	 * flags for delete, move, copy, open, etc.:
-	 * ====================================================================
-	 */
-
-	/**
-	 * Update flag constant (bit mask value 256) indicating that the operation should proceed even if
-	 * the resource is out of sync with the local file system.
-	 * 
-	 * @plannedfor 2.0
-	 */
-	public static final int FORCE = 0x100; 
-
-	/**
-	 * Indicates that exclusions enumerated in the model should be ignored. (bit mask value 512)  
-	 */
-	public static final int IGNORE_EXCLUSIONS = 0x200;
-
-	/**
-	 * Indicates that modifications should only modify the metamodel and ignore the underlying
-	 * resources where applicable.  See the 
-	 * <a href="IVirtualResource.html#references">documentation on references</a> 
-	 * for more information on why this flag is relevant. (bit mask value 1024)  
-	 */
-	public static final int IGNORE_UNDERLYING_RESOURCE = 0x400;  
-	
-	/**
-	 * Create a mapping from the supplied location to the runtime path of this 
-	 * virtual resource. Model changes will occur as a result of this method, 
-	 * and potentially resource-level creations as well.
-	 * 
-	 * @param aProjectRelativeLocation A project relative location that will be represented by the runtime path after this call
-	 * @param updateFlags A bitmask of flags to supply to the method. 
-	 * @param monitor
-	 * @throws CoreException
-	 */
-	public void createLink(IPath aProjectRelativeLocation, int updateFlags, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Removes the mapping, if it exists, from the supplied location to the runtime path of this 
-	 * virtual resource. Model changes will occur as a result of this method, 
-	 * and potentially resource-level creations as well.
-	 * 
-	 * @param aProjectRelativeLocation A project relative location whose mapping to the runtime path of this object should be removed.
-	 * @param updateFlags A bitmask of flags to supply to the method. 
-	 * @param monitor
-	 * @throws CoreException
-	 */
-	public void removeLink(IPath aProjectRelativeLocation, int updateFlags, IProgressMonitor monitor) throws CoreException;
-
-	
-	/**   
-	 * Remove the resource from the flexible structure. Removing the resource could require
-	 * changes to the underlying metamodel or changes to the file structure. To avoid
-	 * changes the actual disk structure, use {@link #IGNORE_UNDERLYING_RESOURCE}.
-	 * <p>
-	 * Update flags supplied to this method will be passed into any IResource modification
-	 * API which is called as a result of this method's invocation.  
-	 * </p>
-	 * @see #IGNORE_UNDERLYING_RESOURCE
-	 * @see IResource#delete(int, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void delete(int updateFlags, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Compares two objects for equality; for resources, equality is defined in terms of their
-	 * handles: same resource type, equal full paths, and identical workspaces. Resources are not
-	 * equal to objects other than resources.
-	 * 
-	 * @param other
-	 *            the other object
-	 * @return an indication of whether the objects are equals
-	 * @see #getType()
-	 * @see #getWorkspaceRelativePath() 
-	 */
-	public boolean equals(Object other);
-
-	/**
-	 * Returns whether this virtual resource is backed by an accessible IResource. 
-	 * <p>
-	 * <code>IVirtualResource</code> objects are lightweight handle objects used to access
-	 * IResources. However, having an IVirtualResource handle does not necessarily mean the
-	 * underlying resource represented by the handle exists in the workspace, or is accessible.
-	 * For more detailed information concerning the existence or accessibility of the underlying 
-	 * resource, {@link #getUnderlyingResource()}.
-	 * </p>
-	 * 
-	 * @return <code>true</code> if the underlying resource exists and is accessible, otherwise <code>false</code>
-	 * @see org.eclipse.core.resources.IResource#exists()
-	 * @see #getUnderlyingResource();
-	 */
-	public boolean exists();
-
-	/**
-	 * Returns the file extension portion of this virtual resource's name, or <code>null</code> if it does
-	 * not have one. The file extension of the virtual resource will be returned, which may or may not match
-	 * that of the underlying resource. 
-	 * <p>
-	 * The file extension portion is defined as the string following the last period (".") character
-	 * in the name. If there is no period in the name, the path has no file extension portion. If
-	 * the name ends in a period, the file extension portion is the empty string.
-	 * </p>
-	 * <p>
-	 * This is a resource handle operation; the resource need not exist.
-	 * </p>
-	 * 
-	 * @return a string file extension
-	 * @see #getName()
-	 */
-	public String getFileExtension();
-
-	/**
-	 * Returns the full, absolute path of the underlying resource relative to the workspace.
-	 * <p>
-	 * This is a resource handle operation; the resource need not exist. If this resource does
-	 * exist, its path can be safely assumed to be valid.
-	 * </p>
-	 * 
-	 * @return the absolute path of this resource
-	 * @see #getProjectRelativePath()
-	 * @see IResource#getFullPath()
-	 */
-	public IPath getWorkspaceRelativePath();
-
-
-	/**
-	 * Returns a relative path of the underlying resource with respect to its project.  
-	 * <p>
-	 * This is a resource handle operation; the resource need not exist. If this resource does
-	 * exist, its path can be safely assumed to be valid.
-	 * </p>
-	 * <p>
-	 * Project-relative paths are recommended over absolute paths, since the former are not affected
-	 * if the project is renamed.
-	 * </p>
-	 * 
-	 * @return the relative path of this resource with respect to its project
-	 * @see #getWorkspaceRelativePath()
-	 * @see #getProject()
-	 * @see IResource#getProjectRelativePath()
-	 */
-	public IPath getProjectRelativePath();
-
-	/**
-	 * Returns the runtime path of this virtual resource. The runtime path
-	 * is determined through the metamodel and represents the path that the
-	 * underlying resource will be accessed at runtime. 
-	 * 
-	 * @return the runtime path of this virtual resource
-	 */
-	public IPath getRuntimePath();
-
-	/**
-	 * Returns the name of this virtual resource. The name of a virtual resource 
-	 * is synonymous with the last segment of its runtime path.
-	 * <p>
-	 * This is a resource handle operation; the resource need not exist.
-	 * </p>
-	 * <p>
-	 * If this resource exists, its name can be safely assumed to be valid.
-	 * </p>
-	 * 
-	 * @return the name of the virtual resource
-	 * @see #getRuntimePath()
-	 */
-	public String getName();
-
-	/**
-	 * Returns the name of the component that contains this virtual resource.
-	 * <p>
-	 * Each virtual resource is contained by at least one component. A component
-	 * represents a logical collection of files. If the underlying resource is 
-	 * contained by multiple components, then the component name returned by
-	 * this method will be determined by how the virtual resource was created. 
-	 * For each virtual resource, the component name will be the same as the 
-	 * component name of the parent.
-	 *  
-	 * @return the name of the component that contains the virtual resource
-	 */
-	public IVirtualComponent getComponent();
-
-	/**
-	 * Returns the virtual resource which contains this virtual resource, or <code>null</code> if it has
-	 * no parent (that is, the virtual resource represents the root of the component).
-	 * <p>
-	 * The full path of the parent resource is the same as this resource's full path with the last
-	 * segment removed.
-	 * </p>
-	 * <p>
-	 * This is a resource handle operation; neither the resource nor the resulting resource need
-	 * exist.
-	 * </p>
-	 * 
-	 * @return the container of the virtual resource, or <code>null</code> if this virtual resource represents the root of the component
-	 */
-	public IVirtualContainer getParent();
-
-	/**
-	 * Returns the project which contains the component which contains this virtual resource. 
-	 * <p>
-	 * The name of the project may not (and most likely will not) be referenced in the 
-	 * runtime path of this virtual path, but will be referenced by the workspace-relative path. 
-	 * </p>
-	 * <p>
-	 * This is a resource handle operation; neither the resource nor the resulting project need
-	 * exist.
-	 * </p>
-	 * 
-	 * @return the project handle
-	 */
-	public IProject getProject();
-
-	/**
-	 * Returns the type of this resource. The returned value will be one of <code>FILE</code>,
-	 * <code>FOLDER</code>, <code>COMPONENT</code>
-	 * <p>
-	 * <ul>
-	 * <li> All resources of type <code>FILE</code> implement <code>IVirtualFile</code>.</li>
-	 * <li> All resources of type <code>FOLDER</code> implement <code>IVirtualFolder</code>.</li>
-	 * <li> All resources of type <code>COMPONENT</code> implement <code>IVirtualContainer</code>.</li>
-	 * </ul>
-	 * </p>
-	 * <p>
-	 * This is a resource handle operation; the resource need not exist in the workspace.
-	 * </p>
-	 * 
-	 * @return the type of this resource
-	 * @see #FILE
-	 * @see #FOLDER
-	 * @see #COMPONENT
-	 */
-	public int getType();
-	
-	/**
-	 * A virtual resource is a representation of one or more Eclipse Platform resources. 
-	 * <p>
-	 * Returns the "primary" underlying resource. The resource may or may not exist. The resource
-	 * will be contained by the project returned by {@link #getProject()}.  
-	 * </p>
-	 * <p>
-	 * Since a virtual resource could represent multiple resources, this method will return 
-	 * the "primary" resource. For clients that wish to take advantage of the multiple resources
-	 * at a single path, use {@link #getUnderlyingResources()}. 
-	 * @return The primary resource that backs this virtual resource.
-	 */
-	public IResource getUnderlyingResource();
-	
-	/**
-	 * A virtual resource is a representation of one or more Eclipse Platform resources. 
-	 * <p>
-	 * Returns all underlying resources. The resources may or may not exist. The resources
-	 * will be contained by the project returned by {@link #getProject()}.  
-	 * </p>
-	 * <p>
-	 * Since a virtual resource could represent multiple resources, this method will return 
-	 * all underlying resources. For clients that prefer to acknowledge only one resource, 
-	 * at a single path, use {@link #getUnderlyingResource()}. 
-	 * @return All resources that back this virtual resource.
-	 */
-	public IResource[] getUnderlyingResources(); 
-
-	/**
-	 * Returns whether this resource is accessible. For files and folders, this is equivalent to
-	 * existing; for projects, this is equivalent to existing and being open. The workspace root is
-	 * always accessible.
-	 * 
-	 * @return <code>true</code> if this resource is accessible, and <code>false</code>
-	 *         otherwise
-	 * @see #exists()
-	 * @see IProject#isOpen()
-	 */
-	public boolean isAccessible();
-	
-	/**
-	 * The resourceType provides meta-information about the types of content this virtual resource may represent. Examples
-	 * include "java", "resources", "bpel", etc. 
-	 * <p>
-	 * The resourceType may be null, and {@link IVirtualComponent} will always return null for this method. 
-	 * </p>
-	 * @return A client-set resourceType string
-	 */
-	public String getResourceType();
-	
-	/**
-	 * The resourceType provides meta-information about the types of content this virtual resource may represent. Examples
-	 * include "java", "resources", "bpel", etc. 
-	 * <p>
-	 * The resourceType may be null, and {@link IVirtualComponent} will always return null for this method. 
-	 * </p>
-	 * @param A client-set resourceType string
-	 */
-	public void setResourceType(String aResourceType);
-
-}
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/package.html b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/package.html
deleted file mode 100644
index d791ba2..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/package.html
+++ /dev/null
@@ -1,80 +0,0 @@
-<html>
-<head>
-<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<link rel="stylesheet" href="../../../../..//apistyles.css" type="text/css">
-<title>modulecore resources api overview</title>
-</head>
-<body>
-<p>
-        The ComponentCore Virtual Path API allows clients to navigate 
-        logical collections of files within Eclipse projects using API 
-        similar to the Eclipse IResource API. 
-		</p>
-<a name="top"></a><a name="virtual-path"></a>
-<table width="100%" cellspacing="5" cellpadding="2" border="0">
-<tbody>
-<tr>
-<td valign="top" bgcolor="#0080c0" align="left" colspan="2"><b><font face="Arial,Helvetica" color="#ffffff">Virtual Path API</font></b></td>
-</tr>
-</tbody>
-</table>
-<BR>
-<table width="500">
-<tr>
-<td>
-<p>
-	        The Virtual Path API provides a facade to the flexible project model. 
-	        Each IVirtualResource represents a resource from the runtime component 
-	        under a virtual runtime path. Each IVirtualResource may represent one 
-	        or more Eclipse Platfrom resources located at the same runtime path.
-        </p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>
-        	Each IVirtualResource is contained by exactly one IVirtualComponent. 
-        	However, the underlying resources that are represented by the 
-        	IVirtualResource may be contained by multiple IVirtualComponents. 
-        	IVirtualComponents are contained by IFlexibleProjects. Each
-        	IFlexibleProject may contain one or more IVirtualComponents. 
-        </p>
-</td>
-</tr>
-</table>
-<table cellpadding="10" cellspacing="10">
-<tr>
-<td>
-<p>
-<img src="../../../../../../overview/mapping.jpg"></p>
-</td>
-</tr>
-<tr>
-<td>
-<p>
-<i>Figure 1: A visual representation of a possible mapping between a Virtual structure and a Platform Resource structure.</i>
-</p>
-</td>
-</tr>
-</table>
-<table cellpadding="10" cellspacing="10">
-<tr>
-<td>
-<p>
-<img src="../../../../../../overview/virtual_path_api.jpg"></p>
-</td>
-</tr>
-<tr>
-<td>
-<p>
-<i>Figure 2: Virtual Path Model</i>
-</p>
-</td>
-</tr>
-</table>
-<a href="#top">top</a>
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/package.xml b/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/package.xml
deleted file mode 100644
index 5999f55..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/modulecore-src/org/eclipse/wst/common/componentcore/resources/package.xml
+++ /dev/null
@@ -1,88 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<html>
-    <head>
-        <meta
-            name="root"
-            content="../../../../../" />
-        <title>component core resources api overview</title>
-    </head>
-
-    <body>  
-		<abstract>
-        The ComponentCore Virtual Path API allows clients to navigate 
-        logical collections of files within Eclipse projects using API 
-        similar to the Eclipse IResource API. 
-		</abstract>
-
-		<a name="top"/>
-		<!--
-		<p>
-			The following document includes information on these topics:
-			<ul>
-				<li><a href="#virtual-path">Pointer 1</a> A description</li>  
-			</ul>
-		</p>
-		-->
-		<a name="virtual-path"/>
-        <h2>Virtual Path API</h2>
-        <BR /> 
-        <p>
-	        The Virtual Path API provides a facade to the flexible project model. 
-	        Each IVirtualResource represents a resource from the runtime component 
-	        under a virtual runtime path. Each IVirtualResource may represent one 
-	        or more Eclipse Platfrom resources located at the same runtime path.
-        </p>
-        <p>
-        	Each IVirtualResource is contained by exactly one IVirtualComponent. 
-        	However, the underlying resources that are represented by the 
-        	IVirtualResource may be contained by multiple IVirtualComponents. 
-        	IVirtualComponents are contained by IFlexibleProjects. Each
-        	IFlexibleProject may contain one or more IVirtualComponents. 
-        </p>
-        <img src="../../../../../../overview/mapping.jpg" 
-        	 caption="A visual representation of a possible mapping between a Virtual structure and a Platform Resource structure." 
-        	 width="600" height="466"
-        	 />
-        <img src="../../../../../../overview/virtual_path_api.jpg" caption="Virtual Path Model" />
-        <!--
-        <codesnippet caption="An example snippet.">
-... 
-import org.eclipse.emf.common.util.URI; 
-...
-public static void makeFlexible(IProject aTargetProject) {
-    ModuleCore moduleCoreInstance = null;
-    try {
-        ModuleCoreNature.addModuleCoreNatureIfNecessary(aTargetProject);
-        moduleCoreInstance = ModuleCore.getModuleCoreForWrite(aTargetProject);
-        ... work with moduleCoreInstance and underlying model ...
-        moduleCoreInstance.saveIfNecessary(aProgressMonitor);
-    } finally {
-        if (moduleCoreInstance != null) {
-            moduleCoreInstance.dispose();
-        }
-    }
-}        
-        </codesnippet>
-        <codesnippet caption="An example snippet.">
-... 
-import org.eclipse.emf.common.util.URI; 
-...
-public static void makeFlexible(IProject aTargetProject) {
-    ModuleCore moduleCoreInstance = null;
-    try {
-        ModuleCoreNature.addModuleCoreNatureIfNecessary(aTargetProject);
-        moduleCoreInstance = ModuleCore.getModuleCoreForWrite(aTargetProject);
-        ... work with moduleCoreInstance and underlying model ...
-        moduleCoreInstance.saveIfNecessary(aProgressMonitor);
-    } finally {
-        if (moduleCoreInstance != null) {
-            moduleCoreInstance.dispose();
-        }
-    }
-}        
-        </codesnippet>
-        -->
-		<a href="#top">top</a>
-    </body>
-</html>    
-    
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/plugin.properties b/plugins/org.eclipse.wst.common.modulecore/plugin.properties
deleted file mode 100644
index 883476b..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/plugin.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2007 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-provider=Eclipse.org
-
-Bundle-Name.0 = Modulecore Plug-in
-ValidationMarker.name=ModuleCore Validation Marker
-Validator.name=ModuleCore Validator
-Nature.name=Web Properties
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/plugin.xml b/plugins/org.eclipse.wst.common.modulecore/plugin.xml
deleted file mode 100644
index 569dd44..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/plugin.xml
+++ /dev/null
@@ -1,143 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <extension
-         point="org.eclipse.emf.ecore.generated_package">
-      <package
-            uri="componentcore.xmi"
-            class="org.eclipse.wst.common.componentcore.internal.ComponentcorePackage">
-      </package>
-   </extension>   
-   
-   <!--============================-->
-   <!-- Module Core Project Nature Contributions-->
-   <!--============================-->
-   <extension
-         id="ModuleCoreNature"
-         name="%Nature.name"
-         point="org.eclipse.core.resources.natures">
-      <runtime>
-         <run
-               class="org.eclipse.wst.common.componentcore.ModuleCoreNature">
-         </run>
-      </runtime>
-   </extension>
-   <extension
-         point="org.eclipse.wst.common.emfworkbench.integration.editModel">
-      <editModel
-            editModelID="org.eclipse.wst.modulecore.structuralModel"
-            factoryClass="org.eclipse.wst.common.componentcore.internal.impl.ModuleStructuralModelFactory">
-         <editModelResource
-               autoload="false"
-               URI=".settings/org.eclipse.wst.common.component"/>
-      </editModel> 
-   </extension>
-	
-	<extension point="org.eclipse.core.runtime.contentTypes">
- 			<file-association
-				content-type="org.eclipse.core.runtime.xml"
-				file-names="org.eclipse.wst.common.component"/>
-			<file-association
-				content-type="org.eclipse.core.runtime.xml"
-				file-names=".component"/>
-			<file-association
-				content-type="org.eclipse.core.runtime.xml"
-				file-names=".wtpmodules"/>
-	</extension>
-
-	<extension point="org.eclipse.team.core.ignore">
-		<ignore
-        enabled="true"
-        pattern=".deployables"/>
-	</extension>
-	<extension-point id="ComponentProjectMigrator" name="ComponentProjectMigrator" schema="schema/ComponentProjectMigrator.exsd"/>
-	<extension-point id="artifactedit" name="Component Artifact Edit" schema="schema/artifactedit.exsd"/>
-    <extension-point id="componentimpl" name="componentimpl" schema="schema/componentimpl.exsd"/>
-	<extension-point id="resourceFactories" name="Resource Factory Association (Internal)" schema="schema/resourceFactories.exsd"/>
-	
-	<!-- Contribute a URIResolverExtension for flexible projects -->
-	<extension point="org.eclipse.wst.common.uriresolver.resolverExtensions">
-      <resolverExtension
-            stage="prenormalization"
-            class="org.eclipse.wst.common.componentcore.internal.util.ComponentResolver">
-            <projectNature value="org.eclipse.wst.common.modulecore.ModuleCoreNature" />
-			<projectNature value="org.eclipse.wst.web.StaticWebNature"/>
-      </resolverExtension>
-   </extension>
-   
-  <extension point="org.eclipse.core.runtime.adapters">
-    <factory 
-      class="org.eclipse.wst.common.componentcore.datamodel.FacetDataModelConfigAdapter$Factory" 
-      adaptableType="org.eclipse.wst.common.frameworks.datamodel.IDataModel">
-      <adapter type="org.eclipse.wst.common.project.facet.core.ActionConfig"/>
-    </factory>
-  </extension>
-  
-  <extension
-         id="ModuleCoreValidator"
-         name="%Validator.name"
-         point="org.eclipse.wst.validation.validator">
-      <validator>
-      	<projectNature
-               id="org.eclipse.wst.common.modulecore.ModuleCoreNature">
-         </projectNature>
-         <filter
-               objectClass="org.eclipse.core.resources.IFile"
-               caseSensitive="false"
-               nameFilter="*.wtpmodules">
-         </filter>
-         <filter
-               objectClass="org.eclipse.core.resources.IFile"
-               caseSensitive="false"
-               nameFilter="*.component">
-         </filter>
-		   <markerId
-               	   markerIdValue="ModuleCoreValidatorMarker">
-         </markerId>
-         <helper      
-               class="org.eclipse.wst.common.componentcore.internal.ModuleCoreValidatorHelper">
-         </helper>
-         <run
-               class="org.eclipse.wst.common.componentcore.internal.ModuleCoreValidator">
-         </run>
-      </validator>
-   </extension>
-
-<extension
-         id="ModuleCoreValidatorMarker"
-         name="%ValidationMarker.name"
-         point="org.eclipse.core.resources.markers">
-      <super
-            type="org.eclipse.wst.validation.problemmarker">
-      </super>
-      <persistent
-            value="true">
-      </persistent>
-      <attribute
-            name="owner">
-      </attribute>
-      <attribute
-            name="validationSeverity">
-      </attribute>
-      <attribute
-            name="targetObject">
-      </attribute>
-      <attribute
-            name="groupName">
-      </attribute>
-      <attribute
-            name="messageId">
-      </attribute>
-</extension> 
-
-   <!-- Register the nature id with the EMFNature -->
-   <extension
-         point="org.eclipse.jem.util.nature_registration">
-      <nature
-            id="org.eclipse.wst.common.modulecore.ModuleCoreNature">
-      </nature>
-   </extension> 
-  
-   
-</plugin>
diff --git a/plugins/org.eclipse.wst.common.modulecore/schema/ComponentProjectMigrator.exsd b/plugins/org.eclipse.wst.common.modulecore/schema/ComponentProjectMigrator.exsd
deleted file mode 100644
index 507ed10..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/schema/ComponentProjectMigrator.exsd
+++ /dev/null
@@ -1,103 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.common.modulecore">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.common.modulecore" id="ComponentProjectMigrator" name="Component Project Migrator"/>
-      </appInfo>
-      <documentation>
-         This allows specific implementations of components to contribute migrators Those plugins have dependencies on the modulecore plugin, but not vice versa. In order for code defined within the modulecore plugin to execute these actions, we need this extension point.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="migratorExtension"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="migratorExtension">
-      <complexType>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The class for the migrator.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which accompanies 
-this distribution, and is available at &lt;a
-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.common.modulecore/schema/artifactedit.exsd b/plugins/org.eclipse.wst.common.modulecore/schema/artifactedit.exsd
deleted file mode 100644
index c46f74e..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/schema/artifactedit.exsd
+++ /dev/null
@@ -1,112 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.common.modulecore">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.common.modulecore" id="artifactedit" name="Component Artifact Edit"/>
-      </appInfo>
-      <documentation>
-         This is for INTERNAL use only!  It is used for the base artifact edit types only.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point 
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance 
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance 
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="artifactedit">
-      <complexType>
-         <attribute name="typeID" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The type this artifactEdit contributes to, for example, the facet id which is associated with projects which should use this artifactEdit.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The name of the actual artifact edit class implementation which extends org.eclipse.wst.common.componentcore.ArtifactEdit.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which accompanies 
-this distribution, and is available at &lt;a
-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.common.modulecore/schema/componentCore.xsd b/plugins/org.eclipse.wst.common.modulecore/schema/componentCore.xsd
deleted file mode 100644
index a2d8828..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/schema/componentCore.xsd
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.eclipse.org/webtools/moduleCore" xmlns:tns="http://www.eclipse.org/webtools/moduleCore">

-	<element name="project-modules">

-		<complexType>

-			<sequence minOccurs="1" maxOccurs="unbounded">

-				<element name="wb-module">

-					<complexType>

-                        <sequence minOccurs="0" maxOccurs="1">

-                        	<element name="module-type">

-                        		<complexType>

-                        			<attribute name="module-type-id"

-                        				type="string">

-                        			</attribute>

-                        		</complexType>

-                        	</element>

-                        	<sequence minOccurs="0" maxOccurs="unbounded">

-                        		<element name="wb-resource">

-                                    <complexType>

-                                    	<attribute name="source-path"

-                                    		type="string" use="required">

-                                    	</attribute>

-                                    	<attribute name="deploy-path"

-                                    		type="string" use="required">

-                                    	</attribute>

-                                    </complexType>

-                        		</element>

-                        	</sequence>

-                        	<sequence minOccurs="0" maxOccurs="unbounded">

-                        		<element name="dependent-module">

-                                    <complexType>

-                                    	<attribute name="handle"

-                                    		type="string" use="required">

-                                    	</attribute>

-                                    	<attribute name="deploy-path"

-                                    		type="string" use="required">

-                                    	</attribute>

-                                    	<attribute name="dependency-type"

-                                    		type="string">

-                                    	</attribute>

-                                    </complexType>

-                        		</element>

-                        	</sequence>

-                        </sequence>

-                        <attribute name="deploy-name" type="string" use="required"></attribute>

-					</complexType>

-				</element>

-			</sequence>

-			<attribute name="id" type="string"></attribute>

-		</complexType>

-	</element>

-

-</schema>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.modulecore/schema/componentimpl.exsd b/plugins/org.eclipse.wst.common.modulecore/schema/componentimpl.exsd
deleted file mode 100644
index 667317e..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/schema/componentimpl.exsd
+++ /dev/null
@@ -1,104 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.common.modulecore" xmlns="http://www.w3.org/2001/XMLSchema">
-<annotation>
-      <appinfo>
-         <meta.schema plugin="org.eclipse.wst.common.modulecore" id="componentimpl" name="componentimpl"/>
-      </appinfo>
-      <documentation>
-         [Enter description of this extension point.]
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appinfo>
-                  <meta.attribute translatable="true"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="componentimpl">
-      <complexType>
-         <attribute name="typeID" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appinfo>
-                  <meta.attribute kind="java" basedOn=":org.eclipse.wst.common.componentcore.resources.IVirtualComponent"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="since"/>
-      </appinfo>
-      <documentation>
-         [Enter the first release in which this extension point appears.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="examples"/>
-      </appinfo>
-      <documentation>
-         [Enter extension point usage example here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="apiInfo"/>
-      </appinfo>
-      <documentation>
-         [Enter API information here.]
-      </documentation>
-   </annotation>
-
-
-   <annotation>
-      <appinfo>
-         <meta.section type="implementation"/>
-      </appinfo>
-      <documentation>
-         [Enter information about supplied implementation of this extension point.]
-      </documentation>
-   </annotation>
-
-
-</schema>
diff --git a/plugins/org.eclipse.wst.common.modulecore/schema/resourceFactories.exsd b/plugins/org.eclipse.wst.common.modulecore/schema/resourceFactories.exsd
deleted file mode 100644
index 49f7a80..0000000
--- a/plugins/org.eclipse.wst.common.modulecore/schema/resourceFactories.exsd
+++ /dev/null
@@ -1,154 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.common.modulecore" xmlns="http://www.w3.org/2001/XMLSchema">
-<annotation>
-      <appinfo>
-         <meta.schema plugin="org.eclipse.wst.common.modulecore" id="resourceFactories" name="Resource Factory Association (Internal)"/>
-      </appinfo>
-      <documentation>
-         An *internal* extension point that declares an association between a short-segment filename and a Resource.Factory.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <annotation>
-         <appinfo>
-            <meta.element />
-         </appinfo>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="resourceFactory"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appinfo>
-                  <meta.attribute translatable="true"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="resourceFactory">
-      <annotation>
-         <documentation>
-            Associates a short name (e.g. &quot;web.xml&quot;) with the appropriate Resource.Factory to create the Resource type when loading files of the declared shortname.
-         </documentation>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="contentTypeBinding" minOccurs="0" maxOccurs="1"/>
-         </sequence>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  Declares an implementation of &lt;code&gt;org.eclipse.emf.ecore.resource.Resource.Factory&lt;/code&gt;.
-               </documentation>
-               <appinfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.emf.ecore.resource.Resource.Factory"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-         <attribute name="shortSegment" type="string">
-            <annotation>
-               <documentation>
-                  Optionally declares the short segment of a filename that the resource factory applies to (e.g. &quot;web.xml&quot;).
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="isDefault" type="boolean" use="default" value="true">
-            <annotation>
-               <documentation>
-                  If multiple factories are declared for the same fileName - then the &quot;default&quot; is used.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="overridesFactoryClass" type="string">
-            <annotation>
-               <documentation>
-                  This optional attribute is to resolve conflicts between multiple defeault factories registered to the same content type and short segments.  The value should be the fully qualified class name of the factory being overridden.
-               </documentation>
-               <appinfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.emf.ecore.resource.Resource.Factory:"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="contentTypeBinding">
-      <annotation>
-         <appinfo>
-            <meta.element labelAttribute="contentTypeId"/>
-         </appinfo>
-         <documentation>
-            Advertises that the containing editor understands the given content type and is suitable for editing files of that type.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="contentTypeId" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The content type identifier. This is an ID defined by the &apos;org.eclipse.core.runtime.contentTypes&apos; extension point.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="since"/>
-      </appinfo>
-      <documentation>
-         [Enter the first release in which this extension point appears.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="examples"/>
-      </appinfo>
-      <documentation>
-         [Enter extension point usage example here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="apiInfo"/>
-      </appinfo>
-      <documentation>
-         [Enter API information here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="implementation"/>
-      </appinfo>
-      <documentation>
-         [Enter information about supplied implementation of this extension point.]
-      </documentation>
-   </annotation>
-
-
-</schema>
diff --git a/plugins/org.eclipse.wst.validation/.classpath b/plugins/org.eclipse.wst.validation/.classpath
deleted file mode 100644
index 64ae09a..0000000
--- a/plugins/org.eclipse.wst.validation/.classpath
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="validate"/>
-	<classpathentry kind="src" path="validate_core"/>
-	<classpathentry kind="src" path="property_files"/>
-	<classpathentry kind="src" path="vf2"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
-		<accessrules>
-			<accessrule kind="accessible" pattern="org/eclipse/wst/common/**"/>
-		</accessrules>
-	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.wst.validation/.cvsignore b/plugins/org.eclipse.wst.validation/.cvsignore
deleted file mode 100644
index e936909..0000000
--- a/plugins/org.eclipse.wst.validation/.cvsignore
+++ /dev/null
@@ -1,11 +0,0 @@
-bin
-temp.folder
-validate.jar
-build.xml
-common.jar
-validatesrc.zip
-commonsrc.zip
-src.zip
-org.eclipse.wst.validation_1.0.0.zip
-@dot
-javaCompiler...args
diff --git a/plugins/org.eclipse.wst.validation/.options b/plugins/org.eclipse.wst.validation/.options
deleted file mode 100644
index 404c71b..0000000
--- a/plugins/org.eclipse.wst.validation/.options
+++ /dev/null
@@ -1,37 +0,0 @@
-org.eclipse.wst.validation/debug=true
-
-# Set this to true if you wish performance information to be logged
-org.eclipse.wst.validation/timings=false
-
-# set this to true if you want version 1 validator tracing
-org.eclipse.wst.validation/v1=false
-
-# Set this to a file name, if you wish the results to be logged to a file, otherwise
-# they will be written to stderr. When logged to a file the results are in a
-# CSV (comma separated values) form. When logged to stderr they are in a more 
-# human readable form.
-org.eclipse.wst.validation/timings/tracefile=
-
-# By default times that are written to the trace file are in milliseconds for elapsed
-# time and nanoseconds for cpu time. If you find these times easier to read as seconds
-# as expressed by a double, the following flag can be turned on.
-org.eclipse.wst.validation/timings/useDoubles=false
-
-# If extra detail is needed for a particular validator it's id can be specified here.
-# For example, if you wanted more detail on the XML validator you would use
-# org.eclipse.wst.xml.core.xml 
-org.eclipse.wst.validation/extraValDetail=
-
-# To make debugging easier, you can make it appear is if only one validator has been 
-# registered via the extension points. You do this by setting the following filter
-# to validator id of the one validator that you want registered.
-#
-# As an example, you could use this plug-in id for a v1 validator: org.eclipse.jst.j2ee.ejb.EJBValidator
-# and org.eclipse.wst.html.ui.HTMLValidator for a v2 validator
-org.eclipse.wst.validation/filter/allExcept=
-
-# The tracing level. If not supplied a default of zero is used. The higher the number the
-# more verbose the tracing.
-org.eclipse.wst.validation/trace/level=
-
-
diff --git a/plugins/org.eclipse.wst.validation/.project b/plugins/org.eclipse.wst.validation/.project
deleted file mode 100644
index 846dae7..0000000
--- a/plugins/org.eclipse.wst.validation/.project
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.validation</name>
-	<comment></comment>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.wst.validation/.settings/org.eclipse.jdt.core.prefs b/plugins/org.eclipse.wst.validation/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 58507dd..0000000
--- a/plugins/org.eclipse.wst.validation/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,78 +0,0 @@
-#Fri Apr 11 07:15:44 EDT 2008
-eclipse.preferences.version=1
-org.eclipse.jdt.core.codeComplete.argumentPrefixes=
-org.eclipse.jdt.core.codeComplete.argumentSuffixes=
-org.eclipse.jdt.core.codeComplete.fieldPrefixes=_
-org.eclipse.jdt.core.codeComplete.fieldSuffixes=
-org.eclipse.jdt.core.codeComplete.localPrefixes=
-org.eclipse.jdt.core.codeComplete.localSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=_
-org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
-org.eclipse.jdt.core.compiler.problem.nullReference=ignore
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/org.eclipse.wst.validation/.settings/org.eclipse.jdt.ui.prefs b/plugins/org.eclipse.wst.validation/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 76ddc11..0000000
--- a/plugins/org.eclipse.wst.validation/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-#Mon Jun 11 14:58:22 EDT 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.ui.exception.name=e
-org.eclipse.jdt.ui.gettersetter.use.is=true
-org.eclipse.jdt.ui.javadoc=false
-org.eclipse.jdt.ui.keywordthis=false
-org.eclipse.jdt.ui.overrideannotation=true
diff --git a/plugins/org.eclipse.wst.validation/META-INF/MANIFEST.MF b/plugins/org.eclipse.wst.validation/META-INF/MANIFEST.MF
deleted file mode 100644
index 8fb0e19..0000000
--- a/plugins/org.eclipse.wst.validation/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,24 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Bundle-Name.0
-Bundle-SymbolicName: org.eclipse.wst.validation; singleton:=true
-Bundle-Version: 1.2.10.qualifier
-Bundle-Activator: org.eclipse.wst.validation.internal.plugin.ValidationPlugin
-Bundle-Vendor: %Bundle-Vendor.0
-Bundle-Localization: plugin
-Export-Package: org.eclipse.wst.validation,
- org.eclipse.wst.validation.internal;x-friends:="org.eclipse.wst.common.tests.validation",
- org.eclipse.wst.validation.internal.core;x-friends:="org.eclipse.wst.common.tests.validation",
- org.eclipse.wst.validation.internal.delegates;x-internal:=true,
- org.eclipse.wst.validation.internal.model;x-internal:=true,
- org.eclipse.wst.validation.internal.operations;x-friends:="org.eclipse.wst.common.tests.validation",
- org.eclipse.wst.validation.internal.plugin;x-friends:="org.eclipse.wst.common.tests.validation",
- org.eclipse.wst.validation.internal.provisional;x-internal:=true,
- org.eclipse.wst.validation.internal.provisional.core
-Require-Bundle: org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.common.frameworks;bundle-version="[1.1.200,2.0.0)",
- org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.common.project.facet.core;bundle-version="[1.3.0,2.0.0)",
- org.eclipse.core.expressions;bundle-version="[3.4.0,4.0.0)"
-Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/plugins/org.eclipse.wst.validation/about.html b/plugins/org.eclipse.wst.validation/about.html
deleted file mode 100644
index 2199df3..0000000
--- a/plugins/org.eclipse.wst.validation/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June, 2008</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in 
-("Content"). Unless otherwise indicated below, the Content is provided to you 
-under the terms and conditions of the Eclipse Public License Version 1.0 
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>. 
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the 
-Content is being redistributed by another party ("Redistributor") and different 
-terms and conditions may apply to your use of any object code in the Content. 
-Check the RedistributorÂ’s license that was provided with the Content. If no such 
-license exists, contact the Redistributor. Unless otherwise indicated below, the 
-terms and conditions of the EPL still apply to any source code in the Content 
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/plugins/org.eclipse.wst.validation/build.properties b/plugins/org.eclipse.wst.validation/build.properties
deleted file mode 100644
index 167d165..0000000
--- a/plugins/org.eclipse.wst.validation/build.properties
+++ /dev/null
@@ -1,25 +0,0 @@
-###############################################################################
-# Copyright (c) 2001, 2008 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = plugin.xml,\
-               plugin.properties,\
-               META-INF/,\
-               about.html,\
-               .,\
-               .options,\
-               xsds/
-jars.compile.order = .
-src.includes = component.xml,\
-               xsds/
-output.. = bin/
-source.. = validate_core/,\
-           property_files/,\
-           validate/,\
-           vf2/
diff --git a/plugins/org.eclipse.wst.validation/component.xml b/plugins/org.eclipse.wst.validation/component.xml
deleted file mode 100644
index 21011d7..0000000
--- a/plugins/org.eclipse.wst.validation/component.xml
+++ /dev/null
@@ -1 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><component  xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.wst.validation"><component-depends unrestricted="true"></component-depends><plugin id="org.eclipse.wst.validation" fragment="false"/><plugin id="org.eclipse.wst.validation.ui" fragment="false"/><package name="org.eclipse.wst.validation.core"></package><package name="org.eclipse.wst.validation.plugin"></package></component>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.validation/plugin.properties b/plugins/org.eclipse.wst.validation/plugin.properties
deleted file mode 100644
index d7722e4..0000000
--- a/plugins/org.eclipse.wst.validation/plugin.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-###############################################################################
-# Copyright (c) 2001, 2008 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-
-VALIDATION_BUILDER_NAME=Validation
-VALIDATION_PROBLEMMARKER_NAME=Validation Message
-ProblemMarkerV2=Validation Message
-
-VALIDATION_PROJECTMARKER_NAME=Enabled Validators
-VALIDATION_PREFERENCEMARKER_NAME=Validation Preferences
-Validator=Validator
-ReferencialFileValidator=ReferencialFileValidator
-validationSelectionHandler=validationSelectionHandler
-ValidatorDelegates=Validator Delegates
-
-Bundle-Name.0 = Validation Framework
-Bundle-Vendor.0 = Eclipse.org
-
-Extension.validator=Validator (Version 2)
diff --git a/plugins/org.eclipse.wst.validation/plugin.xml b/plugins/org.eclipse.wst.validation/plugin.xml
deleted file mode 100644
index 1b17568..0000000
--- a/plugins/org.eclipse.wst.validation/plugin.xml
+++ /dev/null
@@ -1,131 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-  
-<!-- Validation extension points -->
-   <extension-point id="validator" name="%Validator" schema="xsds/validatorExtSchema.exsd"/>
-   <extension-point id="validatorV2" name="%Extension.validator" schema="xsds/validator.exsd"/>
-   <extension-point id="referencialFileValidator" name="%ReferencialFileValidator" schema="xsds/referencialFileExtSchema.exsd"/>
-   <extension-point id="validationSelectionHandler" name="%validationSelectionHandler" schema="xsds/validationSelectionHandler.exsd"/>
-   <extension-point id="validationHelper" name="validationHelper" schema="xsds/validationHelper.exsd"/>
-   <extension-point id="validatorDelegates" name="%ValidatorDelegates" schema="xsds/validatorDelegates.exsd"/>   
-   <extension-point id="validatorGroup" name="Validator Group" schema="xsds/validatorgroup.exsd"/>   
-   <extension-point id="exclude" name="Validator Exclusions" schema="xsds/exclude.exsd"/>   
-   
-<!--============================-->
-<!-- Validation Contributions   -->
-<!--============================-->
-   <extension
-         id="validationbuilder"
-         name="%VALIDATION_BUILDER_NAME"
-         point="org.eclipse.core.resources.builders">
-      <builder>
-         <run
-               class="org.eclipse.wst.validation.internal.operations.ValidationBuilder">
-         </run>
-      </builder>
-   </extension>
-<!-- Problem markers must be a subtype of problemmarker to be displayed in the task view -->
-   <extension
-         id="problemmarker"
-         name="%VALIDATION_PROBLEMMARKER_NAME"
-         point="org.eclipse.core.resources.markers">
-      <super
-            type="org.eclipse.core.resources.problemmarker">
-      </super>
-      <persistent
-            value="true">
-      </persistent>
-      <attribute
-            name="owner">
-      </attribute>
-      <attribute
-            name="validationSeverity">
-      </attribute>
-      <attribute
-            name="targetObject">
-      </attribute>
-      <attribute
-            name="groupName">
-      </attribute>
-      <attribute
-            name="messageId">
-      </attribute>
-   </extension>
-<!-- Don't want to display this marker in the task view -->
-   <extension
-         id="projectmarker"
-         name="%VALIDATION_PROJECTMARKER_NAME"
-         point="org.eclipse.core.resources.markers">
-      <super
-            type="org.eclipse.core.resources.textmarker">
-      </super>
-      <persistent
-            value="true">
-      </persistent>
-      <attribute
-            name="enabledValidatorList">
-      </attribute>
-      <attribute
-            name="autoValidate">
-      </attribute>
-      <attribute
-            name="runWhenBuild">
-      </attribute>
-      <attribute
-            name="maxNumMessages">
-      </attribute>
-      <attribute
-            name="overrideGlobalPreferences">
-      </attribute>
-      <attribute
-            name="version">
-      </attribute>
-   </extension>
-<!-- Don't want to display this marker in the task view -->
-   <extension
-         id="preferencemarker"
-         name="%VALIDATION_PREFERENCEMARKER_NAME"
-         point="org.eclipse.core.resources.markers">
-      <super
-            type="org.eclipse.core.resources.textmarker">
-      </super>
-      <persistent
-            value="true">
-      </persistent>
-      <attribute
-            name="enabledValidatorList">
-      </attribute>
-      <attribute
-            name="autoValidate">
-      </attribute>
-      <attribute
-            name="runWhenBuild">
-      </attribute>
-      <attribute
-            name="maxNumMessages">
-      </attribute>
-      <attribute
-            name="projectsCanOverride">
-      </attribute>
-      <attribute
-            name="version">
-      </attribute>
-   </extension>
-   <!-- GRK - I added a new problem marker so that we can keep the v2 changes separate from the v1 framework. -->
-   <extension
-         id="problemmarker2"
-         name="%ProblemMarkerV2"
-         point="org.eclipse.core.resources.markers">
-      <super
-            type="org.eclipse.core.resources.problemmarker">
-      </super>
-      <persistent
-            value="true">
-      </persistent>
-      <attribute
-            name="owner">
-      </attribute>
-  </extension>
-
-</plugin>
diff --git a/plugins/org.eclipse.wst.validation/property_files/org/eclipse/wst/validation/internal/messages.properties b/plugins/org.eclipse.wst.validation/property_files/org/eclipse/wst/validation/internal/messages.properties
deleted file mode 100644
index a5062b8..0000000
--- a/plugins/org.eclipse.wst.validation/property_files/org/eclipse/wst/validation/internal/messages.properties
+++ /dev/null
@@ -1,73 +0,0 @@
-###############################################################################
-# Copyright (c) 2005, 2008 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-ErrConfig=IWAE0100E Extension configuration error. An internal error has happened, the validator {0} has incorrectly configured the validation extension point.
-ErrGroupName=IWAE0101E Invalid element, expect either the element "include" or "exclude".
-ErrFilterRule=IWAE0102E An invalid filter rule has been encountered.
-
-ErrGroupNoType=IWAE0103E Groups must have a valid type, no type was returned
-ErrGroupInvalidType=IWAE0104E Groups must have a valid type, the following invalid type was returned: {0}
-ErrDependencyVersion=IWAE0105E Only version {0} is supported
-
-ErrPatternAttrib=IWAE0106E The pattern attribute must be supplied
-ErrTypeReq=IWAE0107E Type is a required attribute for file filters
-
-VbfExcSyntaxNoValClass=IWAE0016E Validator cannot be created because no "class" attribute is specified in the <run> element of the plugin.xml file for the validator named {0}. Cannot create a validator unless a <run> element exists that specifies the "class" attribute. The value of the "class" attribute should be the name of the class that implements the IWorkbenchHelper interface.
-VbfExcSyntaxNoValRun=IWAE0015E Validator cannot be created because no <run> element is specified in the plugin.xml file for the validator named {0}. Cannot create a validator unless a <run> element exists that specifies the "class" attribute. The value of the "class" attribute should be the name of the class that implements the IWorkbenchHelper interface.
-VbfExcSyntaxNoValNull=IWAE0018E Validator class {0} could not be created. IConfigurationElement.createExecutableExtension(String) returned null.
-
-ErrType=The value of the type attribute is incorrect. It was specified as {0} but the only valid values are: {1}, {2}, {3}
-ConfigError=It appears that validator {0} (with id {1}) has been configured incorrectly, it produced {2} messages while validating {3}. It has been disabled. Try restoring the defaults for this validator.
-
-DecodeError1=IWAE0019E There was a problem deserializing a string. A boolean was expected but not found. 
-Error20=IWAE0020E Internal error, the incoming validator must be a v2 validator
-GroupInclude=Include Group
-GroupExclude=Exclude Group
-
-TypeInclude=include
-TypeExclude=exclude
-
-JobName=Validation
-JobNameMonitor=Validation Monitor
-JobIndexSave=Index Save
-
-MigrationJobName=Validation Setup
-
-RuleProjectNature=Project nature
-RuleFileExt=File extension
-RuleFile=File
-RuleContentType=Content Type
-RuleFacet=Facet
-RuleFolder=Folder
-RuleFull=Qualified File
-
-FileExtWithCase={0}: {1} (case sensitive)
-FileExtWithoutCase={0}: {1}
-
-ContentTypeExact={0}: {1} (excludes subtypes)
-ContentTypeNotExact={0}: {1} (includes subtypes)
-
-LogValStart=Validator {0} starting to validate: {1}
-LogValEnd=Validator {0} finished validating: {1}
-LogValEndTime=Validator {0} with id {1} finished validating: {2} in {3}
-LogValSummary=Validator {0} with id {1} validated {2} resources in {3}
-LogValSummary2=Validator {0} with id {1} validated {2} resources in {3} using {4} of CPU time
-LogSession=Session started on: {0}
-
-SevError=Error
-SevWarning=Warning
-SevIgnore=Ignore
-
-TimeUnder=under a second
-TimeNano={0} nanoseconds
-TimeMicro={0} microseconds
-TimeSec={0} seconds
-TimeMin={0} minutes
-
diff --git a/plugins/org.eclipse.wst.validation/property_files/validate_base.properties b/plugins/org.eclipse.wst.validation/property_files/validate_base.properties
deleted file mode 100644
index 9e2583d..0000000
--- a/plugins/org.eclipse.wst.validation/property_files/validate_base.properties
+++ /dev/null
@@ -1,140 +0,0 @@
-###############################################################################
-# Copyright (c) 2001, 2008 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-# IBM Corporation - initial API and implementation
-###############################################################################
-# To avoid name collisions, each extension point should preface their property names with an identifier.
-#
-#     *************************************************************************
-#     * Code oriented instructions:
-#     *
-#     * In the string, you may see the following special sequences:
-#     * a) {n}  where n is a number. These are replaceable parameters.
-#     * b) ''  In .properties files, in order to see one apostrophe (') in the final
-#     *    string, sometimes two apostrophes must be entered in the string. In the translated
-#     *    string, if there is at least one {n} in the string, then to show one apostrophe
-#     *    to the user, put two apostrophes in the string. If there are no {n} in the string,
-#     *    then put one apostrophe.
-#     *    For example, say that you want the user to read "George's file". 
-#     *        GEORGE=George's file was on the desk.
-#     *        GEORGE2=George''s file and {0} were on the desk.
-#     *    GEORGE uses one apostrophe because there are no {n} and GEORGE2
-#     *    uses two apostrophes because there is a {n}.
-#     * c) '' text '' where text can be any word(s). The text between the double
-#     *    apostrophes should not be translated. 
-#     * d) <text> where text can be any word(s). The text between the angle
-#     *    brackets should NOT be translated.
-#     * e) "text" where text can be any word(s). The text between the quotation 
-#     *    marks should NOT be translated.
-#     *    
-#     *************************************************************************
-#     * Other instructions
-#     * a) Do not translate any text that is on a line which begins with a comment 
-#     *    symbol (#).
-#     * b) Do not translate these words: 
-#     *        schema, EJB, RDB, JAR, RMI, BMP, CMP, OOSQL
-#     * c) Please return the .properties files using the same directory structure.
-#     *    This is necessary because two of the files have the same name.
-#     *
-#     *************************************************************************
-# Any other comments to the translators are on lines which start like this:  # 2TC:
-#
-# Version 1.14
-#
-#
-# ID:
-#    VBF - Validation Builder Framework
-#       VBF_EXC=Exception or error text
-#       VBF_STATUS=Status message
-#       VBF_TASK=Task list message
-#
-
-# 
-# Begin Validation Builder Framework Strings
-#
-# IDs:
-#    VBF_EXC=Exception or error text
-#    VBF_STATUS=Status message
-#    VBF_TASK=Task list message
-#
-VBF_EXC_CANNOT_ADD_MARKER=IWAE0001E The marker cannot be added to resource {0} in the task list.
-VBF_EXC_CANNOT_REMOVE_MARKER=IWAE0002E The marker cannot be removed from resource {0} in the task list.
-
-VBF_EXC_HELPER_MISSING=IWAE0003E Unable to load {0} because it did not specify a <helper>. Each validator must identify the helper class that loads its MOF model.
-VBF_EXC_HELPER_CANNOTLOAD=IWAE0004E Unable to load {0} because its <helper>, {1}, could not be loaded. Ensure that the case-sensitive file name is spelled correctly.
-
-VBF_EXC_INTERNAL=IWAE0005E An internal error occurred during validation. Validation was being run on project {0} with validator {1}. The message thrown was {2}.
-
-# 2TC: In the following string, "type" is a noun
-VBF_EXC_INVALID_TYPE_FILTER=IWAE0006E Invalid type filter; {0} must be an instance of {1}.
-VBF_EXC_INVALID_RESOURCE=IWAE0007E Cannot add message "{0}" with target object "{1}" because no file, folder, or project can be found with which to associate the message.
-
-VBF_EXC_MISSING_VALIDATOR_EP=IWAE0008E The validator framework could not be started. The extension point named \"{0}\" could not be found. Save all log files and contact your IBM representative.
-VBF_EXC_MISSING_PROJECTNATURE_ID=IWAE0009E A projectNature must have an associated ID. Validation is ignoring this tag and continuing.
-
-VBF_EXC_RUNTIME=IWAE0010E Run-time exception {0} occurred during validation. The validator being run was {1} and the message thrown was {2}.
-
-VBF_EXC_SYNTAX_NO_HELPER=IWAE0012E No <helper> element is specified in the plugin.xml file for validator {0}. Since the helper cannot be created, the validator will not be loaded.
-VBF_EXC_SYNTAX_NO_HELPER_CLASS=IWAE0013E No "class" attribute in the <helper> element is specified in the plugin.xml file for validator {0}. The helper cannot be created without the name of the class that implements it. Since the helper cannot be created, the validator will not be loaded.
-VBF_EXC_SYNTAX_NO_HELPER_THROWABLE=IWAE0014E The helper {0} cannot be created because a Throwable was caught.
-VBF_EXC_SYNTAX_NO_VAL_THROWABLE=IWAE0017E Cannot create validator {0} because a Throwable was caught.
-
-VBF_EXC_DISABLEV=IWAE0019E Cannot instantiate validator {0}. Disabling the validator; read the log for details.
-VBF_EXC_DISABLEH=IWAE0020E Cannot instantiate helper {0}. Disabling validator {1}; read the log for details.
-VBF_EXC_ORPHAN_IVALIDATOR=IWAE0021E Cannot locate meta-data for validator {0}.
-
-VBF_EXC_VALIDATORNAME_IS_NULL=IWAE0022E The plugin with ID {0} has been disabled because its getName() method returns null. The method must return a value.
-
-VBF_EXC_NULLCREATE=IWAE0023E Cannot create a validation configuration on a null resource.
-VBF_EXC_NULLSAVE=IWAE0024E Cannot save a validation configuration on a null resource.
-VBF_EXC_SAVE=IWAE0025E Could not save the validation configuration on resource {0}.
-VBF_EXC_NULLRETRIEVE=IWAE0026E Cannot retrieve the validation configuration because resource is null.
-VBF_EXC_RETRIEVE=IWAE0027E Could not retrieve the validation configuration for resource {0}.
-
-VBF_EXC_BADVMD=IWAE0028E ValidatorMetaData[] must not be null or empty.
-VBF_EXC_OPENPRJ=IWAE0029E Project {0} must be open.
-VBF_EXC_EXISTPRJ=IWAE0030E Project {0} must exist.
-VBF_EXC_BADPRJ=IWAE0031E Project {0} must be the project that contains the resources in the IResource[].
-VBF_EXC_MULTIPRJ=IWAE0032E All IResource instances in the IResource[] must be part of the same IProject instance. The resources come from the following projects: {0}.
-VBF_EXC_BADVAL=IWAE0033E Validator {0} must be configured on {1};
-
-VBF_STATUS_INITIALIZING=Initializing {0}.
-
-VBF_STATUS_VALIDATOR_CLEANUP=Performing cleanup on {0} before termination.
-
-VBF_STATUS_PROGRESSMONITOR_TITLE=Validating
-VBF_STATUS_NULL_DELTA=Last build state of {0} could not be retrieved. Performing a full validation.
-
-VBF_STATUS_VALIDATOR_TERMINATED=Validation of {0} using {1} was cancelled.
-
-VBF_STATUS_START_REMOVING_OLD_MESSAGES=Removing {0} messages on {1} has started...
-VBF_STATUS_FINISH_REMOVING_OLD_MESSAGES=Messages removed.
-
-VBF_STATUS_STARTING_VALIDATION=Validation of {0} by {1} has started...
-VBF_STATUS_ENDING_VALIDATION=Validation of {0} by {1} is complete. All known problems have been reported.
-VBF_STATUS_ENDING_VALIDATION_ABNORMALLY=Validation of {0} by {1} ended abnormally. The list of problems may be incomplete. Please check the information messages for the cause of the abnormal termination.
-
-VBF_STATUS_LOOKING=Looking for validation messages owned by uninstalled validators...
-VBF_STATUS_LOOKINGDONE=Looking for validation messages owned by uninstalled validators...done.
-VBF_STATUS_REMOVING=Removing validation messages owned by uninstalled validators...
-VBF_STATUS_REMOVINGDONE=Removing validation messages owned by uninstalled validators...done.
-
-VBF_WRONG_CONTEXT_FOR_DELEGATE=The validator {0} is a being invoked with a wrong context. Please use an IProjectValidationContext.
-VBF_NO_DELEGATE=The validator {0} is a delegating validator but no delegate can found for it.
-VBF_CANNOT_INSTANTIATE_DELEGATE=The validator delegate {0} registered for {1} cannot be instantiated.
-
-# The following message will be deleted soon.
-VBF_TASK_WARN_MESSAGE_LIMIT_ABORT=IWAE0034W IWAD3000I: {1} terminated validation of {0} because the maximum number of messages were reported. Some messages may be missing.
-
-VBF_TASK_WARN_MESSAGE_LIMIT_VAL=IWAE0035W IWAD3000I: Some messages may be missing because the maximum number of messages has been reported. Increase the maximum number of messages and try again.
-VBF_VALIDATION_JOB_MSG=Waiting for build
-
-#
-# End Validation Builder Framework Strings
-#
-
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ConfigurationConstants.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ConfigurationConstants.java
deleted file mode 100644
index 16aef08..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ConfigurationConstants.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * Validation constants needed to implement the marker extension point and the user's preferences.
- * 
- * Only the validation framework should use this interface.
- */
-public interface ConfigurationConstants {
-	String DISABLE_ALL_VALIDATION_SETTING = "disableAllValidation"; //$NON-NLS-1$ // boolean
-	String SAVE_AUTOMATICALLY_SETTING = "saveAutomatically"; //$NON-NLS-1$ // boolean
-
-	// Defaults for the preference and project values
-	
-	String CURRENT_VERSION = (String) ValidationPlugin.getPlugin().getBundle().getHeaders().get(org.osgi.framework.Constants.BUNDLE_VERSION);  // this is a constant, so it should be intern
-	boolean DEFAULT_ASYNC = true;
-	boolean DEFAULT_DISABLE_VALIDATION_SETTING = false;
-	ValidatorMetaData[] DEFAULT_ENABLED_VALIDATORS = ValidationRegistryReader.getReader().getValidatorMetaDataArrayEnabledByDefault();  // store a copy here so that we don't modify the original and don't create a copy every time we need this value
-	int DEFAULT_MAXNUMMESSAGES = 50;
-	int DEPTH_INFINITE = IResource.DEPTH_INFINITE;
-	int DEPTH_ZERO = IResource.DEPTH_ZERO;
-	String ELEMENT_SEPARATOR = ";"; //$NON-NLS-1$ // separates the name of one IValidator from the next in the list of enabled validators for a project or preference
-	String DELEGATES_SEPARATOR = "="; //$NON-NLS-1$ // Separates the delegating validator id from the delegate validator id in the list of delegates
-
-	// The following values must match the attributes in the preference marker as shown in plugin.xml
-	// Even though the plugin.xml values are not used to create new Preference or Project markers,
-	// maintaining one local name ensures that there's no confusion writing the migration code.
-	// These are the QualifiedNames used to persist the user's settings.
-	String ENABLED_MANUAL_VALIDATORS = "enabledManualValidatorList"; //$NON-NLS-1$ // String
-	String ENABLED_BUILD_VALIDATORS = "enabledBuildValidatorList"; //$NON-NLS-1$ // String
-	String DELEGATE_VALIDATORS = "delegateValidatorList"; //$NON-NLS-1$ // String
-	String J2EE_PLUGIN_ID = "org.eclipse.jst.j2ee"; //$NON-NLS-1$ // For 4.03, this is the plugin id that the validation constants were declared in.
-	String MAXNUMMESSAGES = "maxNumMessages"; //$NON-NLS-1$ // integer
-	String PLUGIN_ID = ValidationPlugin.PLUGIN_ID;
-	String PREF_PROJECTS_CAN_OVERRIDE = "projectsCanOverride"; //$NON-NLS-1$ // boolean
-	// end validation message marker constants
-
-	// Preference and Project constants
-	String PREFERENCE_MARKER = PLUGIN_ID + ".preferencemarker"; //$NON-NLS-1$
-	String PRJ_MARKER = PLUGIN_ID + ".projectmarker"; //$NON-NLS-1$ // The extension which saves user validation preferences for a particular project (e.g. which validators run on the project)
-	String PRJ_MARKER_403 = J2EE_PLUGIN_ID + ".projectmarker"; //$NON-NLS-1$ // The extension which saves user validation preferences for a particular project (e.g. which validators run on the project)
-	String PRJ_OVERRIDEGLOBAL = "overrideGlobalPreferences"; //$NON-NLS-1$ // boolean (Use the global preferences or override)
-
-	QualifiedName USER_PREFERENCE = new QualifiedName(PLUGIN_ID, "ValidationConfiguration"); //$NON-NLS-1$ // ValidationConfiguration for the IResource
-	QualifiedName USER_MANUAL_PREFERENCE = new QualifiedName(PLUGIN_ID, "ValidationManualConfiguration"); //$NON-NLS-1$ // ValidationConfiguration for the IResource
-	QualifiedName USER_BUILD_PREFERENCE = new QualifiedName(PLUGIN_ID, "ValidationBuildConfiguration"); //$NON-NLS-1$ // ValidationConfiguration for the IResource
-	QualifiedName DELEGATES_PREFERENCE = new QualifiedName(PLUGIN_ID, "ValidationDelegatesConfiguration"); //$NON-NLS-1$ // ValidationConfiguration for the IResource
-
-	// Validation message marker constants
-	
-	/** 
-	 * org.eclipse.wst.validation.problemmarker - The marker id which is used to add v1 validation markers 
-	 * to the task list */
-	String VALIDATION_MARKER = PLUGIN_ID + ".problemmarker"; //$NON-NLS-1$ 
-	
-	/** For incremental validation, this field associates a message with a group, so that a subset of messages may be removed from a file. */
-	String VALIDATION_MARKER_GROUP = "groupName"; //$NON-NLS-1$
-	
-	/**  Persist the message id of the message, not just the translated text. */
-	String VALIDATION_MARKER_MESSAGEID = "messageId"; //$NON-NLS-1$
-	
-	// The following values must match the attributes in the validation message marker as shown in plugin.xml
-	String VALIDATION_MARKER_OWNER = "owner"; //$NON-NLS-1$ // The IValidator who owns the IMarker on the task list
-	String VALIDATION_MARKER_SEVERITY = "validationSeverity"; //$NON-NLS-1$ // one of the SeverityEnum values
-	String VALIDATION_MARKER_TARGETOBJECT = "targetObject"; //$NON-NLS-1$ // When more than one target object resolves to the same IResource, this field identifies which targetObject owns a particular message.
-	String VERSION = "version"; //$NON-NLS-1$
-
-	// WSAD versions which created markers of these types
-	String VERSION4_03 = "4.03"; //$NON-NLS-1$
-	String VERSION5_0 = "5.0"; //$NON-NLS-1$
-	String VERSION5_01 = "5.0.1"; //$NON-NLS-1$
-	// end preference and project defaults
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ConfigurationManager.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ConfigurationManager.java
deleted file mode 100644
index 47e919c..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ConfigurationManager.java
+++ /dev/null
@@ -1,256 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.lang.reflect.InvocationTargetException;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-
-/**
- * Only the validation framework can use this class.
- */
-public final class ConfigurationManager implements ConfigurationConstants {
-	private static ConfigurationManager _instance = null;
-
-	private ConfigurationManager() {}
-
-	public static ConfigurationManager getManager() {
-		if (_instance == null) {
-			_instance = new ConfigurationManager();
-		}
-		return _instance;
-	}
-
-	/**
-	 * Given a validation marker, return the fully-qualified class name of the validator who owns
-	 * the message. If the validator cannot be found or if the marker is not a validation marker,
-	 * return null.
-	 */
-	public String getValidator(IMarker marker) {
-		if (marker == null)return null;
-
-		try {
-			if (!marker.getType().equals(VALIDATION_MARKER))return null;
-
-			Object attrib = marker.getAttribute(VALIDATION_MARKER_OWNER);
-			if (attrib == null)return null;
-			return attrib.toString();
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return null;
-		}
-	}
-
-	/**
-	 * Return true if the given marker is a validation marker. Otherwise return false.
-	 */
-	public boolean isValidationMarker(IMarker marker) {
-		if (marker == null)return false;
-
-		try {
-			return marker.getType().equals(VALIDATION_MARKER);
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return false;
-		}
-	}
-
-	/**
-	 * This method is for use by the TVT Validation plug-in ONLY!!! No code should access the
-	 * validation markers in the list directly except for the validation framework and the TVT
-	 * Validation plug-in.
-	 */
-	public void removeAllValidationMarkers(IProject project) {
-		if ((project == null) || (!project.isOpen()))return;
-
-		try {
-			project.deleteMarkers(VALIDATION_MARKER, false, DEPTH_INFINITE); // false means only
-			// consider VALIDATION_MARKER, not variants of VALIDATION_MARKER. 
-			//Since addTask only adds VALIDATION_MARKER, we don't need to consider its subtypes.
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-
-	/**
-	 * This method returns the global preferences for the workspace.
-	 */
-	public GlobalConfiguration getGlobalConfiguration() throws InvocationTargetException {
-		IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-		GlobalConfiguration gp = null;
-		try {
-			gp = (GlobalConfiguration) root.getSessionProperty(USER_PREFERENCE);
-			if (gp == null)gp = getGlobalConfiguration(root);
-		} catch (CoreException exc) {
-			throw new InvocationTargetException(exc, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_RETRIEVE, new String[]{root.getName()}));
-		}
-		return gp;
-	}
-	
-	private synchronized GlobalConfiguration getGlobalConfiguration(IWorkspaceRoot root) throws InvocationTargetException {
-		GlobalConfiguration gp = null;
-		try {
-			gp = (GlobalConfiguration) root.getSessionProperty(USER_PREFERENCE);
-			if (gp == null) {
-				gp = new GlobalConfiguration(root);
-				PreferencesWrapper prefs = PreferencesWrapper.getPreferences(null, null);
-//				prefs.addPropertyChangeListener(gp);
-				
-				gp.getVersion(); // initialize the configuration's version attribute
-				gp.load(); // initialize this instance from the stored values
-				gp.passivate(); // store this instance as a property on the IResource
-			}
-			return gp;
-		} catch (CoreException exc) {
-			throw new InvocationTargetException(exc, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_RETRIEVE, new String[]{root.getName()}));
-		}
-	}
-
-	public ProjectConfiguration getProjectConfiguration(IProject project) throws InvocationTargetException {
-		ProjectConfiguration prjp = null;
-		try {
-			prjp = (ProjectConfiguration) project.getSessionProperty(USER_PREFERENCE);
-			if (prjp == null || !prjp.getResource().exists()) {
-				prjp = new ProjectConfiguration(project);
-				prjp.getVersion(); // initialize the configuration's version attribute
-				prjp.load(); // initialize this instance from the stored values
-				prjp.passivate(); // store this instance as a property on the IResource
-			}
-			return prjp;
-		} catch (CoreException exc) {
-			throw new InvocationTargetException(exc, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_RETRIEVE, new String[]{project.getName()}));
-		}
-	}
-
-	public ProjectConfiguration getProjectConfigurationWithoutMigrate(IProject project) throws InvocationTargetException {
-		ProjectConfiguration prjp = null;
-		try {
-			prjp = (ProjectConfiguration) project.getSessionProperty(USER_PREFERENCE);
-			if (prjp == null || !prjp.getResource().exists()) {
-				prjp = new ProjectConfiguration(project);
-				prjp.getVersion(); // initialize the configuration's version attribute
-				prjp.load(); // initialize this instance from the stored values
-				prjp.passivate(); // store this instance as a property on the IResource
-			}
-			return prjp;
-		} catch (CoreException exc) {
-			throw new InvocationTargetException(exc, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_RETRIEVE, new String[]{project.getName()}));
-		}
-	}
-
-
-	/**
-	 * The nature of the project has changed; update the enabled validators on the project.
-	 * 
-	 * @deprecated this method doesn't do anything.
-	 */
-	public void resetProjectNature(IProject project) throws InvocationTargetException {
-	}
-
-	public void closing(IProject project) {
-		try {
-			if (isMigrated(project)) {
-				ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-				if(!prjp.useGlobalPreference())prjp.store();
-			}
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			if (e.getTargetException() != null)
-				ValidationPlugin.getPlugin().handleException(e.getTargetException());
-		}
-	}
-
-	/**
-	 * @deprecated this method does not do anything.
-	 * @param project
-	 */
-	public void deleting(IProject project) {
-	}
-
-	/**
-	 * @deprecated this method does not do anything.
-	 * @param project
-	 */
-	public void opening(IProject project) {
-		// Do not load or migrate the project in this method; let the getConfiguration(IProject)
-		// method do that. Do not load the project before it's necessary.
-	}
-
-	/**
-	 * Return true if the global preferences are at the current level of metadata, false otherwise.
-	 */
-	public boolean isGlobalMigrated() throws InvocationTargetException {
-		IWorkspaceRoot root = ValidationConfiguration.getRoot();
-		if (root == null)return false;
-
-		try {
-			GlobalConfiguration gp = (GlobalConfiguration) root.getSessionProperty(USER_PREFERENCE);
-			if (gp != null) {
-				return gp.isVersionCurrent();
-			}
-
-			String serializedPrjp = root.getPersistentProperty(USER_PREFERENCE);
-			if (serializedPrjp != null) {
-				gp = new GlobalConfiguration(root);
-				gp.getVersion(); // initialize the configuration's version attribute
-				return gp.isVersionCurrent();
-			}
-		} catch (CoreException exc) {
-			throw new InvocationTargetException(exc, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_RETRIEVE, new String[]{root.getName()}));
-		}
-
-		return false;
-	}
-
-	/**
-	 * Return true if the given project has the current level of metadata, false otherwise.
-	 */
-	public boolean isMigrated(IProject project) throws InvocationTargetException {
-		if (project == null)return false;
-		
-		try {
-			if (project.isAccessible()) {
-				ProjectConfiguration prjp = (ProjectConfiguration) project.getSessionProperty(USER_PREFERENCE);
-				if (prjp != null)return prjp.isVersionCurrent();
-				
-				String serializedPrjp = project.getPersistentProperty(USER_PREFERENCE);
-				if (serializedPrjp != null) {
-					prjp = new ProjectConfiguration(project);
-					prjp.getVersion(); 
-					return prjp.isVersionCurrent();
-				}
-			}
-		} catch (CoreException exc) {
-			throw new InvocationTargetException(exc, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_RETRIEVE, new String[]{project.getName()}));
-		}
-		return false;
-	}
-
-	/**
-	 * Answer the appropriate configuration based on whether the project has overridden the configuration
-	 * or not. If the project exists and is allowed to override the global configuration answer the
-	 * project configuration, otherwise answer the global configuration.
-	 * @param project it can be null
-	 */
-	public ValidationConfiguration getConfiguration(IProject project) throws InvocationTargetException {
-		if (project == null)return getGlobalConfiguration();
-		ProjectConfiguration pc = getProjectConfiguration(project);
-		if (pc != null && !pc.useGlobalPreference())return pc;
-		return getGlobalConfiguration();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/EventManager.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/EventManager.java
deleted file mode 100644
index d603b8d..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/EventManager.java
+++ /dev/null
@@ -1,358 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.Set;
-import java.util.concurrent.CopyOnWriteArraySet;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.internal.operations.IWorkbenchContext;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * This class manages resource change events for the validation framework.
- */
-public class EventManager implements IResourceChangeListener {
-	private static EventManager _inst;
-	
-	// false means that eclipse is not shutting down, and true means that it is shutting down. 
-	private boolean _shutdown; 
-
-	private IResourceDeltaVisitor _postAutoBuildVisitor;
-	private boolean _isActive; // has the registry been read?
-	
-	private Set<IProjectChangeListener> _listeners = new CopyOnWriteArraySet<IProjectChangeListener>();
-
-	private EventManager() {
-	}
-
-	public static EventManager getManager() {
-		if (_inst == null)_inst = new EventManager();
-		return _inst;
-	}
-	
-	public void addProjectChangeListener(IProjectChangeListener listener){
-		Tracing.log("EventManager-03: add listener: ", listener); //$NON-NLS-1$
-		_listeners.add(listener);
-	}
-	
-	public void removeProjectChangeListener(IProjectChangeListener listener){
-		_listeners.remove(listener);
-	}
-	
-	private void signal(IProject project, int type){
-		if (Tracing.isLogging()){
-			String name = "Null"; //$NON-NLS-1$
-			if (project != null)name = project.getName();
-			Tracing.log("EventManager-02: signal project: " + name + ", IProjectChangeListener type: " + type); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		for (IProjectChangeListener pcl : _listeners){
-			try {
-				pcl.projectChanged(project, type);
-			}
-			catch (Exception e){
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-		}
-	}
-
-	public void opening(IProject project) {
-		if (project == null || !ValidationPlugin.isActivated())return;
-		
-		signal(project, IProjectChangeListener.ProjectOpened);
-
-		// When the project is opened, check for any orphaned tasks or tasks whose owners need to be updated.
-//		ConfigurationManager.getManager().opening(project);
-	}
-
-	public void closing(IProject project) {
-		if (project == null || !ValidationPlugin.isActivated())return;
-		
-		signal(project, IProjectChangeListener.ProjectClosed);
-		
-		try {
-			boolean isMigrated = ConfigurationManager.getManager().isMigrated(project);
-			// If it's not migrated, then it hasn't been loaded, and we don't want to load the
-			// validator and its prerequisite plug-ins until they're needed.
-			if (isMigrated) {
-				ValidatorMetaData[] vmds = ConfigurationManager.getManager().getProjectConfiguration(project).getValidators();
-				for (ValidatorMetaData vmd : vmds) {
-
-					if (!vmd.isActive()) {
-						// If this validator has not been activated, or if it has been shut down,
-						// don't activate it again.
-						continue;
-					}
-
-					IWorkbenchContext helper = null;
-					try {
-						helper = vmd.getHelper(project);
-						helper.closing();
-					} catch (InstantiationException e) {
-						// Remove the vmd from the reader's list
-						ValidationRegistryReader.getReader().disableValidator(vmd);
-
-						ValidationPlugin.getPlugin().handleException(e);
-					} catch (Exception e) {
-						// If there is a problem with this particular helper, log the error and
-						// continue with the next validator.
-						ValidationPlugin.getPlugin().handleException(e);
-					}
-				}
-
-				ConfigurationManager.getManager().closing(project);
-			}
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			if (e.getTargetException() != null)
-				ValidationPlugin.getPlugin().handleException(e.getTargetException());
-		}
-	}
-
-	public void deleting(IProject project) {
-		if (project == null)return;
-		
-		signal(project, IProjectChangeListener.ProjectDeleted);
-
-		try {
-			boolean isMigrated = ConfigurationManager.getManager().isMigrated(project);
-			// If it's not migrated, then it hasn't been loaded, and we don't want to load the
-			// validator and its prerequisite plug-ins until they're needed.
-			if (isMigrated) {
-				ValidatorMetaData[] vmds = ConfigurationManager.getManager().getProjectConfiguration(project).getValidators();
-				for (ValidatorMetaData vmd : vmds) {
-
-					if (!vmd.isActive()) {
-						// If this validator has not been activated, or if it has been shut down,
-						// don't activate it again.
-						continue;
-					}
-
-					IWorkbenchContext helper = null;
-					try {
-						helper = vmd.getHelper(project);
-						helper.deleting();
-					} catch (InstantiationException e) {
-						// Remove the vmd from the reader's list
-						ValidationRegistryReader.getReader().disableValidator(vmd);
-						ValidationPlugin.getPlugin().handleException(e);
-						continue;
-					} catch (Exception e) {
-						// If there is a problem with this particular helper, log the error and
-						// continue with the next validator.
-						ValidationPlugin.getPlugin().handleException(e);
-						continue;
-					}
-				}
-
-//				ConfigurationManager.getManager().deleting(project);
-			}
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			if (e.getTargetException() != null)
-				ValidationPlugin.getPlugin().handleException(e.getTargetException());
-
-		}
-	}
-
-	/**
-	 * If a project's description changes, The project may have changed its nature. Update the cache
-	 * to reflect the new natures. The project could be opening. Migrate.
-	 */
-	private void postAutoChange(IResourceDelta delta) {
-		if (_postAutoBuildVisitor == null) {
-			_postAutoBuildVisitor = new IResourceDeltaVisitor() {
-				public boolean visit(IResourceDelta subdelta) throws CoreException {
-					if (subdelta == null)return false;
-
-					IResource resource = subdelta.getResource();
-					if (resource instanceof IWorkspaceRoot)return true;
-					if (resource instanceof IProject) {
-						IProject project = (IProject) resource;
-						if ((subdelta.getFlags() & IResourceDelta.DESCRIPTION) == IResourceDelta.DESCRIPTION) {
-							signal(project, IProjectChangeListener.ProjectChanged);
-							return false;
-						}
-
-						if ((subdelta.getFlags() & IResourceDelta.OPEN) == IResourceDelta.OPEN) {
-							if (project.isOpen()) {
-								// Project was just opened. If project.isOpen() had returned false,
-								// project would just have been closed.
-								opening(project);
-							}
-							return false;
-						}
-						
-						if ((subdelta.getFlags() & IResourceDelta.ADDED) == IResourceDelta.ADDED) {
-							signal(project, IProjectChangeListener.ProjectAdded);
-							return false;
-						}
-					}
-
-					return false;
-				}
-			};
-		}
-
-		try {
-			delta.accept(_postAutoBuildVisitor, true);
-		} catch (CoreException exc) {
-			ValidationPlugin.getPlugin().handleException(exc);
-		}
-	}
-
-	/**
-	 * Notifies this manager that some resource changes have happened on the platform. If the change
-	 * is a project deletion, that project should be removed from the cache.
-	 * 
-	 * @see IResourceDelta
-	 * @see IResource
-	 */
-	public void resourceChanged(IResourceChangeEvent event) {
-		if (_shutdown && !isActive()) {
-			// If we're shutting down, and nothing has been activated, don't need to do anything.
-			return;
-		}
-
-		if (Tracing.isLogging()){
-			Tracing.log("Eventmanager-01: IResourceChangeEvent type=" + //$NON-NLS-1$
-				Misc.resourceChangeEventType(event.getType()) + 
-				", resource=" +  //$NON-NLS-1$
-				event.getResource() + ", source=" + event.getSource() + ", delta=" +   //$NON-NLS-1$//$NON-NLS-2$
-				event.getDelta());				
-		}
-		
-		if (event.getSource() instanceof IWorkspace) {
-			boolean isProject = event.getResource() instanceof IProject;
-			if ((event.getType() == IResourceChangeEvent.PRE_DELETE) && isProject) {
-				deleting((IProject) event.getResource());
-			} else if ((event.getType() == IResourceChangeEvent.PRE_CLOSE) && isProject) {
-				closing((IProject) event.getResource());
-			} else if (event.getType() == IResourceChangeEvent.POST_BUILD) {
-				postAutoChange(event.getDelta());
-			}
-		}
-	}
-
-	/**
-	 * Notifies this manager that the ValidationPlugin is shutting down. (Usually implies that
-	 * either the plug-in could not load, or that the workbench is shutting down.)
-	 * <p>
-	 * The manager will then notify all active helpers of the shutdown, so that they may perform any
-	 * last-minute writes to disk, cleanup, etc.
-	 */
-	public void shutdown() {
-		try {
-			// resourceChanged(IResourceChangeEvent) needs to know when a shutdown has started.
-			_shutdown = true;
-
-			// If the validators are loaded, then for every project in the workbench,
-			// we must see if it has been loaded. If it has, every enabled IWorkbenchContext
-			// must be called to clean up. If the project hasn't been loaded, then no
-			// IWorkbenchContext built anything, and there's nothing to clean up.
-			IWorkspace workspace = ResourcesPlugin.getWorkspace();
-			IWorkspaceRoot workspaceRoot = workspace.getRoot();
-			IProject[] projects = workspaceRoot.getProjects();
-			ProjectConfiguration prjp = null;
-			for (IProject project : projects) {
-				if (!project.isOpen()) {
-					// If the project isn't opened, there's nothing to clean up.
-					// If the project was opened, it would have been migrated, and there's something
-					// to clean up.
-					continue;
-				}
-
-				try {
-					boolean isMigrated = ConfigurationManager.getManager().isMigrated(project);
-					// If it's not migrated, then it hasn't been loaded, and we don't want to load
-					// the validator and its prerequisite plug-ins until they're needed.
-					if (isMigrated) {
-						prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-
-						ValidatorMetaData[] vmdList = prjp.getEnabledValidators();
-						// if vmdList is null, IProject has never been loaded, so nothing to clean up
-						if (vmdList != null) {
-							for (int j = 0; j < vmdList.length; j++) {
-								ValidatorMetaData vmd = vmdList[j];
-
-								if (!vmd.isActive()) {
-									// If this validator has not been activated, or if it has been
-									// shut down, don't activate it again.
-									continue;
-								}
-
-								IWorkbenchContext helper = vmd.getHelper(project);
-								if (helper != null) {
-									try {
-										helper.shutdown();
-									} catch (Exception exc) {
-										// Since we're shutting down, ignore the exception.
-									}
-								}
-							}
-						}
-					}
-				} catch (InvocationTargetException e) {
-					ValidationPlugin.getPlugin().handleException(e);
-					if (e.getTargetException() != null)
-						ValidationPlugin.getPlugin().handleException(e.getTargetException());
-
-				}
-			}
-		} catch (Exception exc) {
-			// Since we're shutting down, ignore the exception.
-		}
-	}
-
-	public boolean isActive() {
-		// Have to use this convoluted technique for the shutdown problem.
-		// i.e., when eclipse is shut down, if validation plug-in hasn't been loaded,
-		// the EventManager is activated for the first time, and it
-		// sends many exceptions to the .log. At first, I wrote a
-		// static method on ValidationRegistryReader, which returned true
-		// if the registry had been read, and false otherwise. However,
-		// that didn't solve the exception problem, because eclipse's
-		// class loader failed to load the ValidationRegistryReader class.
-		//
-		// The fix is to keep all shutdown mechanisms in this class.
-		// Track everything in here.
-		return _isActive;
-	}
-
-	/**
-	 * This method should only be called by the ValidationRegistryReader once the registry has been
-	 * read.
-	 */
-	public void setActive(boolean b) {
-		_isActive = b;
-	}
-
-	/**
-	 * This method should be used to determine if the workbench is running in UI or Headless.
-	 * 
-	 * @deprecated This plug-in no longer depends on jem. If you need this function use the jem
-	 * code directly.
-	 */
-	public static boolean isHeadless() {
-		//return UIContextDetermination.getCurrentContext() == UIContextDetermination.HEADLESS_CONTEXT;
-		return false;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/FilterUtil.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/FilterUtil.java
deleted file mode 100644
index 39a36bc..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/FilterUtil.java
+++ /dev/null
@@ -1,658 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.IResourceVisitor;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.wst.validation.internal.core.IFileDelta;
-import org.eclipse.wst.validation.internal.operations.IWorkbenchContext;
-import org.eclipse.wst.validation.internal.operations.WorkbenchFileDelta;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * Utility class for the ValidationOperation hierarchy.
- */
-public final class FilterUtil {
-	private static VMDDeltaVisitor _deltaVisitor = null;
-	private static VMDResourceVisitor _resourceVisitor = null;
-
-	private interface VMDRecorder {
-		public Map<ValidatorMetaData, Set<IFileDelta>> getResult();
-
-		public void setEnabledValidators(Set<ValidatorMetaData> enabledValidators);
-
-		public void setProgressMonitor(IProgressMonitor monitor);
-
-		public IProgressMonitor getProgressMonitor();
-	}
-
-	private interface VMDDeltaVisitor extends VMDRecorder, IResourceDeltaVisitor {
-	}
-
-	private interface VMDResourceVisitor extends VMDRecorder, IResourceVisitor {
-	}
-
-	private FilterUtil() {
-	}
-
-	/**
-	 * Given a Set of enabled ValidatorMetaData, create a Map with each ValidatorMetaData as a key
-	 * with an associated null value.
-	 */
-	static Map<ValidatorMetaData, Set<IFileDelta>> wrapInMap(Set<ValidatorMetaData> enabledValidators) {
-		Map<ValidatorMetaData, Set<IFileDelta>> result = new HashMap<ValidatorMetaData, Set<IFileDelta>>();
-		if ((enabledValidators == null) || (enabledValidators.size() == 0))return result;
-
-		for (ValidatorMetaData vmd : enabledValidators)result.put(vmd, null);
-		return result;
-	}
-
-	static void checkCanceled(IProgressMonitor monitor) throws OperationCanceledException {
-		if (monitor == null)return;
-		else if (monitor.isCanceled())throw new OperationCanceledException(""); //$NON-NLS-1$
-	}
-
-	/**
-	 * Given a Map of VMD <=>Set(IFileDelta), either return the existing Set or create a Set and
-	 * return it.
-	 */
-	private static Set<IFileDelta> getResourceDeltas(Map<ValidatorMetaData, Set<IFileDelta>> enabledValidators, 
-			ValidatorMetaData vmd) {
-		Set<IFileDelta> fileDeltas = enabledValidators.get(vmd);
-		if (fileDeltas == null) {
-			fileDeltas = new HashSet<IFileDelta>();
-			enabledValidators.put(vmd, fileDeltas);
-		}
-		return fileDeltas;
-	}
-
-	/**
-	 * Given the IFileDelta type, return the corresponding IResourceDelta type.
-	 */
-	private static int getResourceDeltaType(int ifileDeltaType) {
-		switch (ifileDeltaType) {
-			case (IFileDelta.ADDED) : {
-				return IResourceDelta.ADDED;
-			}
-
-			case (IFileDelta.DELETED) : {
-				return IResourceDelta.REMOVED;
-			}
-
-			case (IFileDelta.CHANGED) :
-			default : {
-				return IResourceDelta.CHANGED;
-			}
-		}
-	}
-
-	/**
-	 * Given the IResourceDelta type, return the corresponding IFileDelta type.
-	 */
-	static int getFileDeltaType(int iresourceDeltaType) {
-		switch (iresourceDeltaType) {
-			case IResourceDelta.ADDED : // resource has been added to the workbench
-			{
-				return IFileDelta.ADDED;
-			}
-
-			case IResourceDelta.CHANGED : // resources has been changed in the workbench
-			{
-				return IFileDelta.CHANGED;
-			}
-
-			case IResourceDelta.REMOVED : // resource has been deleted from the workbench
-			{
-				return IFileDelta.DELETED;
-			}
-
-			case IResourceDelta.ADDED_PHANTOM : // incoming workbench resource
-			{
-				return IFileDelta.ADDED;
-			}
-
-			case IResourceDelta.REMOVED_PHANTOM : // outgoing workbench resource
-			{
-				return IFileDelta.DELETED;
-			}
-
-			default : {
-				return IFileDelta.CHANGED;
-			}
-		}
-	}
-
-
-	/**
-	 * Return the validators which are both configured on this type of project, (as stored in
-	 * getProject()), and enabled by the user on this project.
-	 */
-	static void addFileDelta(Map<ValidatorMetaData, Set<IFileDelta>> enabledValidators, 
-			ValidatorMetaData vmd, WorkbenchFileDelta fileDelta) {
-		Set<IFileDelta> fileDeltas = getResourceDeltas(enabledValidators, vmd);
-		fileDeltas.add(fileDelta);
-		enabledValidators.put(vmd, fileDeltas);
-	}
-
-	/**
-	 * Return a Map wrapper, with each VMD from enabledValidators as the key, and the value a Set of
-	 * IFileDelta wrapper around the changed Object[].
-	 * 
-	 * If filterIn is true, do not check if the resources are filtered in by the validator. If
-	 * filterIn is false, check if the resources are filtered in by the validator (recommended).
-	 */
-	public static Map<ValidatorMetaData, Set<IFileDelta>> 
-		getFileDeltas(Set<ValidatorMetaData> enabledValidators, Object[] changedResources, boolean filterIn) {
-		// by default assume that the resources have changed, i.e. not added or deleted
-		return getFileDeltas(enabledValidators, changedResources, IFileDelta.CHANGED, filterIn); 
-	}
-
-	/**
-	 * Return a Map wrapper, with each VMD from enabledValidators as the key, and the value a Set of
-	 * IFileDelta wrapper around the changed Object[], with each delta of type deltaType.
-	 */
-	public static Map<ValidatorMetaData, Set<IFileDelta>> 
-		getFileDeltas(Set<ValidatorMetaData> enabledValidators, Object[] changedResources, int ifileDeltaType) {
-		// by default check if the Objects are filtered in by the validator
-		return getFileDeltas(enabledValidators, changedResources, ifileDeltaType, false); 
-	}
-
-	/**
-	 * Return a Map wrapper, with each VMD from enabledValidators as the key, and the value a Set of
-	 * IFileDelta wrapper around the changed Object[].
-	 * <p>
-	 * If "force" is true, then don't check if the object is filtered in by the validator or not.
-	 * ValidatorSubsetOperation can use validators that don't filter in these particular resources,
-	 * but can use a defaultExtension's validators instead.
-	 */
-	public static Map<ValidatorMetaData, Set<IFileDelta>> getFileDeltas(Set<ValidatorMetaData> enabledValidators, 
-		Object[] changedResources, int ifileDeltaType, boolean force) {
-		
-		Map<ValidatorMetaData, Set<IFileDelta>> result = new HashMap<ValidatorMetaData, Set<IFileDelta>>();
-		if ((enabledValidators == null) || (enabledValidators.size() == 0)) {
-			return result;
-		}
-
-		boolean cannotLoad = false;
-		IWorkbenchContext helper = null;
-		for (ValidatorMetaData vmd : enabledValidators) {
-			try {
-				Set<IFileDelta> deltas = new HashSet<IFileDelta>();
-				IProgressMonitor monitor = new NullProgressMonitor();
-				for (int i = 0; i < changedResources.length; i++) {
-					Object obj = changedResources[i];
-					WorkbenchFileDelta wfd = null;
-					if (obj instanceof IResource) {
-						IResource res = (IResource) obj;
-						if (force || !filterOut(monitor, vmd, res, getResourceDeltaType(ifileDeltaType))) {
-							helper = vmd.getHelper(res.getProject());
-
-							wfd = getFileDelta(helper, vmd, res, getResourceDeltaType(ifileDeltaType));
-						}
-					} else {
-						wfd = new WorkbenchFileDelta(obj);
-					}
-
-					if (wfd != null) {
-						deltas.add(wfd);
-					}
-				}
-				result.put(vmd, deltas);
-			} catch (InstantiationException e) {
-				cannotLoad = true;
-
-				// Remove the vmd from the reader's list
-				ValidationRegistryReader.getReader().disableValidator(vmd);
-				ValidationPlugin.getPlugin().handleException(e);
-				continue;
-			}
-
-		}
-
-		if (cannotLoad) {
-			// Some of the validators should not be in the result set because either their
-			// validator class or helper class could not be instantiated.
-			Object[] vmds = enabledValidators.toArray();
-			for (int i = 0; i < vmds.length; i++) {
-				ValidatorMetaData vmd = (ValidatorMetaData) vmds[i];
-				if (vmd.cannotLoad()) {
-					result.remove(vmd);
-				}
-			}
-		}
-
-		return result;
-	}
-
-	public static WorkbenchFileDelta getFileDelta(IWorkbenchContext helper, ValidatorMetaData vmd, IResource resource, int iresourceDeltaType) {
-		// strip off the eclipse-specific information
-		String fileName = helper.getPortableName(resource);
-		if (fileName == null) {
-			// The resource is not contained in the current project.
-			// Can't see how this would happen, but check for it anyway.
-			
-			// [122960] null should be allowed
-//			String result = MessageFormat.format(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_SYNTAX_NULL_NAME), 
-//				new Object[]{resource.getName(), vmd.getValidatorDisplayName()});
-//			ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, result);
-
-			IPath resourcePath = resource.getFullPath();
-			if (resourcePath != null) {
-				// Since null file names are not allowed, default to the fully-qualified name of the
-				// resource.
-				fileName = resourcePath.toString();
-			} else {
-				ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, 
-					"portableName is null and path is null for resource " + resource); //$NON-NLS-1$
-				return null;
-			}
-		}
-
-		int ifileDeltaType = getFileDeltaType(iresourceDeltaType);
-		return new WorkbenchFileDelta(fileName, ifileDeltaType, resource);
-	}
-
-
-	/**
-	 * Add the IResource to the vmd's list of resources to validate. Return true if the add was
-	 * successful or false if the add was not successful.
-	 */
-	static boolean addToFileList(Map<ValidatorMetaData, Set<IFileDelta>> enabledValidators, IWorkbenchContext helper, ValidatorMetaData vmd, IResource resource, int resourceDelta, boolean isFullBuild) {
-		if ((vmd == null) || (resource == null)) {
-			return false;
-		}
-
-		try {
-			helper.registerResource(resource);
-		} catch (Exception exc) {
-			ValidationPlugin.getPlugin().handleException(exc);
-			InternalValidatorManager.getManager().addInternalErrorTask(resource.getProject(), vmd, exc);
-
-			// Don't return ... even though the register threw an exception, that's not to say
-			// that the validator can't validate.
-		}
-
-		if (isFullBuild) {
-			// To indicate a full build to the validator, don't build up a list of files;
-			// pass in null instead. Given that the list of files should not be used,
-			// don't calculate it.
-			return true;
-		}
-
-
-		WorkbenchFileDelta newFileDelta = getFileDelta(helper, vmd, resource, resourceDelta);
-		if (newFileDelta != null) {
-			// if delta is null, getFileDelta will have logged the problem already
-			addFileDelta(enabledValidators, vmd, newFileDelta);
-		}
-
-		return true;
-	}
-
-	/**
-	 * Whether a full verification or a delta verification is in progress, both will call this
-	 * method to process the resource. This method calls the current Validator to filter the
-	 * resource (i.e., this method returns if the resource fails the filter test).
-	 * <code>process</code> also sends output to the <code>IProgressMonitor</code>, and calls
-	 * the current Validator to validate the resource.
-	 * 
-	 * To process a resource, there are several steps: 1. check if the resource is registered for
-	 * this validator (i.e., the validator has either specified it in a filter, or has not filtered
-	 * it out explicitly) 2. call <code>isValidationSource</code> on the current validator with
-	 * the current resource. This method performs further filtering by the Validator itself, in
-	 * addition to the static filtering done by the framework, based on the information in
-	 * plugin.xml. 3. If the resource passes both filters, call <code>validate</code> on the
-	 * validator, with the resource. 4. When complete (either by failing to pass a filter, or by the
-	 * completion of the <code>validate</code>), increment the IProgressMonitor's status by one
-	 * (i.e., one resource has been processed.)
-	 */
-	static boolean filterOut(IProgressMonitor monitor, ValidatorMetaData vmd, IResource resource, int resourceDelta) {
-		if (monitor == null) {
-			return false;
-		}
-
-		checkCanceled(monitor);
-		return !(vmd.isApplicableTo(resource, resourceDelta));
-	}
-
-	/**
-	 * Whether a full verification or a delta verification is in progress, both
-	 * will call this method to process the resource. This method calls the
-	 * current Validator to filter the resource (i.e., this method returns if
-	 * the resource fails the filter test). It also sends output to the
-	 * <code>IProgressMonitor</code>, and calls the current Validator to
-	 * validate the resource.
-	 * <p>
-	 * To process a resource, there are several steps:
-	 * <ol>
-	 * <li>Check if the resource is registered for this validator (i.e., the
-	 * validator has either specified it in a filter, or has not filtered it out
-	 * explicitly)
-	 * <li>Call <code>isValidationSource</code> on the current validator with
-	 * the current resource. This method performs further filtering by the
-	 * Validator itself, in addition to the static filtering done by the
-	 * framework, based on the information in the extension point.
-	 * <li>If the resource passes both filters, call <code>validate</code> on
-	 * the validator, with the resource.
-	 * <li>When complete (either by failing to pass a filter, or by the
-	 * completion of the <code>validate</code>), increment the
-	 * IProgressMonitor's status by one (i.e., one resource has been processed.)
-	 * </ol>
-	 */
-	static void filterOut(IProgressMonitor monitor, Map<ValidatorMetaData, Set<IFileDelta>> enabledValidators, 
-		IResource resource, int resourceDelta, boolean isFullBuild) {
-		if (monitor == null)return;
-
-		checkCanceled(monitor);
-
-		boolean cannotLoad = false;
-		for (ValidatorMetaData vmd : enabledValidators.keySet()) {
-			checkCanceled(monitor);
-
-			if (!filterOut(monitor, vmd, resource, resourceDelta)) {
-				try {
-					// Notify the helper that a resource is about to be filtered in
-					IWorkbenchContext helper = vmd.getHelper(resource.getProject());
-					addToFileList(enabledValidators, helper, vmd, resource, resourceDelta, isFullBuild);
-				} catch (InstantiationException e) {
-					cannotLoad = true;
-
-					// Remove the vmd from the reader's list
-					ValidationRegistryReader.getReader().disableValidator(vmd);
-					ValidationPlugin.getPlugin().handleException(e);
-				}
-			}
-		}
-
-		if (cannotLoad) {
-			// Some of the validators need to be removed from the set because the validator
-			// or helper cannot be instantiated.
-			Object[] vmds = enabledValidators.keySet().toArray();
-			for (int i = 0; i < vmds.length; i++) {
-				ValidatorMetaData vmd = (ValidatorMetaData) vmds[i];
-				if (vmd.cannotLoad()) {
-					enabledValidators.remove(vmd);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Whether a full verification or a delta verification is in progress, both will call this
-	 * method to process the resource. This method calls the current Validator to filter the
-	 * resource (i.e., this method returns if the resource fails the filter test).
-	 * <code>process</code> also sends output to the <code>IProgressMonitor</code>, and calls
-	 * the current Validator to validate the resource.
-	 * 
-	 * This method is called during an incremental, not a full, validation. The full validation
-	 * fakes an IResourceDelta, and the incremental needs to check that the delta is one of the
-	 * deltas which is filtered in by the validation framework.
-	 * 
-	 * @see filterOut(IResourceDelta)
-	 * 
-	 * To process a resource, there are several steps: 1. check if the resource is registered for
-	 * this validator (i.e., the validator has either specified it in a filter, or has not filtered
-	 * it out explicitly) 2. call <code>isValidationSource</code> on the current validator with
-	 * the current resource. This method performs further filtering by the Validator itself, in
-	 * addition to the static filtering done by the framework, based on the information in
-	 * plugin.xml. 3. If the resource passes both filters, call <code>validate</code> on the
-	 * validator, with the resource. 4. When complete (either by failing to pass a filter, or by the
-	 * completion of the <code>validate</code>), increment the IProgressMonitor's status by one
-	 * (i.e., one resource has been processed.)
-	 */
-	static void filterOut(IProgressMonitor monitor, Map<ValidatorMetaData, Set<IFileDelta>> enabledValidators, 
-			IResource resource, IResourceDelta delta) {
-		// filter in only resources which have been added, deleted, or its content changed.
-		// moves will be registered as an add & delete combination
-		if (filterOut(delta))return;
-		
-		filterOut(monitor, enabledValidators, resource, delta.getKind(), false); // false =
-		// incremental
-		// build
-	}
-
-	/**
-	 * Filter out resource deltas which don't correspond to changes that validators can validate.
-	 * 
-	 * This method will filter in deltas only if the delta is an add, a delete, or if the content of
-	 * the file has changed.
-	 * 
-	 * Return true if the delta should be filtered out, and false if we should validate it.
-	 * 
-	 * @see IResourceDelta
-	 */
-	static boolean filterOut(IResourceDelta delta) {
-		if (delta == null) {
-			return true;
-		}
-
-		switch (delta.getKind()) {
-			case IResourceDelta.ADDED : // resource has been added to the workbench
-			{
-				return false;
-			}
-
-			case IResourceDelta.REMOVED : // resource has been deleted from the workbench
-			{
-				// If the delta is an IProject, and the IProject is getting deleted or closed, don't
-				// validate it or its children.
-				if (delta.getResource() instanceof IProject) {
-					return true;
-				}
-				return false;
-			}
-
-			case IResourceDelta.CHANGED : // resources has been changed in the workbench
-			{
-				// We want to add the enterprise bean only if its source file's
-				// contents have changed. (for example, if a folder has been
-				// added to the project, the IFile will be changed because
-				// its position has been changed, but the enterprise bean
-				// doesn't need to be redeployed. See IResourceDelta.getFlags()
-				// for more information.)
-				//
-				// Or, if ejb-jar.xml has changed, the EJBJar is destroyed & created
-				// from scratch, so the list of EnterpriseBean is new. Purge the old
-				// EJBJar from the EJBCache (since it will never be referenced again),
-				// and load the new EJBJar into the cache.
-				if ((delta.getResource() instanceof IFile) && ((delta.getFlags() & IResourceDelta.CONTENT) != 0)) {
-					return false;
-				}
-			}
-		}
-		return true;
-	}
-
-	/**
-	 * This method returns true if the given resource and its children should be processed by the
-	 * validators. That is, there are several types of changes which can occur to an IProject which
-	 * should not trigger a revalidation of the project or its children. (e.g. project is deleted or
-	 * closed.) For those cases, or if the IResourceDelta is invalid, this method will return false
-	 * (do not validate the IProject or its children). Otherwise, return true (validate the resource &
-	 * its children). If an IProject itself has not changed, but one of its children has
-	 * (delta.getKind() of NO_CHANGE), then return true so that the children are validated.
-	 */
-	static boolean shouldProcess(IResource resource, IResourceDelta delta) {
-		if ((resource != null) && !(resource instanceof IProject)) {
-			return true;
-		}
-
-		if (delta == null) {
-			return false;
-		}
-
-		switch (delta.getKind()) {
-			case IResourceDelta.ADDED : // resource has been deleted from the workbench; may be part
-			// of a move
-			{
-				if (0 != (delta.getFlags() & IResourceDelta.MOVED_FROM)) {
-					// If it's being moved, don't revalidate its children. If it's being added, fall
-					// through to the "return true;" at the end of this method.
-					return false;
-				}
-				break;
-			}
-
-			case IResourceDelta.REMOVED : // resource has been deleted from the workbench; may be
-			// part of a move
-			{
-				// Whether it's being deleted or moved, don't revalidate its children.
-				return false;
-			}
-
-			case IResourceDelta.CHANGED : // resource has been changed in the workbench; may be part
-			// of a move
-			{
-				if ((delta.getFlags() & IResourceDelta.OPEN) != 0) {
-					// Change is related to the OPEN bit. Whether the project was closed and is now
-					// open,
-					// or the project was open and is now closed, don't need to revalidate the
-					// children.
-					return false;
-				} else if ((delta.getFlags() & IResourceDelta.REPLACED) != 0) {
-					// project was moved
-					return false;
-				}
-
-				break;
-			}
-		}
-
-		return true;
-	}
-
-	private static VMDResourceVisitor getResourceVisitor(IProgressMonitor monitor, Set<ValidatorMetaData> enabledValidators) {
-		if (_resourceVisitor == null) {
-			_resourceVisitor = new VMDResourceVisitor() {
-				private Map<ValidatorMetaData, Set<IFileDelta>> _vmdDeltas = null;
-				private IProgressMonitor _progressMonitor = null;
-
-				public Map<ValidatorMetaData, Set<IFileDelta>> getResult() {
-					return _vmdDeltas;
-				}
-
-				public void setEnabledValidators(Set<ValidatorMetaData> validators) {
-					_vmdDeltas = wrapInMap(validators);
-				}
-
-				public IProgressMonitor getProgressMonitor() {
-					return _progressMonitor;
-				}
-
-				public void setProgressMonitor(IProgressMonitor m) {
-					_progressMonitor = m;
-				}
-
-				public boolean visit(IResource res) throws CoreException {
-					FilterUtil.checkCanceled(getProgressMonitor());
-
-					// We don't need to filter out anything, because a full validation
-					// is about to be performed.
-					filterOut(getProgressMonitor(), _vmdDeltas, res, IResourceDelta.CHANGED, true);
-
-					return true; // visit the resource's children as well
-				}
-			};
-		}
-		_resourceVisitor.setProgressMonitor(monitor);
-		_resourceVisitor.setEnabledValidators(enabledValidators);
-
-		return _resourceVisitor;
-	}
-
-	private static VMDDeltaVisitor getDeltaVisitor(IProgressMonitor monitor, Set<ValidatorMetaData> enabledValidators) {
-		if (_deltaVisitor == null) {
-			_deltaVisitor = new VMDDeltaVisitor() {
-				private Map<ValidatorMetaData, Set<IFileDelta>> _vmdDeltas = null;
-				private IProgressMonitor _progressMonitor = null;
-
-				public Map<ValidatorMetaData, Set<IFileDelta>> getResult() {
-					return _vmdDeltas;
-				}
-
-				public void setEnabledValidators(Set<ValidatorMetaData> validators) {
-					_vmdDeltas = wrapInMap(validators);
-				}
-
-				public IProgressMonitor getProgressMonitor() {
-					return _progressMonitor;
-				}
-
-				public void setProgressMonitor(IProgressMonitor m) {
-					_progressMonitor = m;
-				}
-
-				public boolean visit(IResourceDelta subdelta) throws CoreException {
-					checkCanceled(getProgressMonitor());
-					if (subdelta == null)
-						return true;
-
-					IResource resource = subdelta.getResource();
-
-					if (Tracing.isLogging(2)) {
-						StringBuffer buffer = new StringBuffer("FilterUtil-01: subdelta of "); //$NON-NLS-1$
-						buffer.append(resource.getName());
-						buffer.append(" has resource delta kind: "); //$NON-NLS-1$
-						buffer.append(subdelta.getKind());
-						buffer.append(" Does the resource exist? "); //$NON-NLS-1$
-						buffer.append(resource.exists());
-						buffer.append(" Is it a phantom? "); //$NON-NLS-1$
-						buffer.append(resource.isPhantom());
-						Tracing.log(buffer);
-					}
-
-					// If the delta is an IProject, and the IProject is getting deleted or closed,
-					// don't validate it or its children.
-					if (shouldProcess(resource, subdelta)) {
-						filterOut(getProgressMonitor(), _vmdDeltas, resource, subdelta);
-						return true; // visit the delta's children as well
-					}
-					return false; // do not visit the delta's children
-				}
-			};
-		}
-		_deltaVisitor.setProgressMonitor(monitor);
-		_deltaVisitor.setEnabledValidators(enabledValidators);
-
-		return _deltaVisitor;
-	}
-
-	public static Map<ValidatorMetaData, Set<IFileDelta>> loadDeltas(final IProgressMonitor monitor, 
-			final Set<ValidatorMetaData> enabledValidators,	IResourceDelta delta) throws CoreException {
-		VMDDeltaVisitor visitor = getDeltaVisitor(monitor, enabledValidators);
-		delta.accept(visitor, true); // true means include phantom resources
-		return visitor.getResult();
-	}
-
-	public static Map<ValidatorMetaData, Set<IFileDelta>> loadDeltas(final IProgressMonitor monitor, 
-			final Set<ValidatorMetaData> enabledValidators,	IProject project) throws CoreException {
-		VMDResourceVisitor visitor = getResourceVisitor(monitor, enabledValidators);
-		project.accept(visitor, IResource.DEPTH_INFINITE, true); // true means include phantom
-		// resources
-		return visitor.getResult();
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/GlobalConfiguration.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/GlobalConfiguration.java
deleted file mode 100644
index 20c044f..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/GlobalConfiguration.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.lang.reflect.InvocationTargetException;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-
-/**
- * This class represents the global Preferences as set on the Validation Preferences page.
- */
-public class GlobalConfiguration extends ValidationConfiguration {
-	static final boolean PREF_PROJECTS_CAN_OVERRIDE_DEFAULT = true;
-	static final boolean PREF_SAVE_AUTOMATICALLY_DEFAULT = false;
-
-	private boolean _canProjectsOverride = getCanProjectsOverrideDefault();
-	private boolean _saveAutomatically = getSaveAutomaticallyDefault();
-
-	/**
-	 * This constructor should be used in all cases except for the Preference page's values.
-	 */
-	public GlobalConfiguration(IWorkspaceRoot root) throws InvocationTargetException {
-		super(root, convertToArray(ValidationRegistryReader.getReader().getAllValidators()));
-
-		// Can't put the call to load() and passivate() in the ValidationConfiguration constructor due
-		// to the order of initialization.
-		//    1. First the ValidationConfiguration constructor is called, and that loads the stored values.
-		//    2. Then this class's <init> method is called, and that initializes the "override" field
-		// 	  to the default, which may be different than the stored value.
-	}
-
-	/**
-	 * This constructor is provided only for the Preference page, so that the page can store values
-	 * without persisting them (i.e., if the user presses Cancel then nothing needs to be done.)
-	 */
-	public GlobalConfiguration(GlobalConfiguration original) throws InvocationTargetException {
-		super(original.getResource());
-		original.copyTo(this);
-	}
-
-	public boolean canProjectsOverride() {
-		return _canProjectsOverride;
-	}
-
-	public void setCanProjectsOverride(boolean can) {
-		_canProjectsOverride = can;
-	}
-	
-	public boolean getSaveAutomatically() {
-		return _saveAutomatically;
-	}
-	
-	public void setSaveAutomatically(boolean save) {
-		_saveAutomatically = save;
-	}
-
-	public void resetToDefault()  throws InvocationTargetException {
-		setDisableAllValidation(getDisableValidationDefault());
-		setEnabledValidators(getEnabledValidatorsDefault());
-		setEnabledManualValidators(getManualEnabledValidators());
-		setEnabledBuildValidators(getBuildEnabledValidators());
-		setCanProjectsOverride(getCanProjectsOverrideDefault());
-		setSaveAutomatically(getSaveAutomaticallyDefault());
-		setDefaultDelegates(getValidators());
-	}
-
-	/**
-	 * This method exists only for migration purposes. The root marker must be deleted after
-	 * migration is complete.
-	 */
-	protected IMarker[] getMarker() {
-		try {
-			IWorkspaceRoot root = getRoot();
-			IMarker[] markers = root.findMarkers(ConfigurationConstants.PREFERENCE_MARKER, false, IResource.DEPTH_ONE);
-
-			if (markers.length == 1) {
-				return markers;
-			}
-			// job is done. Nothing to migrate.
-			return null;
-
-		} catch (CoreException e) {
-			// Can't find the IMarker? Assume it's deleted.
-			ValidationPlugin.getPlugin().handleException(e);
-			return null;
-		}
-	}
-
-	protected void load(IMarker[] marker) throws InvocationTargetException {
-		// The 5.0 preferences were stored in an IMarker, and the current.preferences are stored in
-		// PersistentProperties on the IResource.
-		// A 5.0 root can have no marker values if the preference page, properties page, and
-		// validation were never viewed or run.
-		try {
-			IWorkspaceRoot root = getRoot();
-			if (marker == null) {
-				// There were no global preferences in 4.03, so the migration is to create some.
-				resetToDefault(); // assign the default values to the new Global Preference
-				return;
-			}
-
-			IMarker rootMarker = marker[0]; // getMarker() has already checked that there's a marker
-			// in the array
-//			ValidatorMetaData[] enabledValidators = null;
-//			String enabledValidatorsString = (String) getValue(rootMarker, ConfigurationConstants.ENABLED_VALIDATORS);
-//			if (enabledValidatorsString == null) {
-//				enabledValidators = ConfigurationConstants.DEFAULT_ENABLED_VALIDATORS;
-//			} else {
-//				enabledValidators = getStringAsEnabledElementsArray(enabledValidatorsString);
-//			}
-//
-//			setEnabledValidators(enabledValidators);
-			String enabledManualValidators = (String) getValue(rootMarker, ConfigurationConstants.ENABLED_MANUAL_VALIDATORS);
-			setEnabledManualValidators(getStringAsEnabledElementsArray(enabledManualValidators));
-			String enabledBuildValidators = (String) getValue(rootMarker, ConfigurationConstants.ENABLED_BUILD_VALIDATORS);
-			setEnabledManualValidators(getStringAsEnabledElementsArray(enabledBuildValidators));
-//			if (enabledManualValidators.equals(null) || enabledBuildValidators.equals(null)) 
-//				enabledValidators = ConfigurationConstants.DEFAULT_ENABLED_VALIDATORS;
-			setCanProjectsOverride(getValue(rootMarker, ConfigurationConstants.PREF_PROJECTS_CAN_OVERRIDE, PREF_PROJECTS_CAN_OVERRIDE_DEFAULT));
-			root.getWorkspace().deleteMarkers(marker);
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-
-	protected void copyTo(GlobalConfiguration gp) throws InvocationTargetException {
-		super.copyTo(gp);
-
-		// Need to have a distinct method for this child class (i.e., the parameter
-		// is not a ValidationConfiguration) because if this initialization is
-		// called as part of ValidationConfiguration's constructor, then the value of
-		// this field is overwritten. Fields of this class are initialized to the
-		// default after the ValidationConfiguration parent is created.
-		gp.setCanProjectsOverride(canProjectsOverride());
-		gp.setSaveAutomatically(getSaveAutomatically());
-	}
-
-	public static boolean getCanProjectsOverrideDefault() {
-		return PREF_PROJECTS_CAN_OVERRIDE_DEFAULT;
-	}
-	
-	public static boolean getSaveAutomaticallyDefault() {
-		return PREF_SAVE_AUTOMATICALLY_DEFAULT;
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.attribute.ValidationConfiguration#deserialize(String)
-	 */
-	public void deserialize(String storedConfiguration) throws InvocationTargetException {
-		super.deserialize(storedConfiguration);
-
-		if (storedConfiguration != null && storedConfiguration.length() > 0) {
-			// If it's null, then super.deserialize has already called resetToDefault to initialize
-			// this instance.
-			int canOverrideIndex = storedConfiguration.indexOf(ConfigurationConstants.PREF_PROJECTS_CAN_OVERRIDE);
-			int disableAllValidationIndex = storedConfiguration.indexOf(ConfigurationConstants.DISABLE_ALL_VALIDATION_SETTING);
-			int saveAutomaticallyIndex = storedConfiguration.indexOf(ConfigurationConstants.SAVE_AUTOMATICALLY_SETTING);
-			if (disableAllValidationIndex != -1) {
-				String canOverride = storedConfiguration.substring(canOverrideIndex + ConfigurationConstants.PREF_PROJECTS_CAN_OVERRIDE.length(), disableAllValidationIndex);
-				setCanProjectsOverride(Boolean.valueOf(canOverride).booleanValue());
-			}
-			if(saveAutomaticallyIndex != -1)
-			{
-				String saveAutomatically = storedConfiguration.substring(saveAutomaticallyIndex + ConfigurationConstants.SAVE_AUTOMATICALLY_SETTING.length(), canOverrideIndex);
-				setSaveAutomatically(Boolean.valueOf(saveAutomatically).booleanValue());
-			}
-		}
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.attribute.ValidationConfiguration#serialize()
-	 */
-	public String serialize() throws InvocationTargetException {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(ConfigurationConstants.SAVE_AUTOMATICALLY_SETTING);
-		buffer.append(String.valueOf(getSaveAutomatically()));
-		buffer.append(ConfigurationConstants.PREF_PROJECTS_CAN_OVERRIDE);
-		buffer.append(String.valueOf(canProjectsOverride()));
-		buffer.append(super.serialize());
-		return buffer.toString();
-	}
-
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/IProjectValidationHelper.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/IProjectValidationHelper.java
deleted file mode 100644
index 959988e..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/IProjectValidationHelper.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IProject;
-
-/**
- * ValidatorHelper extensions must implement this interface.
- */
-public interface IProjectValidationHelper {
-	
-	public IContainer[] getOutputContainers(IProject project);
-	
-	public IContainer[] getSourceContainers(IProject project);
-	
-	public void disposeInstance();
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/IValidationSelectionHandler.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/IValidationSelectionHandler.java
deleted file mode 100644
index 38292b6..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/IValidationSelectionHandler.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IResource;
-
-/**
- * This is used by extensions to add valid validation types to the validate
- * menu action.
- */
-public interface IValidationSelectionHandler {
-
-	/**
-	 * Return a valid IResource type for the extensible object selection,
-	 * should be instance of IFolder, IFile, or IProject if this extension knows
-	 * how to handle the selection, otherwise it should return null
-	 */ 
-	public IResource getBaseValidationType(Object selection);
-	
-	/**
-	 * @return the classname of the validation type to register for validation
-	 */
-	public String getValidationTypeString();
-	
-	public void setValidationTypeString(String validationType);
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/InternalValidatorManager.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/InternalValidatorManager.java
deleted file mode 100644
index 5f9dba8..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/InternalValidatorManager.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.validation.internal.core.Message;
-import org.eclipse.wst.validation.internal.operations.WorkbenchReporter;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-
-public final class InternalValidatorManager {
-	private static InternalValidatorManager _inst = null;
-	private static final String OP_GROUP = "ValidationOperation"; //$NON-NLS-1$ // when the ValidationOperation
-
-	// adds a message to the task
-	// list; e.g. cancel, or internal
-	// error, this group name is used
-	// to distinguish between the
-	// messages that the validator
-	// itself put, and the ones which
-	// the validator owns, but the
-	// operation put. //$NON-NLS-1$
-
-	private InternalValidatorManager() {
-		//default
-	}
-
-	public static InternalValidatorManager getManager() {
-		if (_inst == null) {
-			_inst = new InternalValidatorManager();
-		}
-		return _inst;
-	}
-
-	/**
-	 * Return a new Set that contains all of the elements from the array.
-	 */
-	public static Set<ValidatorMetaData> wrapInSet(ValidatorMetaData[] vmds) {
-		Set<ValidatorMetaData> result = new HashSet<ValidatorMetaData>();
-		if ((vmds == null) || (vmds.length == 0))return result;
-
-		for (ValidatorMetaData vmd : vmds)result.add(vmd);
-
-		return result;
-	}
-
-	/**
-	 * If the current validator throws a Throwable, log the internal error to the task list.
-	 * 
-	 * This method is for use by the validation framework only.
-	 */
-	public void addInternalErrorTask(IProject project, ValidatorMetaData vmd, Throwable exc) {
-		addOperationTask(project, vmd, ResourceConstants.VBF_EXC_INTERNAL, new String[]{project.getName(), vmd.getValidatorDisplayName(), ((exc.getMessage() == null) ? "" : exc.getMessage())}); //$NON-NLS-1$
-	}
-
-	/**
-	 * If the user is cancelling validation on the current project/resource, Add an information task
-	 * to the task list informing the user that validation has not been run on the current project.
-	 * 
-	 * If the current validator throws a Throwable, log the internal error to the task list.
-	 */
-	public void addOperationTask(IProject project, ValidatorMetaData vmd, String messageId, String[] parms) {
-		Message message = ValidationPlugin.getMessage();
-		message.setSeverity(IMessage.LOW_SEVERITY);
-		message.setId(messageId);
-		message.setParams(parms);
-		message.setGroupName(OP_GROUP);
-
-		// Although the message is owned by the validator, the string of the message has to be
-		// loaded by this class' ClassLoader
-		WorkbenchReporter.addMessage(project, vmd.getValidatorUniqueName(), getClass().getClassLoader(), message);
-	}
-
-
-	/**
-	 * If the user cancelled the previous validation with this validator, or if there was a
-	 * Throwable caught during the last execution of this validator, and the validator is in the
-	 * process of validating now, remove the former information task messages.
-	 */
-	public void removeOperationTasks(IProject project, ValidatorMetaData vmd) {
-		WorkbenchReporter.removeMessageSubset(project, vmd.getValidatorUniqueName(), OP_GROUP);
-	}
-
-	/**
-	 * Return an array of the fully-qualified names of the validator classes.
-	 */
-	public String[] getValidatorNames(ValidatorMetaData[] vmds) {
-		Set<String> temp = new HashSet<String>();
-		for (ValidatorMetaData vmd : vmds) {
-			for (String name : vmd.getValidatorNames()) {
-				temp.add(name);
-			}
-		}
-
-		String[] vmdNames = new String[temp.size()];
-		temp.toArray(vmdNames);
-		return vmdNames;
-	}
-
-	/**
-	 * Return an array of the fully-qualified names of the validator classes.
-	 */
-	public String[] getValidatorNames(Collection<ValidatorMetaData> vmds) {
-		Set<String> temp = new HashSet<String>();
-		for (ValidatorMetaData vmd : vmds) {
-			for (String name : vmd.getValidatorNames()) {
-				temp.add(name);
-			}
-		}
-
-		String[] vmdNames = new String[temp.size()];
-		temp.toArray(vmdNames);
-		return vmdNames;
-	}
-
-	/**
-	 * Return a list of validators that validate files with the given extension.
-	 */
-	public ValidatorMetaData[] getValidatorsForExtension(IProject project, String fileExtension) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-
-			// Get all of the validators configured on the project for the given file extension
-			ValidatorMetaData[] vmds = prjp.getValidators();
-
-			// Construct a fake IFile type to represent a file with this extension.
-			StringBuffer buffer = new StringBuffer(project.getName());
-			buffer.append(IPath.SEPARATOR);
-			buffer.append(fileExtension);
-			IPath path = new Path(buffer.toString());
-			IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
-
-			ValidatorMetaData[] temp = new ValidatorMetaData[vmds.length];
-			int count = 0;
-			for (int i = 0; i < vmds.length; i++) {
-				ValidatorMetaData vmd = vmds[i];
-				if (vmd.isApplicableTo(file)) {
-					temp[count++] = vmd;
-				}
-			}
-
-			ValidatorMetaData[] result = new ValidatorMetaData[count];
-			System.arraycopy(temp, 0, result, 0, count);
-			return result;
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			if (e.getTargetException() != null)
-				ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return new ValidatorMetaData[0];
-		}
-	}
-
-	/**
-	 * Return a list of validator names that validate files with the given extension.
-	 */
-	public String[] getValidatorNamesForExtension(IProject project, String fileExtension) {
-		ValidatorMetaData[] vmds = getValidatorsForExtension(project, fileExtension);
-
-		String[] names = new String[vmds.length];
-		for (int i = 0; i < names.length; i++) {
-			names[i] = vmds[i].getValidatorUniqueName();
-		}
-		return names;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ProjectConfiguration.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ProjectConfiguration.java
deleted file mode 100644
index 5f39ecf..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ProjectConfiguration.java
+++ /dev/null
@@ -1,659 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.internal.delegates.ValidatorDelegateDescriptor;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * This class represents the Project Preferences as set on the Project's Validation Properties page.
- */
-public class ProjectConfiguration extends ValidationConfiguration {
-	
-	/** false - If the user has never set a preference before, this is the override default */
-	static final boolean PRJ_OVERRIDEGLOBAL_DEFAULT = false;
-	
-	/** default_value - the configuration is using the defaults. */
-	private static final String DefaultValue = "default_value"; //$NON-NLS-1$
-	
-	private boolean _doesProjectOverride = getDoesProjectOverrideDefault();
-
-	/**
-	 * This constructor should be used in all cases except for the Properties page's values.
-	 */
-	protected ProjectConfiguration(IProject project) throws InvocationTargetException {
-		// The extractProjectValidators method extracts just this project's validators from the
-		// global list.
-		super(project, extractProjectValidators(convertToArray(ValidationRegistryReader.getReader().getAllValidators()), project));
-
-		// Can't put the call to load() and passivate() in the ValidationConfiguration constructor due
-		// to the order of initialization.
-		//    1. First the ValidationConfiguration constructor is called, and that loads the stored values.
-		//    2. Then this class's <init> method is called, and that initializes the "override" field
-		//       to the default, which may be different than the stored value.
-	}
-
-	/**
-	 * This constructor is provided only for the Properties page, so that the page can store values
-	 * without persisting them (i.e., if the user presses Cancel then nothing needs to be done.)
-	 * 
-	 * @deprecated
-	 */
-	public ProjectConfiguration(ProjectConfiguration original) throws InvocationTargetException {
-		super(original.getResource());
-		original.copyTo(this);
-	}
-
-	/**
-	 * Return the ValidationConfiguration to use, whether global or project.
-	 */
-	public boolean useGlobalPreference() {
-		try {
-			GlobalConfiguration gp = ConfigurationManager.getManager().getGlobalConfiguration();
-			if (gp == null) {
-				return false;
-			}
-
-			if (!gp.canProjectsOverride()) {
-				// If project's can't override the global, use the global
-				return true;
-			}
-
-			// If the project overrides, then don't use the global.
-			// If the project does not override, use the global.
-			return !_doesProjectOverride;
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return false;
-		}
-	}
-	
-	public boolean getDoesProjectOverride(){
-		return _doesProjectOverride;
-	}
-
-	public boolean doesProjectOverride() {
-		// If the global preference doesn't allow projects to override, it doesn't matter what the
-		// value of _doesProjectOverride is.
-		return !useGlobalPreference();
-	}
-
-	public void setDoesProjectOverride(boolean does) {
-		_doesProjectOverride = does;
-	}
-
-	/**
-	 * If the preferences should be used then the preference settings are returned; otherwise return
-	 * the project settings.
-	 */
-	public ValidatorMetaData[] getEnabledValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return extractProjectValidators(ConfigurationManager.getManager().getGlobalConfiguration().getEnabledValidators(), getResource());
-		}
-		return super.getEnabledValidators();
-	}
-	
-	public ValidatorMetaData[] getManualEnabledValidators() throws InvocationTargetException  {
-		if (useGlobalPreference()) {
-			return extractProjectValidators(ConfigurationManager.getManager().getGlobalConfiguration().getManualEnabledValidators(), getResource());
-		}
-		return super.getManualEnabledValidators();
-	}
-	
-	public ValidatorMetaData[] getBuildEnabledValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return extractProjectValidators(ConfigurationManager.getManager().getGlobalConfiguration().getBuildEnabledValidators(), getResource());
-		}
-		return super.getBuildEnabledValidators();
-	}
-	
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.preference.ValidationConfiguration#getDisabledValidators()
-	 */
-	public ValidatorMetaData[] getDisabledValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return extractProjectValidators(ConfigurationManager.getManager().getGlobalConfiguration().getDisabledValidators(), getResource());
-		}
-		return super.getDisabledValidators();
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.preference.ValidationConfiguration#getValidators()
-	 */
-	public ValidatorMetaData[] getValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return extractProjectValidators(ConfigurationManager.getManager().getGlobalConfiguration().getValidators(), getResource());
-		}
-		return super.getValidators();
-	}
-
-  public Map<String,String> getDelegatingValidators() throws InvocationTargetException {
-    if (useGlobalPreference()) {
-      return ConfigurationManager.getManager().getGlobalConfiguration().getDelegatingValidators();
-    }
-    return super.getDelegatingValidators();
-  }
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.attribute.ValidationConfiguration#getEnabledIncrementalValidators(boolean)
-	 */
-	public ValidatorMetaData[] getEnabledIncrementalValidators(boolean incremental) throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return extractProjectValidators(ConfigurationManager.getManager().getGlobalConfiguration().getEnabledIncrementalValidators(incremental), getResource());
-		}
-		return super.getEnabledIncrementalValidators(incremental);
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.preference.ValidationConfiguration#isEnabled(ValidatorMetaData)
-	 */
-	public boolean isEnabled(ValidatorMetaData vmd) throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return ConfigurationManager.getManager().getGlobalConfiguration().isEnabled(vmd);
-		}
-		return super.isEnabled(vmd);
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.preference.ValidationConfiguration#numberOfDisabledValidators()
-	 */
-	public int numberOfDisabledValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return ConfigurationManager.getManager().getGlobalConfiguration().numberOfDisabledValidators();
-		}
-		return super.numberOfDisabledValidators();
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.preference.ValidationConfiguration#numberOfEnabledIncrementalValidators()
-	 */
-	public int numberOfEnabledIncrementalValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return ConfigurationManager.getManager().getGlobalConfiguration().numberOfEnabledIncrementalValidators();
-		}
-		return super.numberOfEnabledIncrementalValidators();
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.preference.ValidationConfiguration#numberOfEnabledValidators()
-	 */
-	public int numberOfEnabledValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return ConfigurationManager.getManager().getGlobalConfiguration().numberOfEnabledValidators();
-		}
-		return super.numberOfEnabledValidators();
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.preference.ValidationConfiguration#numberOfIncrementalValidators()
-	 */
-	public int numberOfIncrementalValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return ConfigurationManager.getManager().getGlobalConfiguration().numberOfIncrementalValidators();
-		}
-		return super.numberOfIncrementalValidators();
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.internal.preference.ValidationConfiguration#numberOfValidators()
-	 */
-	public int numberOfValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return ConfigurationManager.getManager().getGlobalConfiguration().numberOfValidators();
-		}
-		return super.numberOfValidators();
-	}
-
-	/**
-	 * This method could be called with the project's values, or with the global preference values.
-	 * Validators that are not configured on this project will be ignored.
-	 */
-	public void setEnabledValidators(ValidatorMetaData[] vmds) {
-		super.setEnabledValidators(extractProjectValidators(vmds, getResource()));
-	}
-
-	/**
-	 * This method could be called with the project's values, or with the global preference values.
-	 * Validators that are not configured on this project will be ignored.
-	 */
-	public void setValidators(ValidatorMetaData[] vmds) {
-		super.setValidators(extractProjectValidators(vmds, getResource()));
-	}
-
-	/**
-	 * Given a set of validators, usually the global preference set, change the set so that it
-	 * contains only the validators configured on this project.
-	 */
-	private static ValidatorMetaData[] extractProjectValidators(ValidatorMetaData[] vmds, IResource resource) {
-		ValidationRegistryReader reader = ValidationRegistryReader.getReader();
-		int length = (vmds == null) ? 0 : vmds.length;
-		ValidatorMetaData[] temp = new ValidatorMetaData[length];
-		if (length == 0) {
-			return temp;
-		}
-
-		int count = 0;
-		IProject project = (IProject) resource;
-		for (int i = 0; i < vmds.length; i++) {
-			ValidatorMetaData vmd = vmds[i];
-			if (reader.isConfiguredOnProject(vmd, project)) {
-				temp[count++] = vmd;
-			}
-		}
-
-		ValidatorMetaData[] result = new ValidatorMetaData[count];
-		System.arraycopy(temp, 0, result, 0, count);
-		temp = null;
-
-		return result;
-	}
-
-	public void resetToDefault() throws InvocationTargetException {
-		// The default values of the project is whatever the preference values are
-		GlobalConfiguration gp = ConfigurationManager.getManager().getGlobalConfiguration();
-
-		setEnabledManualValidators(gp.getManualEnabledValidators());
-		setEnabledBuildValidators(gp.getBuildEnabledValidators());
-		setDelegatingValidators(gp.getDelegatingValidators());
-		
-		// except for this field, which is unique to the project preferences
-		setDoesProjectOverride(getDoesProjectOverrideDefault());
-	}
-
-	public void resetToDefaultForProjectDescriptionChange() throws InvocationTargetException {
-		// The default values of the project is whatever the preference values are
-		GlobalConfiguration gp = ConfigurationManager.getManager().getGlobalConfiguration();
-		setEnabledManualValidators(gp.getManualEnabledValidators());
-		setEnabledBuildValidators(gp.getBuildEnabledValidators());
-		setDelegatingValidators(gp.getDelegatingValidators());
-	}
-
-	/**
-	 * The project's nature has changed, so recalculate the validators that are configured on the
-	 * project, and reset the values of the project to the default.
-	 * 
-	 * @deprecated this method doesn't do anything
-	 */
-	public void resetProjectNature() {
-		/*
-		 * We do not want to perform the resetting the of the validators as the nature never gets
-		 * reset due to change in the project references - VKB GlobalConfiguration gp =
-		 * ConfigurationManager.getManager().getGlobalConfiguration();
-		 * setValidators(gp.getValidators()); // Reset the validators that are configured on the
-		 * project (the ProjectConfiguration automatically saves only the validators that are
-		 * configured on the project). resetToDefault(); // Given that the project is "new", reset
-		 * its values to the Preferences.
-		 */
-	}
-
-	/**
-	 * This method exists only for migration purposes. The project marker must be deleted after
-	 * migration is complete.
-	 */
-	protected IMarker[] getMarker() {
-		try {
-			// First try to find the 4.03 project marker.
-			IMarker[] allMarkers = getResource().findMarkers(ConfigurationConstants.PRJ_MARKER_403, false, IResource.DEPTH_ZERO);
-
-			// If it doesn't exist, then this might be a 5.0 project marker.
-			if ((allMarkers == null) || (allMarkers.length == 0)) {
-				allMarkers = getResource().findMarkers(ConfigurationConstants.PRJ_MARKER, false, IResource.DEPTH_ZERO);
-			}
-
-			// There should be only one projectmarker.
-			if (allMarkers.length == 1) {
-				return allMarkers;
-			}
-			// Job is done. Nothing to migrate.
-			return null;
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return null;
-		}
-	}
-
-	protected void load(IMarker[] marker) {
-		// 4.03 project preferences are different from the current in the following ways:
-		//    1. Only preferences that could be set were the enabled validators and the auto-validate
-		// option.
-		//    2. The preferences were stored in an IMarker instead of a PersistentProperty.
-		// The 5.0 project settings were stored in an IMarker, and the current settings are stored
-		// in a PersistentProperty.
-		// A 5.0 project could have a null validation marker if the validation page was never
-		// opened on it, and if validation was never run.
-		try {
-			if (marker == null) {
-				// Assume default values
-				resetToDefault();
-				return;
-			}
-
-			IMarker prjMarker = marker[0]; // getProjectMarker() has already checked that there's a
-			// marker in the array
-//			GlobalConfiguration gp = ConfigurationManager.getManager().getGlobalConfiguration();
-
-//			String enabledValStr = (String) getValue(prjMarker, ConfigurationConstants.ENABLED_VALIDATORS);
-//			ValidatorMetaData[] enabledVal = null;
-//			if (enabledValStr == null) {
-//				enabledVal = gp.getEnabledValidators();
-//			} else {
-//				enabledVal = getStringAsEnabledElementsArray(enabledValStr);
-//			}
-//			setEnabledValidators(enabledVal);
-			
-			ValidatorMetaData[] enabledManaualVal = null;
-			ValidatorMetaData[] enabledBuildVal = null;
-			String enabledManualValStr = (String) getValue(prjMarker, ConfigurationConstants.ENABLED_MANUAL_VALIDATORS);
-			String enabledBuildValStr = (String) getValue(prjMarker, ConfigurationConstants.ENABLED_BUILD_VALIDATORS);
-//			ValidatorMetaData[] enabledVal = null;
-//			if (enabledManualValStr.equals(null) || enabledBuildValStr.equals(null)) {
-//				enabledVal = gp.getEnabledValidators();
-//			} else {
-			if (!enabledManualValStr.equals(null) && !enabledBuildValStr.equals(null)) {
-				enabledManaualVal = getStringAsEnabledElementsArray(enabledManualValStr);
-				setEnabledManualValidators(enabledManaualVal);
-				enabledBuildVal = getStringAsEnabledElementsArray(enabledManualValStr);
-				setEnabledBuildValidators(enabledBuildVal);
-			}
-			
-			String version = loadVersion(marker); // In 4.03, every project had its own validators &
-			// auto-validate settings.
-			Boolean boolVal = (Boolean) getValue(prjMarker, ConfigurationConstants.PRJ_OVERRIDEGLOBAL);
-			if ((boolVal == null) && (version.equals(ConfigurationConstants.VERSION4_03))) {
-				// Different default for 4.03. In 4.03, all projects overrode the global, because
-				// the
-				// global preferences didn't exist.
-				setDoesProjectOverride(true);
-			} else if (boolVal == null) {
-				setDoesProjectOverride(getDoesProjectOverrideDefault());
-			} else {
-				setDoesProjectOverride(boolVal.booleanValue());
-			}
-
-			getResource().getWorkspace().deleteMarkers(marker);
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-
-	protected void copyTo(ProjectConfiguration prjp) throws InvocationTargetException {
-		super.copyTo(prjp);
-
-		// Need to have a distinct method for this child class (i.e., the parameter
-		// is not a ValidationConfiguration) because if this initialization is
-		// called as part of ValidationConfiguration's constructor, then the value of
-		// this field is overwritten. Fields of this class are initialized to the
-		// default after the ValidationConfiguration parent is created.
-		prjp.setDoesProjectOverride(doesProjectOverride());
-	}
-
-	public static boolean getDoesProjectOverrideDefault() {
-		return PRJ_OVERRIDEGLOBAL_DEFAULT;
-	}
-
-	/**
-	 * Return true if the enabled validators have not changed since this ValidationConfiguration was
-	 * constructed, false otherwise. (This method is needed for the Properties and Preference pages;
-	 * if the list of validators hasn't changed, then there is no need to update the task list;
-	 * updating the task list is a costly operation.)
-	 * 
-	 * The "allow" parameter represents whether or not the global "allow projects to override" has
-	 * been changed: - TRUE means that the preference "allow" parameter has been changed - FALSE
-	 * means that the preference "allow" paramter has not been changed
-	 */
-	public boolean hasEnabledValidatorsChanged(ValidatorMetaData[] oldEnabledVmd, boolean allow) throws InvocationTargetException {
-		// First check the obvious: is every enabled validator still enabled, and is
-		// the number of enabled validators the same as it was before? If not, return true.
-		if (super.hasEnabledValidatorsChanged(oldEnabledVmd)) {
-			return true;
-		}
-
-
-		// If the global preference validators have changed, does the task list need to be updated?
-		// PREF | PROJ | UPDATE
-		// ALLOW | OVERRIDE | TASK LIST
-		//------------------------------
-		//     0 | 0 | 1
-		//     0 | 1 | 1
-		//     1 | 0 | 1
-		//     1 | 1 | 0
-		//
-		// If the global "allow" preference changes from "allow" to "don't allow", or vice versa,
-		// and the project overrides the preferences, and the validators differ between the project
-		// and the preferences, then the task list must be updated.
-		if (allow) {
-			// "allow" has changed, so see if the preference and the project validators match.
-			ValidatorMetaData[] projEnabledVmd = super.getEnabledValidators(); // bypass the check
-			// for whether the global preferences are to be used or not
-			GlobalConfiguration gp = ConfigurationManager.getManager().getGlobalConfiguration();
-			return gp.hasEnabledValidatorsChanged(projEnabledVmd);
-		}
-
-		return false;
-	}
-
-  public boolean haveDelegatesChanged(Map<String, String> oldDelegates, boolean allow) throws InvocationTargetException {
-
-    if (super.haveDelegatesChanged(oldDelegates)) {
-      return true;
-    }
-
-    if (allow) {
-      Map<String, String> projDelegates = super.getDelegatingValidators(); 
-      GlobalConfiguration gp = ConfigurationManager.getManager().getGlobalConfiguration();
-      return gp.haveDelegatesChanged(projDelegates);
-    }
-      
-    return false;
-  }
-
-
-	public void deserialize(String storedConfiguration) throws InvocationTargetException {
-		if (storedConfiguration == null || storedConfiguration.length() == 0 || storedConfiguration.equals(DefaultValue)) {
-			resetToDefault();
-		} else if (storedConfiguration != null) {
-			int prjOverrideIndex = storedConfiguration.indexOf(ConfigurationConstants.PRJ_OVERRIDEGLOBAL);
-			int disableAllValidationIndex = storedConfiguration.indexOf(ConfigurationConstants.DISABLE_ALL_VALIDATION_SETTING);
-			int versionIndex = storedConfiguration.indexOf(ConfigurationConstants.VERSION);
-			if (disableAllValidationIndex != -1) {
-				String disableAllValidation = storedConfiguration.substring(disableAllValidationIndex + ConfigurationConstants.DISABLE_ALL_VALIDATION_SETTING.length(), versionIndex);
-				setDisableAllValidation(Boolean.valueOf(disableAllValidation).booleanValue());
-			} else {
-				setDisableAllValidation(false);
-			}
-			// project doesn't override the global
-			if (disableAllValidationIndex != -1) {
-				String prjOverride = storedConfiguration.substring(prjOverrideIndex + ConfigurationConstants.PRJ_OVERRIDEGLOBAL.length(), disableAllValidationIndex);
-				setDoesProjectOverride(Boolean.valueOf(prjOverride).booleanValue());
-			}
-		}
-	}
-
-	public String serialize() throws InvocationTargetException {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(ConfigurationConstants.PRJ_OVERRIDEGLOBAL);
-		buffer.append(String.valueOf(doesProjectOverride()));
-		if (doesProjectOverride()) {
-			// Store common values for the Project configuration only if they differ from the global
-			buffer.append(super.serialize());
-		}
-		return buffer.toString();
-	}
-
-	public ValidatorMetaData[] getEnabledFullBuildValidators(boolean fullBuild) throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return extractProjectValidators(ConfigurationManager.getManager().getGlobalConfiguration().getEnabledFullBuildValidators(fullBuild), getResource());
-		}
-		return super.getEnabledFullBuildValidators(fullBuild);
-	}
-
-	/**
-	 * Given a set of validators, usually the global preference set, change the set so that it
-	 * contains only the validators configured on this project.
-	 */
-	private static ValidatorMetaData[] extractProjectValidators(ValidatorMetaData[] vmds, IResource resource, boolean onlyReferenced) {
-		ValidationRegistryReader reader = ValidationRegistryReader.getReader();
-		int length = (vmds == null) ? 0 : vmds.length;
-		ValidatorMetaData[] temp = new ValidatorMetaData[length];
-		if (length == 0) {
-			return temp;
-		}
-
-		int count = 0;
-		IProject project = (IProject) resource;
-		for (int i = 0; i < vmds.length; i++) {
-			ValidatorMetaData vmd = vmds[i];
-			if (reader.isConfiguredOnProject(vmd, project)) {
-				if (!onlyReferenced || vmd.isDependentValidator())
-					temp[count++] = vmd;
-			}
-		}
-
-		ValidatorMetaData[] result = new ValidatorMetaData[count];
-		System.arraycopy(temp, 0, result, 0, count);
-		temp = null;
-
-		return result;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.validation.internal.operations.internal.attribute.ValidationConfiguration#getEnabledFullBuildValidators(boolean)
-	 */
-	public ValidatorMetaData[] getEnabledFullBuildValidators(boolean fullBuild, boolean onlyReferenced) throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return extractProjectValidators(ConfigurationManager.getManager().getGlobalConfiguration().getEnabledFullBuildValidators(fullBuild), getResource(), onlyReferenced);
-		}
-		return super.getEnabledFullBuildValidators(fullBuild, onlyReferenced);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.validation.internal.operations.internal.attribute.ValidationConfiguration#getIncrementalValidators()
-	 */
-	public ValidatorMetaData[] getIncrementalValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return extractProjectValidators(ConfigurationManager.getManager().getGlobalConfiguration().getIncrementalValidators(), getResource());
-		}
-		return super.getIncrementalValidators();
-	}
-
-	public int numberOfManualValidators() throws InvocationTargetException {
-		if (useGlobalPreference()) {
-			return ConfigurationManager.getManager().getGlobalConfiguration().numberOfManualEnabledValidators();
-		}
-		return super.numberOfManualEnabledValidators();
-	}
-	public boolean isDisableAllValidation() throws InvocationTargetException{
-		if (useGlobalPreference()) {
-			return ConfigurationManager.getManager().getGlobalConfiguration().isDisableAllValidation();
-		}
-		return super.isDisableAllValidation();
-	}	
-
-  public ValidatorDelegateDescriptor getDelegateDescriptor(ValidatorMetaData vmd) throws InvocationTargetException {
-    if (useGlobalPreference()) {
-      return ConfigurationManager.getManager().getGlobalConfiguration().getDelegateDescriptor(vmd);
-    }
-    
-    return super.getDelegateDescriptor(vmd);
-  }
-  
-  public void store() throws InvocationTargetException {
-		IProject project = (IProject) getResource();
-		final PreferencesWrapper pref = PreferencesWrapper.getPreferences(project, null);
-		if (pref != null) {
-			try {
-				pref.put(ValidationConfiguration.UserPreference, serialize());
-				pref.put(ValidationConfiguration.UserManualPreference, serializeManualSetting());
-				pref.put(ValidationConfiguration.UserBuildPreference, serializeBuildSetting());
-				pref.put(ValidationConfiguration.DelegatesPreference, serializeDelegatesSetting());
-				pref.flush();
-			} catch (BackingStoreException e) {
-				// A common error is that the project has been closed, in which case there
-				// is nothing that we can do.
-				if (project.isAccessible())ValidationPlugin.getPlugin().handleException(e);
-			}
-		}
-	}
-  
-  protected void loadPreference() throws InvocationTargetException {
-		IProject project = (IProject) getResource();
-		final PreferencesWrapper prefs = PreferencesWrapper.getPreferences(project, null);
-		if (prefs.nodeExists()) { 
-			String storedConfig = prefs.get(ValidationConfiguration.UserPreference, DefaultValue);
-			deserialize(storedConfig);
-			String storedManualConfig = prefs.get(ValidationConfiguration.UserManualPreference, DefaultValue);
-			deserializeManual(storedManualConfig);
-			String storedBuildConfig = prefs.get(ValidationConfiguration.UserBuildPreference, DefaultValue);
-			deserializeBuild(storedBuildConfig);
-			String storedDelegatesConfiguration = prefs.get(ValidationConfiguration.DelegatesPreference, DefaultValue);
-			deserializeDelegates(storedDelegatesConfiguration);
-		}
-	}
-  
-  /**
-   * Answer the validator id's that have been enabled for manual validation.
-   * @return null if they are all enabled
-   */
-  Set<String> getEnabledManualValidators(){
-	  return getIds(ValidationConfiguration.UserManualPreference, ConfigurationConstants.ENABLED_MANUAL_VALIDATORS);
-  }
-  
-  /**
-   * Answer the validator id's that have been enabled for build validation.
-   * @return null if they are all enabled
-   */
-  Set<String> getEnabledBuildlValidators(){
-	  return getIds(ValidationConfiguration.UserBuildPreference, ConfigurationConstants.ENABLED_BUILD_VALIDATORS);
-  }
-  
-  /**
-   * A helper method to extract some validator id's from a preference store field.
-   * 
-   * @return null if all the validators are enabled.
-   */
-  private Set<String> getIds(String prefKey, String enabledPhrase){
-	IProject project = (IProject) getResource();
-	final PreferencesWrapper prefs = PreferencesWrapper.getPreferences(project, null);
-	if (prefs == null)return null;
-	
-	String storedConfig = prefs.get(prefKey, DefaultValue);
-	if (storedConfig == null || storedConfig.length() == 0 || storedConfig.equals(DefaultValue))return null;
-	int validationIndex = storedConfig.indexOf(enabledPhrase);
-
-	String ids = storedConfig.substring(validationIndex + enabledPhrase.length(),storedConfig.length());
-
-	StringTokenizer tokenizer = new StringTokenizer(ids, ConfigurationConstants.ELEMENT_SEPARATOR);
-	Set<String> set = new HashSet<String>(20);
-	while (tokenizer.hasMoreTokens())set.add(tokenizer.nextToken());
-	if (set.size() == 0)return null;
-	  
-	return set;
-	  
-  }
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ReferencialFileValidatorExtension.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ReferencialFileValidatorExtension.java
deleted file mode 100644
index d638d0a..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ReferencialFileValidatorExtension.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on May 3, 2004
- *
- * To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.wst.validation.internal.operations.ReferencialFileValidator;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * @author vijayb
- */
-public class ReferencialFileValidatorExtension {
-	private String id = null;
-	private ReferencialFileValidator instance;
-	private boolean errorCondition = false;
-	private IConfigurationElement element;
-	
-	/** referencialFileValidator */
-	public static final String REF_FILE_VALIDATOR_EXTENSION = "referencialFileValidator"; //$NON-NLS-1$
-	
-	/** run */
-	public static final String RUN = "run"; //$NON-NLS-1$
-	
-	/** id */
-	public static final String ATT_ID = "id"; //$NON-NLS-1$
-	
-	/** class */
-	public static final String ATT_CLASS = "class"; //$NON-NLS-1$
-
-	public ReferencialFileValidatorExtension() {
-		super();
-	}
-
-	public ReferencialFileValidator getInstance() {
-		try {
-			if (instance == null && !errorCondition)
-				instance = (ReferencialFileValidator) element.createExecutableExtension(RUN);
-		} catch (Exception e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			errorCondition = true;
-		}
-		return instance;
-	}
-
-	public ReferencialFileValidatorExtension(IConfigurationElement element) {
-		if(!REF_FILE_VALIDATOR_EXTENSION.equals(element.getName()))
-			throw new IllegalArgumentException("Extensions must be of the type \"" + REF_FILE_VALIDATOR_EXTENSION + "\"."); //$NON-NLS-1$ //$NON-NLS-2$
-		this.element = element;
-		init();
-	}
-
-	private void init() {
-		this.id = this.element.getAttribute(ATT_ID);
-	}
-
-	/**
-	 * @return Returns the id.
-	 */
-	public String getId() {
-		return id;
-	}
-	
-	public IConfigurationElement getElement() {
-		return element;
-	}
-
-	/**
-	 * @param id
-	 *            The id to set.
-	 */
-	public void setId(String id) {
-		this.id = id;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ReferencialFileValidatorRegistryReader.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ReferencialFileValidatorRegistryReader.java
deleted file mode 100644
index c9233ef..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ReferencialFileValidatorRegistryReader.java
+++ /dev/null
@@ -1,150 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on May 3, 2004
- *
- * To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.validation.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.validation.internal.operations.ReferencialFileValidator;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * @author vijayb
- */
-public class ReferencialFileValidatorRegistryReader {
-	static ReferencialFileValidatorRegistryReader instance;
-	
-	private static final String Id = "id"; //$NON-NLS-1$
-	private static final String ExtensionPoint = "referencialFileValidator"; //$NON-NLS-1$
-	
-	protected List<ReferencialFileValidatorExtension> referencialFileValidationExtensions;
-
-	public ReferencialFileValidatorRegistryReader() {
-	}
-	
-	/**
-	 * Read the extension point and parse it.
-	 */
-	public void readRegistry() {
-		IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(Id, ExtensionPoint);
-		if (point == null)return;
-		IConfigurationElement[] elements = point.getConfigurationElements();
-		for (int i = 0; i < elements.length; i++) {
-			internalReadElement(elements[i]);
-		}
-	}
-	
-	private void internalReadElement(IConfigurationElement element) {
-		boolean recognized = this.readElement(element);
-		if (!recognized) {
-			logError(element, "Error processing extension: " + element); //$NON-NLS-1$
-		}
-	}
-
-	/*
-	 * Logs the error in the desktop log using the provided text and the information in the configuration element.
-	 */
-	protected void logError(IConfigurationElement element, String text) {
-		IExtension extension = element.getDeclaringExtension();
-		StringBuffer buf = new StringBuffer();
-		buf.append("Plugin " + extension.getContributor().getName() + ", extension " + extension.getExtensionPointUniqueIdentifier()); //$NON-NLS-1$ //$NON-NLS-2$
-		buf.append("\n" + text); //$NON-NLS-1$
-		ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, buf.toString());
-	}
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.frameworks.internal.RegistryReader#readElement(org.eclipse.core.runtime.IConfigurationElement)
-	 */
-	public boolean readElement(IConfigurationElement element) {
-		if (ReferencialFileValidatorExtension.REF_FILE_VALIDATOR_EXTENSION.equals(element.getName())) {
-			addExtension(element);
-			return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Sets the extension point.
-	 * 
-	 * @param newExtension
-	 *            The extensions to set
-	 */
-	protected void addExtension(IConfigurationElement newExtension) {
-
-    	//add to the list of post validator extensions only if the extension is not added yet
-    	boolean containsExt = true;
-    	for(ReferencialFileValidatorExtension ext : getReferencialFileValidationExtensions()) {
-    		if(!ext.getElement().getAttribute(Id).equals(newExtension.getAttribute(Id)))containsExt = false;
-    	}
-    	if(!containsExt ||getReferencialFileValidationExtensions().isEmpty())
-    		getReferencialFileValidationExtensions().add(new ReferencialFileValidatorExtension(newExtension));
-    
-		getReferencialFileValidationExtensions().add(new ReferencialFileValidatorExtension(newExtension));
-	}
-
-	/**
-	 * Sets the extension point.
-	 * 
-	 * @param newExtension
-	 *            The extensions to set
-	 */
-	protected void addExtensionPoint(ReferencialFileValidatorExtension newExtension) {
-		if (referencialFileValidationExtensions == null)
-			referencialFileValidationExtensions = new ArrayList<ReferencialFileValidatorExtension>();
-		referencialFileValidationExtensions.add(newExtension);
-	}
-
-	/**
-	 * @return the appropriate handler for the project based on priorities of those which are
-	 *         available and enabled
-	 */
-	public ReferencialFileValidator getReferencialFileValidator() {
-		for (ReferencialFileValidatorExtension refFileValExt: getReferencialFileValidationExtensions()) {
-			return refFileValExt.getInstance();
-		}
-		return null;
-	}
-
-	/**
-	 * Gets the singleton instance.
-	 */
-	public static ReferencialFileValidatorRegistryReader getInstance() {
-		if (instance == null) {
-			instance = new ReferencialFileValidatorRegistryReader();
-			instance.readRegistry();
-		}
-		return instance;
-	}
-
-	/**
-	 * @return Returns the handlerExtensions.
-	 */
-	protected List<ReferencialFileValidatorExtension> getReferencialFileValidationExtensions() {
-		if (referencialFileValidationExtensions == null)
-			referencialFileValidationExtensions = new ArrayList<ReferencialFileValidatorExtension>();
-		return referencialFileValidationExtensions;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/RegistryConstants.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/RegistryConstants.java
deleted file mode 100644
index 81a78b4..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/RegistryConstants.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-
-import org.eclipse.wst.validation.internal.operations.IRuleGroup;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-
-/**
- * Validation constants needed to declare an extension point, and to implement an extension.
- */
-public interface RegistryConstants {
-	String PLUGIN_ID = ValidationPlugin.PLUGIN_ID;
-	
-	/** validator - extension point declaration of the validator */
-	String VALIDATOR_EXT_PT_ID = "validator"; //$NON-NLS-1$
-
-	/** run - identifies the Validator class */
-	String TAG_RUN_CLASS = "run"; //$NON-NLS-1$
-	
-	/** 
-	 * filter - identifies a filter -- type and/or name -- used to filter out resources which are
-	 * not to be validated. (i.e., if the resource doesn't pass this filter test, don't validate it.) 
-	 */ 
-	String TAG_FILTER = "filter"; //$NON-NLS-1$
-	
-	/**
-	 * identifies a filter -- type and/or name -- used to filter out resources which are not to be validated. (i.e., if the resource doesn't pass this filter test, don't validate it.)
-	 */
-	String TAG_CONTENTTYPE = "contentTypeBinding"; //$NON-NLS-1$ 
-	
-	/**
-	 *  identifies a type
-	 */
-	String ATT_CONTENTTYPEID = "contentTypeId"; //$NON-NLS-1$ 
-	/** helper - IValidationContext which loads the MOF model for the IValidator */ 
-	String TAG_HELPER_CLASS = "helper"; //$NON-NLS-1$
-	
-	/** projectNature - identifies the projects which the validator should run on */
-	String TAG_PROJECT_NATURE = "projectNature"; //$NON-NLS-1$
-	
-	/** 
-	 * aggregateValidator - identifies a validator(s) which this validator aggregates. This value is used 
-	 * to remove all messages owned by a particular validator. Aggregate validators cannot be shared. 
-	 * only one validator may use an aggregate of that type. */
-	String TAG_AGGREGATE_VALIDATORS = "aggregateValidator"; //$NON-NLS-1$ 
-
-	/** objectClass - identifies a type */ 
-	String ATT_OBJECT_CLASS = "objectClass"; //$NON-NLS-1$
-	
-	/** nameFilter - identifies a name (may include the '*' wildcard anywhere in the name) */
-	String ATT_NAME_FILTER = "nameFilter"; //$NON-NLS-1$
-	
-	/** id - identifies a unique id to filter on */
-	String ATT_ID = "id"; //$NON-NLS-1$
-	
-	/** class - identifies a class name of a tag, e.g. "helper class", or "run class" */
-	String ATT_CLASS = "class"; //$NON-NLS-1$
-	
-	/** action - identifies the incremental validation actions for which a resource should be filtered in */ 
-	String ATT_ACTION_FILTER = "action"; //$NON-NLS-1$
-	
-	/** 
-	 * incremental - identifies whether or not the validator supports incremental build validation. 
-	 * Default is true (i.e., incremental builds are supported). 
-	 */
-	String ATT_INCREMENTAL = "incremental"; //$NON-NLS-1$
-	
-	/** true - The incremental default. */
-	boolean ATT_INCREMENTAL_DEFAULT = true;
-	
-	/** 
-	 * fullBuild - identifies whether or not the validator supports full build validation. 
-	 * Default is true (i.e., full build validation is supported).
-	 */ 
-	String ATT_FULLBUILD = "fullBuild"; //$NON-NLS-1$ 
-	
-	/** true - The build default. */
-	boolean ATT_FULLBUILD_DEFAULT = true;
-	
-	/** enabled - identifies whether or not the validator is enabled by default. Default is "true" (enabled). */ 
-	String ATT_ENABLED = "enabled"; //$NON-NLS-1$
-	
-	/** true - The "enabled" default. */
-	boolean ATT_ENABLED_DEFAULT = true;
-	
-	/** include - Include projects with this nature */
-	String ATT_INCLUDE = "include"; //$NON-NLS-1$
-	
-	/** 
-	 * true - By default, if "include" is not specified in the projectNature element, 
-	 * then assume that the nature is included. */
-	boolean ATT_INCLUDE_DEFAULT = true;
-	
-	/** 
-	 * ruleGroup - identifies the different validation passes which this validator recognizes. 
-	 * The values are identified in IRuleGroup.
-	 */
-	String ATT_RULE_GROUP = "ruleGroup"; //$NON-NLS-1$
-	
-	/** the default pass includes only the FAST PASS. FULL can be invoked only explicitly by an operation. */
-	int ATT_RULE_GROUP_DEFAULT = IRuleGroup.PASS_FAST;
-	
-	/** caseSensitive */
-	String ATT_CASE_SENSITIVE = "caseSensitive"; //$NON-NLS-1$
-	
-	/** async - Is the validator thread-safe? */
-	String ATT_ASYNC = "async"; //$NON-NLS-1$
-	
-	/** false - The "can validator run asynchronously" default. In the future this may be changed to true. */
-	boolean ATT_ASYNC_DEFAULT = false;
-
-	/** migrate - the "migrate" section of the validator */
-	String TAG_MIGRATE = "migrate"; //$NON-NLS-1$
-	
-	/** validator - the "validator" element of the "migrate" section */
-	String TAG_VALIDATOR = "validator"; //$NON-NLS-1$
-	
-	/** from - the fully-qualified class name of the former validator class */
-	String ATT_FROM = "from"; //$NON-NLS-1$
-	
-	/** to - the fully-qualified class name of the current validator class */
-	String ATT_TO = "to"; //$NON-NLS-1$
-	String DEP_VALIDATOR = "dependentValidator"; //$NON-NLS-1$
-	String DEP_VAL_VALUE = "depValValue"; //$NON-NLS-1$
-	String MARKER_ID = "markerId"; //$NON-NLS-1$
-	String MARKER_ID_VALUE = "markerIdValue"; //$NON-NLS-1$
-	boolean DEP_VAL_VALUE_DEFAULT = false;
-	String FACET = "facet"; //$NON-NLS-1$
-	String FACET_ID ="facetId"; //$NON-NLS-1$
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ResourceConstants.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ResourceConstants.java
deleted file mode 100644
index 62f8a08..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ResourceConstants.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-
-
-/**
- * Constants used to access the string resources associated with the plug-in.
- * 
- * See the plugin.properties file, in the plugin's directory, for the contents of the strings.
- */
-public interface ResourceConstants {
-	// A marker cannot be added to the task list.
-	String VBF_EXC_CANNOT_ADD_MARKER = "VBF_EXC_CANNOT_ADD_MARKER"; //$NON-NLS-1$ 
-
-	// A marker cannot be removed from the task list.
-	String VBF_EXC_CANNOT_REMOVE_MARKER = "VBF_EXC_CANNOT_REMOVE_MARKER"; //$NON-NLS-1$ 
-
-	// Internal error has occurred.
-	String VBF_EXC_INTERNAL = "VBF_EXC_INTERNAL"; //$NON-NLS-1$ 
-
-	// If the validator cannot be loaded because it didn't specify a helper
-	String VBF_EXC_HELPER_MISSING = "VBF_EXC_HELPER_MISSING"; //$NON-NLS-1$ 
-
-	// If the validator cannot be loaded because its helper cannot be loaded
-	String VBF_EXC_HELPER_CANNOTLOAD = "VBF_EXC_HELPER_CANNOTLOAD"; //$NON-NLS-1$ 
-
-	// A java.lang.Runtime error has occurred during the build.
-	String VBF_EXC_RUNTIME = "VBF_EXC_RUNTIME"; //$NON-NLS-1$ 
-
-	// If the "Validator" extension point has been removed from the plugin.xml file.
-	String VBF_EXC_MISSING_VALIDATOR_EP = "VBF_EXC_MISSING_VALIDATOR_EP"; //$NON-NLS-1$ 
-
-	// If the user has specified an invalid type filter in their plugin.xml file.
-	// i.e., it isn't an instance of IResource.
-	String VBF_EXC_INVALID_TYPE_FILTER = "VBF_EXC_INVALID_TYPE_FILTER"; //$NON-NLS-1$ 
-
-	// The validator extension has made a mistake in its plugin.xml's projectNature tag
-	String VBF_EXC_MISSING_PROJECTNATURE_ID = "VBF_EXC_MISSING_PROJECTNATURE_ID"; //$NON-NLS-1$ 
-
-	// The validator extension has made a mistake in its plugin.xml's syntax.
-	String VBF_EXC_VALIDATORNAME_IS_NULL = "VBF_EXC_VALIDATORNAME_IS_NULL"; //$NON-NLS-1$ 
-
-	// Title for the IProgressMonitor.
-	String VBF_STATUS_PROGRESSMONITOR_TITLE = "VBF_STATUS_PROGRESSMONITOR_TITLE"; //$NON-NLS-1$ 
-
-	// Status line for the IProgressMonitor
-	String VBF_STATUS_INITIALIZING = "VBF_STATUS_INITIALIZING"; //$NON-NLS-1$ 
-
-	// If the user has cancelled validation, each validator might have cleanup to do. This message
-	// is shown to tell the user which validator is being cleaned up at the moment.
-	String VBF_STATUS_VALIDATOR_CLEANUP = "VBF_STATUS_VALIDATOR_CLEANUP"; //$NON-NLS-1$ 
-
-	// If the user cancelled validation, remove all of the validator's tasks from the task list, and
-	// put an entry saying that validation on {project} using {validator} was cancelled.
-	String VBF_STATUS_VALIDATOR_TERMINATED = "VBF_STATUS_VALIDATOR_TERMINATED"; //$NON-NLS-1$ 
-
-	// Before a validator is begun, this message informs the user that validation, using a
-	// particular validator, has begun
-	String VBF_STATUS_STARTING_VALIDATION = "VBF_STATUS_STARTING_VALIDATION"; //$NON-NLS-1$ 
-
-	// After a validator is finished, this message informs the user that validation, using a
-	// particular validator, has completed.
-	String VBF_STATUS_ENDING_VALIDATION = "VBF_STATUS_ENDING_VALIDATION"; //$NON-NLS-1$ 
-
-	// If a validator throws an unchecked exception, this message is displayed to the user.
-	String VBF_STATUS_ENDING_VALIDATION_ABNORMALLY = "VBF_STATUS_ENDING_VALIDATION_ABNORMALLY"; //$NON-NLS-1$ 
-
-	// If the build's getDelta(getProject()) method returns null, let the user know that a full
-	// validation will be performed because there's no delta information.
-	String VBF_STATUS_NULL_DELTA = "VBF_STATUS_NULL_DELTA"; //$NON-NLS-1$ 
-
-	String VBF_EXC_SYNTAX_NO_HELPER = "VBF_EXC_SYNTAX_NO_HELPER"; //$NON-NLS-1$ 
-	String VBF_EXC_SYNTAX_NO_HELPER_CLASS = "VBF_EXC_SYNTAX_NO_HELPER_CLASS"; //$NON-NLS-1$ 
-	String VBF_EXC_SYNTAX_NO_HELPER_THROWABLE = "VBF_EXC_SYNTAX_NO_HELPER_THROWABLE"; //$NON-NLS-1$ 
-	String VBF_EXC_SYNTAX_NO_VAL_THROWABLE = "VBF_EXC_SYNTAX_NO_VAL_THROWABLE"; //$NON-NLS-1$ 
-	String VBF_EXC_INVALID_RESOURCE = "VBF_EXC_INVALID_RESOURCE"; //$NON-NLS-1$ 
-
-	String VBF_EXC_NULLCREATE = "VBF_EXC_NULLCREATE"; //$NON-NLS-1$ 
-	String VBF_EXC_NULLSAVE = "VBF_EXC_NULLSAVE"; //$NON-NLS-1$ 
-	String VBF_EXC_SAVE = "VBF_EXC_SAVE"; //$NON-NLS-1$ 
-	String VBF_EXC_NULLRETRIEVE = "VBF_EXC_NULLRETRIEVE"; //$NON-NLS-1$ 
-	String VBF_EXC_RETRIEVE = "VBF_EXC_RETRIEVE"; //$NON-NLS-1$ 
-
-	String VBF_EXC_BADVMD = "VBF_EXC_BADVMD"; //$NON-NLS-1$ 
-	String VBF_EXC_OPENPRJ = "VBF_EXC_OPENPRJ"; //$NON-NLS-1$ 
-	String VBF_EXC_EXISTPRJ = "VBF_EXC_EXISTPRJ"; //$NON-NLS-1$ 
-	String VBF_EXC_BADPRJ = "VBF_EXC_BADPRJ"; //$NON-NLS-1$ 
-	String VBF_EXC_MULTIPRJ = "VBF_EXC_MULTIPRJ"; //$NON-NLS-1$ 
-	String VBF_EXC_BADVAL = "VBF_EXC_BADVAL"; //$NON-NLS-1$ 
-
-	String VBF_STATUS_START_REMOVING_OLD_MESSAGES = "VBF_STATUS_START_REMOVING_OLD_MESSAGES"; //$NON-NLS-1$ 
-	String VBF_STATUS_FINISH_REMOVING_OLD_MESSAGES = "VBF_STATUS_FINISH_REMOVING_OLD_MESSAGES"; //$NON-NLS-1$ 
-
-	String VBF_TASK_WARN_MESSAGE_LIMIT_VAL = "VBF_TASK_WARN_MESSAGE_LIMIT_VAL"; //$NON-NLS-1$
-	
-	String VBF_VALIDATION_JOB_MSG = "VBF_VALIDATION_JOB_MSG"; //$NON-NLS-1$
-
-	String VBF_EXC_DISABLEV = "VBF_EXC_DISABLEV"; //$NON-NLS-1$ 
-	String VBF_EXC_DISABLEH = "VBF_EXC_DISABLEH"; //$NON-NLS-1$ 
-	String VBF_EXC_ORPHAN_IVALIDATOR = "VBF_EXC_ORPHAN_IVALIDATOR"; //$NON-NLS-1$ 
-
-	String VBF_STATUS_LOOKING = "VBF_STATUS_LOOKING"; //$NON-NLS-1$ 
-	String VBF_STATUS_LOOKINGDONE = "VBF_STATUS_LOOKINGDONE"; //$NON-NLS-1$ 
-	String VBF_STATUS_REMOVING = "VBF_STATUS_REMOVING"; //$NON-NLS-1$ 
-	String VBF_STATUS_REMOVINGDONE = "VBF_STATUS_REMOVINGDONE"; //$NON-NLS-1$
-  
-	String VBF_WRONG_CONTEXT_FOR_DELEGATE = "VBF_WRONG_CONTEXT_FOR_DELEGATE"; //$NON-NLS-1$
-	String VBF_NO_DELEGATE = "VBF_NO_DELEGATE"; //$NON-NLS-1$
-	String VBF_CANNOT_INSTANTIATE_DELEGATE = "VBF_CANNOT_INSTANTIATE_DELEGATE"; //$NON-NLS-1$  
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ResourceHandler.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ResourceHandler.java
deleted file mode 100644
index c3d2f7e..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ResourceHandler.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-
-/**
- * This class retrieves the Strings from the .properties file appropriate for the machine's Locale.
- */
-public class ResourceHandler {
-	//TODO Make this class final once the public ResourceHandler has been deleted.
-	private static ResourceBundle _bundle = null;
-
-	protected ResourceHandler() {
-		//TODO Make this method private once the public ResourceHandler has been deleted.
-		super();
-	}
-
-	/**
-	 * Return the resource bundle which contains the messages, as identified by
-	 */
-	public static ResourceBundle getBundle() {
-		if (_bundle == null) {
-			try {
-				_bundle = ResourceBundle.getBundle(ValidationPlugin.getBundlePropertyFileName());
-			} catch (MissingResourceException exc) {
-				_bundle = null;
-				if (Tracing.isLogging()) {
-					Tracing.log("ResourceHandler-01", "Cannot find bundle " + ValidationPlugin.getBundlePropertyFileName()); //$NON-NLS-1$ //$NON-NLS-2$
-				}
-			}
-		}
-		return _bundle;
-	}
-
-	public static String getExternalizedMessage(String key) {
-		try {
-			ResourceBundle bundle = getBundle();
-			if (bundle == null) {
-				Tracing.log("ResourceHandler-02: ", "Resource bundle is null"); //$NON-NLS-1$ //$NON-NLS-2$
-				return key;
-			}
-
-			return bundle.getString(key);
-		} catch (NullPointerException exc) {
-			Tracing.log("ResourceHandler-03: ", "Cannot find message id ", key); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		return key;
-	}
-
-	public static String getExternalizedMessage(String key, String[] parms) {
-		String res = ""; //$NON-NLS-1$
-		try {
-			res = java.text.MessageFormat.format(getExternalizedMessage(key), (Object[])parms);
-		} catch (MissingResourceException exc) {
-			Tracing.log("ResourceHandler-04: ", "Cannot find message id ", key); //$NON-NLS-1$ //$NON-NLS-2$
-		} catch (NullPointerException exc) {
-			if (Tracing.isLogging()) {
-				Tracing.log("ResourceHandler-05: Cannot format message id " + key + " with " + parms.length + " parameters."); //$NON-NLS-1$  //$NON-NLS-2$  //$NON-NLS-3$
-			}
-		}
-		return res;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/TaskListUtility.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/TaskListUtility.java
deleted file mode 100644
index 1cae3c1..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/TaskListUtility.java
+++ /dev/null
@@ -1,451 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.Map;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-
-/**
- * This class must be called only by the validation framework.
- * 
- * This singleton interacts with the eclipse workbench's Task list. TaskListUtility adds and removes
- * tasks from the list.
- * 
- * This class must not be called outside of an IWorkspaceRunnable or IRunnableWithProgress. Many
- * resource deltas can be generated by the methods in this class.
- */
-public class TaskListUtility implements ConfigurationConstants {
-	protected static final int DEPTH_INFINITE = IResource.DEPTH_INFINITE;
-	protected static final int DEPTH_ZERO = IResource.DEPTH_ZERO;
-	protected static final String VALIDATION_MARKER_TARGETOBJECT = "targetObject"; //$NON-NLS-1$
-	private final static IMarker[] NO_MARKERS = new IMarker[0];
-
-	public static IWorkspaceRoot getRoot() {
-		IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-		return root;
-	}
-
-	/**
-	 * This method is here for use by the SABER validator's reporter instance ONLY. Do not use. See
-	 * defect 260144 for details.
-	 */
-	@SuppressWarnings("unchecked")
-	public static IMarker setPriority(IMarker item, int priority) throws CoreException {
-		Map attrib = item.getAttributes();
-		attrib.put(IMarker.PRIORITY, new Integer(priority));
-		item.setAttributes(attrib);
-		return item;
-	}
-	
-	/**
-	 * This method adds a message to a resource in the task list.
-	 */
-	public static IMarker addTask(String pluginId, IResource resource, String location, 
-		String messageId, String message, int markerType, String markerName, String targetObjectName, 
-		String groupName, int offset, int length) throws CoreException {
-		
-		if ((message == null) || (resource == null) || (!resource.exists())) {
-			return null;
-		}
-
-		int severity = getSeverity(markerType);
-
-		// Allow duplicate entries in the task list.
-		// Prior to a full validation, the validation framework will remove all messages owned
-		// by a validator before it is executed.
-		// Prior to an incremental validation, the validation framework will remove all messages,
-		// on each of the changed resources, owned by a validator before it is invoked.
-		// 
-		// It is up to the validator to make sure that it is not adding the same message
-		// in more than one place, and also to clear out any old messages which are not cleared
-		// by the validation framework.
-		IMarker item = null;
-		MarkerManager.getDefault().hook(resource);
-		if(markerName != null && markerName.length() >0 )
-			 item = resource.createMarker(markerName); // add a validation marker
-		else
-		     item = resource.createMarker(VALIDATION_MARKER); // add a validation marker
-
-		// For performance reasons, replace the multiple setAttribute
-		// calls above with a single setAttributes call.
-		boolean offsetSet = ((offset != IMessage.OFFSET_UNSET) && (length != IMessage.OFFSET_UNSET));
-		int size = (offsetSet) ? 10 : 8; // add CHAR_START, CHAR_END only if the offset is set. If
-		// the offset is set, it takes precendence over the line
-		// number. (eclipse's rule, not mine.)
-		String[] attribNames = new String[size];
-		Object[] attribValues = new Object[size];
-
-		// Very first thing, add the owner. That way, if the code dies
-		// before things are persisted, hopefully this marker will be persisted.
-		// Hopefully, eclipse WILL persist this field, as requested.
-		attribNames[0] = VALIDATION_MARKER_OWNER;
-		attribValues[0] = pluginId;
-		attribNames[1] = VALIDATION_MARKER_SEVERITY; // this validation severity is stored, in
-		// addition to the marker severity, to enable
-		// more than one severity of message to be
-		// displayed. e.g. ERROR | WARNING (using
-		// binary OR). The IMarker constants are
-		// regular decimal constants.
-		attribValues[1] = new Integer(markerType);
-		attribNames[2] = VALIDATION_MARKER_TARGETOBJECT; // to distinguish between messages which
-		// are registered on an IResource, but
-		// against different target objects
-		attribValues[2] = ((targetObjectName == null) ? "" : targetObjectName); //$NON-NLS-1$
-		attribNames[3] = VALIDATION_MARKER_GROUP;
-		attribValues[3] = ((groupName == null) ? "" : groupName); //$NON-NLS-1$
-		attribNames[4] = IMarker.MESSAGE;
-		attribValues[4] = message;
-		attribNames[5] = VALIDATION_MARKER_MESSAGEID;
-		attribValues[5] = messageId;
-
-		attribNames[6] = IMarker.SEVERITY; // IMarker.SEVERITY_ERROR, IMarker.SEVERITY_WARNING,
-		// IMarker.SEVERITY_INFO
-		attribValues[6] = new Integer(severity);
-		try {
-			// If the location is a line number, store it as a line number
-			Integer lineNumber = Integer.valueOf(location);
-			attribNames[7] = IMarker.LINE_NUMBER;
-			attribValues[7] = lineNumber;
-		} catch (NumberFormatException exc) {
-			// Otherwise, store it as a text location
-			attribNames[7] = IMarker.LOCATION;
-			attribValues[7] = location;
-		}
-
-		if (offsetSet) {
-			attribNames[8] = IMarker.CHAR_START;
-			attribValues[8] = new Integer(offset);
-			attribNames[9] = IMarker.CHAR_END;
-			attribValues[9] = new Integer(offset + length);
-		}
-
-		item.setAttributes(attribNames, attribValues);
-
-		return item;
-	}
-
-	/**
-	 * This method adds a message to a resource in the task list.
-	 */
-	public static IMarker addTask(String pluginId, IResource resource, String location, 
-		String messageId, String message, int markerType, String targetObjectName, 
-		String groupName, int offset, int length) throws CoreException {
-		
-		return addTask(pluginId, resource, location, messageId, 
-				message, markerType, null, targetObjectName, groupName, offset, length);
-	}
-
-	/**
-	 * Given one of the SeverityEnum severities, return the IMarker severity int that is its
-	 * equivalent.
-	 * 
-	 * This method was made public for the SaberReporter. No one other than TaskListUtility, or the
-	 * SaberReporter, should use this method!
-	 *  
-	 */
-	private static int getSeverity(int severityEnumValue) {
-		switch (severityEnumValue) {
-			case (IMessage.HIGH_SEVERITY) : {
-				return IMarker.SEVERITY_ERROR;
-			}
-
-			case (IMessage.LOW_SEVERITY) : {
-				return IMarker.SEVERITY_INFO;
-			}
-
-			case (IMessage.NORMAL_SEVERITY) : {
-				return IMarker.SEVERITY_WARNING;
-			}
-
-			case (IMessage.ALL_MESSAGES) :
-			case (IMessage.ERROR_AND_WARNING) :
-			default : {
-				// assume it's a warning.
-				return IMarker.SEVERITY_WARNING;
-			}
-		}
-	}
-
-	private static int getDepth(IResource resource) {
-		if (resource instanceof IProject) {
-			return DEPTH_INFINITE; // DEPTH_INFINITE means get this project's markers, and the
-			// markers belonging to the project's children.
-		} else if (resource instanceof IWorkspaceRoot) {
-			// Needed for the ValidationMigrator when it checks for orphan tasks.
-			return DEPTH_INFINITE; // DEPTH_INFINITE means get all of the markers in the workspace
-		}
-
-		return DEPTH_ZERO; // DEPTH_ZERO means just this resource, not its children
-	}
-
-	public static IMarker[] getValidationTasks(int severity, IProject project) {
-		// DEPTH_INFINITE means get this project's markers, and the markers
-		// belonging to the project's children.
-		return getValidationTasks(project, severity);
-	}
-
-	public static IMarker[] getValidationTasks(IResource resource, int severity) {
-		return getValidationTasks(resource, severity, getDepth(resource));
-	}
-
-	/**
-	 * Return true if the marker is owned by the ownerId.
-	 */
-	public static boolean isOwner(IMarker marker, String ownerId) {
-		try {
-			Object owner = marker.getAttribute(VALIDATION_MARKER_OWNER);
-			if ((owner == null) || !(owner instanceof String)) {
-				// The ValidationMigrator will remove any "unowned" validation markers.
-				return false;
-			}
-
-			return ((String) owner).equals(ownerId);
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return false;
-		}
-	}
-
-	private static IMarker[] getValidationTasks(IResource resource, int severity, int depth) {
-		IMarker[] tempMarkers = null;
-		int validCount = 0;
-		IMarker[] allMarkers = null;
-		try {
-			allMarkers = resource.findMarkers(VALIDATION_MARKER, true, depth);
-		} catch (CoreException e) {
-			if (Tracing.isLogging())ValidationPlugin.getPlugin().handleException(e);
-			return NO_MARKERS;
-		}
-
-		// Now filter in the markers, based on severity type.
-		if (allMarkers.length != 0) {
-			tempMarkers = new IMarker[allMarkers.length];
-			for (IMarker marker : allMarkers) {
-				Integer filterSeverity = null;
-				try {
-					filterSeverity = (Integer) marker.getAttribute(VALIDATION_MARKER_SEVERITY);
-				}
-				catch (CoreException e){
-					// Someone may have deleted the marker on us. All we can do is skip it.
-					continue;
-				}
-				if (filterSeverity == null) {
-					// odd...marker wasn't created correctly. How could this happen?
-					// Default to the current severity and add it to the list.
-					try {
-						// 226541 - I was seeing markers with valid severities being reset, so I added this
-						// additional test.
-						if (marker.getAttribute(IMarker.SEVERITY, -1) == -1)
-							marker.setAttribute(IMarker.SEVERITY, getSeverity(severity));
-					} catch (Exception e) {
-						ValidationPlugin.getPlugin().handleException(e);
-						continue;
-					}
-				} else if ((severity & filterSeverity.intValue()) == 0) {
-					continue;
-				}
-				tempMarkers[validCount++] = marker;
-			}
-		}
-
-		if (validCount == 0) {
-			return NO_MARKERS;
-		}
-
-		IMarker[] validMarkers = new IMarker[validCount];
-		System.arraycopy(tempMarkers, 0, validMarkers, 0, validCount);
-		return validMarkers;
-	}
-
-	public static IMarker[] getValidationTasks(IResource resource, String messageOwner) {
-		return getValidationTasks(resource, new String[]{messageOwner}, getDepth(resource));
-	}
-
-	public static IMarker[] getValidationTasks(IResource resource, String[] messageOwners) {
-		return getValidationTasks(resource, messageOwners, getDepth(resource));
-	}
-
-	private static IMarker[] getValidationTasks(IResource resource, String[] messageOwners, int depth) {
-		IMarker[] markers = getValidationTasks(resource, IMessage.ALL_MESSAGES, depth);
-		if (markers.length == 0)return NO_MARKERS;
-
-		IMarker[] temp = new IMarker[markers.length];
-		int validCount = 0;
-		for (IMarker marker : markers) {
-			Object owner = null;
-			try {
-				owner = marker.getAttribute(VALIDATION_MARKER_OWNER);
-			} catch (CoreException e) {
-				// eat it -- if it no longer exists there is nothing we can do about it
-			}
-			
-			if ((owner == null) || !(owner instanceof String)) {
-				// The ValidationMigrator will remove any "unowned" validation markers.
-				continue;
-			}
-
-			for (String messageOwner : messageOwners) {
-				if (((String) owner).equals(messageOwner)) {
-					temp[validCount++] = marker;
-					break;
-				}
-			}
-		}
-		
-		if (validCount == 0)return NO_MARKERS;
-
-		IMarker[] result = new IMarker[validCount];
-		System.arraycopy(temp, 0, result, 0, validCount);
-		return result;
-	}
-
-	/**
-	 * This method retrieves all validation tasks from the resource. If depth is INFINITE, child
-	 * tasks are returned as well. Only the tasks which are owned by the specified messageOwner, and
-	 * apply to the named IMessage's target object (objectName) will be returned.
-	 */
-	private static IMarker[] getValidationTasks(IResource resource, String[] messageOwner, String objectName, String groupName, int depth) throws CoreException {
-		if ((messageOwner == null) || (resource == null)) {
-			return NO_MARKERS;
-		}
-
-		int validCount = 0;
-		IMarker[] validList = null;
-		IMarker[] markers = getValidationTasks(resource, messageOwner, depth);
-		if (markers != null) {
-			validList = new IMarker[markers.length];
-			for (int i = 0; i < markers.length; i++) {
-				IMarker marker = markers[i];
-
-				// If more than one target object resolves to the same resource, removing one
-				// target's
-				// messages should not remove the other target object's messages.
-				if (objectName != null) {
-					Object targetObject = marker.getAttribute(VALIDATION_MARKER_TARGETOBJECT);
-					if ((targetObject == null) || !(targetObject instanceof String) || !(((String) targetObject).equals(objectName))) {
-						continue;
-					}
-				}
-
-				if (groupName != null) {
-					Object group = marker.getAttribute(VALIDATION_MARKER_GROUP);
-					if ((group == null) || !(group instanceof String) || !(((String) group).equals(groupName))) {
-						continue;
-					}
-				}
-
-				validList[validCount++] = marker;
-			}
-		}
-
-		if (validCount == 0) {
-			return NO_MARKERS;
-		}
-
-		IMarker[] result = new IMarker[validCount];
-		System.arraycopy(validList, 0, result, 0, validCount);
-		return result;
-	}
-
-	/**
-	 * Remove all validation messages from the resource and its children.
-	 */
-	public static void removeAllTasks(IResource resource) {
-		if (resource == null) {
-			return;
-		}
-
-		try {
-			IMarker[] markers = getValidationTasks(resource, IMessage.ALL_MESSAGES);
-			ResourcesPlugin.getWorkspace().deleteMarkers(markers);
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-
-	/**
-	 * This method removes all tasks from the resource. If the resource is an IProject, all tasks
-	 * are also removed from the project's children.
-	 */
-	public static void removeAllTasks(IResource resource, String[] owners) throws CoreException {
-		removeAllTasks(resource, owners, null); // null means remove messages from all target
-		// objects
-	}
-
-	/**
-	 * This method removes all messages from a resource in the task list.
-	 */
-	public static void removeAllTasks(IResource resource, String owner, String objectName) throws CoreException {
-		removeAllTasks(resource, new String[]{owner}, objectName);
-	}
-
-	public static void removeAllTasks(IResource resource, String[] owners, String objectName) throws CoreException {
-		removeAllTasks(resource, owners, objectName, getDepth(resource));
-	}
-
-	protected static void removeAllTasks(IResource resource, String[] owners, String objectName, int depth) throws CoreException {
-		removeTaskSubset(resource, owners, objectName, null, depth); // null means no group name
-	}
-
-	/**
-	 * This method removes a subset of tasks from the project, including child tasks. Every task
-	 * which belongs to the group, identified by groupName, will be removed.
-	 */
-	public static void removeTaskSubset(IResource resource, String[] owners, String objectName, String groupName) throws CoreException {
-		removeTaskSubset(resource, owners, objectName, groupName, getDepth(resource));
-	}
-
-	/**
-	 * This method removes a subset of tasks from the project, including child tasks. Every task
-	 * which belongs to the group, identified by groupName, will be removed.
-	 */
-	protected static void removeTaskSubset(IResource resource, String[] owners, String objectName, String groupName, int depth) throws CoreException {
-		if ((owners == null) || (resource == null)) {
-			return;
-		}
-
-		IMarker[] allTasks = getValidationTasks(resource, owners, objectName, groupName, depth);
-		if (allTasks.length > 0) {
-			ResourcesPlugin.getWorkspace().deleteMarkers(allTasks);
-		}
-	}
-
-	/**
-	 * This method changes all validator markers which are owned by "from" to make their owner "to".
-	 */
-	public static void updateOwner(String from, String to) throws CoreException {
-		updateOwner(from, to, getRoot());
-	}
-
-	/**
-	 * This method changes all validator markers on the IResource and its children. All markers
-	 * owned by "from" have their owner reassigned to "to".
-	 */
-	public static void updateOwner(String from, String to, IResource resource) throws CoreException {
-		IMarker[] ownedMarkers = getValidationTasks(resource, from);
-		if (ownedMarkers == null) {
-			return;
-		}
-
-		for (int i = 0; i < ownedMarkers.length; i++) {
-			IMarker marker = ownedMarkers[i];
-			marker.setAttribute(VALIDATION_MARKER_OWNER, to);
-		}
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/VThreadManager.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/VThreadManager.java
deleted file mode 100644
index e9d9b7e..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/VThreadManager.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-
-import java.util.Vector;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-
-/**
- * This class manages (queue, invoke, etc.) the Runnables that perform the validation for a
- * particular validator.
- */
-public class VThreadManager {
-	private static VThreadManager _manager = null;
-	private static final int MAX_NUM_OF_RESTART = 5; // the maximum number of times that the thread
-	// should attempt to ignore a Throwable and
-	// carry on
-
-	private Thread _validationThread = null; // This thread checks if the current Runnable is
-	// finished, and if so, loads the first Runnable off of
-	// the queue and starts it.
-	volatile int restart = 0; // how many times has the thread been restarted?
-	volatile Jobs _jobs = null;
-
-	private VThreadManager() {
-		_jobs = new Jobs();
-
-		// Start the validation thread to check for queued ValidationOperation
-		Runnable validationRunnable = new Runnable() {
-			public void run() {
-				while (true) {
-					try {
-						if (restart > MAX_NUM_OF_RESTART) {
-							// something has gone seriously, seriously wrong
-							String message = "restart = " + restart; //$NON-NLS-1$
-							ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, message);
-							break;
-						}
-
-						Runnable job = getJobs().dequeue(); // If currentRunnable is null, there's
-						// nothing on the queue. Shouldn't
-						// happen with a semaphore.
-						if (job != null) {
-							getJobs().setActive(true);
-							job.run();
-							getJobs().setActive(false);
-						}
-					} catch (Exception e) {
-						restart++;
-						getJobs().setActive(false);
-						ValidationPlugin.getPlugin().handleException(e);
-					} finally {
-						//do nothing
-					}
-				}
-			}
-		};
-
-		_validationThread = new Thread(validationRunnable, "ValidationThread"); //$NON-NLS-1$
-		_validationThread.start();
-	}
-
-	public static VThreadManager getManager() {
-		if (_manager == null) {
-			_manager = new VThreadManager();
-		}
-		return _manager;
-	}
-
-	Jobs getJobs() {
-		return _jobs;
-	}
-
-	public void queue(Runnable runnable) {
-		getJobs().queue(runnable);
-	}
-
-	/**
-	 * Return true if all of the Runnables have been run.
-	 */
-	public boolean isDone() {
-		return getJobs().isDone();
-	}
-
-	private class Jobs {
-		private Vector<Runnable> _queuedJobs; // The queued Runnables that need to be run.
-		private boolean _isActive; // Is a job being run in the validation thread?
-
-		public Jobs() {
-			_queuedJobs = new Vector<Runnable>();
-		}
-
-		public synchronized void queue(Runnable runnable) {
-			// If there is a thread running already, then it must finish before another validation
-			// thread is launched, or the validation messages could reflect the last thread
-			// finished,
-			// instead of the last state of changes.
-
-			// Have to wait for the current Runnable to finish, so add this to the end of the queue
-			_queuedJobs.add(runnable);
-			notifyAll();
-		}
-
-		/**
-		 * Pop the Runnable off of the head of the queue.
-		 */
-		synchronized Runnable dequeue() {
-			while (_queuedJobs.size() == 0) {
-				try {
-					wait();
-				} catch (InterruptedException exc) {
-					//Ignore
-				}
-			} // Block on the semaphore; break when a job has been added to the queue.
-
-			Runnable job = null;
-			if (_queuedJobs.size() > 0) {
-				job = _queuedJobs.get(0);
-				if (job != null) {
-					_queuedJobs.remove(0);
-				}
-			}
-			return job;
-		}
-
-		public synchronized boolean isActive() {
-			return _isActive;
-		}
-
-		public synchronized void setActive(boolean active) {
-			_isActive = active;
-		}
-
-		/**
-		 * Return true if all of the Runnables have been run.
-		 */
-		public synchronized boolean isDone() {
-			return ((_queuedJobs.size() == 0) && !isActive());
-		}
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationConfiguration.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationConfiguration.java
deleted file mode 100644
index 3ddb087..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationConfiguration.java
+++ /dev/null
@@ -1,1078 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.core.runtime.Preferences.IPropertyChangeListener;
-import org.eclipse.core.runtime.Preferences.PropertyChangeEvent;
-import org.eclipse.wst.validation.internal.delegates.ValidatorDelegateDescriptor;
-import org.eclipse.wst.validation.internal.delegates.ValidatorDelegatesRegistry;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * This class represents the user's preference or project settings.
- * 
- * This class is populated from the multiple persistent properties, and is kept as a session
- * property while the resource is open.
- */
-public abstract class ValidationConfiguration implements IPropertyChangeListener {
-	private final IResource 	_resource;
-	private boolean 	disableAllValidation = getDisableAllValidation();
-	private String 		_version;
-	
-	/**
-	 * Map of all validators configured on the project or installed globally. The value of true
-	 * means that the VMD is enabled, and a value of false means that the VMD is disabled.
-	 */
-	private Map<ValidatorMetaData, Boolean>		_validators = new HashMap<ValidatorMetaData, Boolean>();
-	protected Map<ValidatorMetaData, Boolean> 	manualValidators;
-	protected Map<ValidatorMetaData, Boolean> 	buildValidators;
-	
-	protected static final String UserPreference = "USER_PREFERENCE"; //$NON-NLS-1$
-	protected static final String UserBuildPreference = "USER_BUILD_PREFERENCE"; //$NON-NLS-1$
-	protected static final String UserManualPreference = "USER_MANUAL_PREFERENCE"; //$NON-NLS-1$
-	protected static final String DelegatesPreference = "DELEGATES_PREFERENCE"; //$NON-NLS-1$
-	
-	// GRK - I am keeping these "constants" in the off chance that they were used somewhere outside the framework
-	protected String USER_PREFERENCE 		= UserPreference;
-	protected String USER_MANUAL_PREFERENCE = UserManualPreference;
-	protected String USER_BUILD_PREFERENCE 	= UserBuildPreference;
-	protected String DELEGATES_PREFERENCE 	= DelegatesPreference;
-	
-	/**
-	 * The key is the target id, that is the id of the place holder validator. The value is the id 
-	 * of the real validator. 
-	 */
-	private Map<String, String> _delegatesByTarget = new HashMap<String, String>();
-	
-	private static final String DefaultValue = "default_value"; //$NON-NLS-1$
-
-	public static String getEnabledElementsAsString(Set<ValidatorMetaData> elements) {
-		if (elements == null)return null;
-
-		StringBuffer buffer = new StringBuffer();
-		for (ValidatorMetaData vmd : elements) {
-			buffer.append(vmd.getValidatorUniqueName());
-			buffer.append(ConfigurationConstants.ELEMENT_SEPARATOR);
-		}
-		return buffer.toString();
-	}
-
-	private boolean getDisableAllValidation() {
-		return false;
-	}
-
-	public static String getEnabledElementsAsString(ValidatorMetaData[] elements) {
-		StringBuffer buffer = new StringBuffer();
-		for (ValidatorMetaData vmd : elements) {
-			buffer.append(vmd.getValidatorUniqueName());
-			buffer.append(ConfigurationConstants.ELEMENT_SEPARATOR);
-		}
-		return buffer.toString();
-	}
-
-	public static Set<ValidatorMetaData> getStringAsEnabledElements(String elements) {
-		if (elements == null)return null;
-
-		Set<ValidatorMetaData> result = new HashSet<ValidatorMetaData>();
-		StringTokenizer tokenizer = new StringTokenizer(elements, ConfigurationConstants.ELEMENT_SEPARATOR);
-		while (tokenizer.hasMoreTokens()) {
-			String elem = tokenizer.nextToken();
-			ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(elem);
-			if (vmd != null)result.add(vmd);
-		}
-		return result;
-	}
-
-	public static ValidatorMetaData[] getStringAsEnabledElementsArray(String elements) {
-		if (elements == null)return null;
-
-		StringTokenizer tokenizer = new StringTokenizer(elements, ConfigurationConstants.ELEMENT_SEPARATOR);
-		ValidatorMetaData[] result = new ValidatorMetaData[tokenizer.countTokens()];
-		int count = 0;
-		while (tokenizer.hasMoreTokens()) {
-			String elem = tokenizer.nextToken();
-			ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(elem);
-			if (vmd != null)result[count++] = vmd;
-		}
-
-		if (count != result.length) {
-			ValidatorMetaData[] trimResult = new ValidatorMetaData[count];
-			System.arraycopy(result, 0, trimResult, 0, count);
-			return trimResult;
-		}
-
-		return result;
-	}
-	
-	/**
-	 * Answer the validators
-	 * @return
-	 */
-	public static Set<String> getValidatorIdsManual(){
-		PreferencesWrapper prefs = PreferencesWrapper.getPreferences(null, null);
-		String config = prefs.get(UserManualPreference, null);
-		return getValidatorIds(config);
-	}
-	
-	public static Set<String> getValidatorIdsBuild(){
-		PreferencesWrapper prefs = PreferencesWrapper.getPreferences(null, null);
-		String config = prefs.get(UserBuildPreference, null);
-		return getValidatorIds(config);
-	}
-	
-	private static Set<String> getValidatorIds(String elements){
-		Set<String> set = new HashSet<String>(50);
-		if (elements != null){
-			StringTokenizer tokenizer = new StringTokenizer(elements, ConfigurationConstants.ELEMENT_SEPARATOR);
-			while (tokenizer.hasMoreTokens())set.add(tokenizer.nextToken());
-		}
-		return set;
-	}
-
-	public static IWorkspaceRoot getRoot() {
-		return ResourcesPlugin.getWorkspace().getRoot();
-	}
-	
-	protected ValidationConfiguration(IResource resource){
-		_resource = resource;
-	}
-
-	protected ValidationConfiguration(IResource resource, ValidatorMetaData[] validators) throws InvocationTargetException {
-		if (resource == null) {
-			throw new InvocationTargetException(null, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_NULLCREATE));
-		}
-
-		_resource = resource;
-		setValidators(validators);
-	}
-	
-	public boolean isDisableAllValidation() throws InvocationTargetException {
-		return disableAllValidation;
-	}
-
-	public void setDisableAllValidation(boolean allValidation) {
-		disableAllValidation = allValidation;
-	}
-
-	public ValidatorMetaData[] getEnabledValidators() throws InvocationTargetException {
-		return getValidators(true);
-	}
-	
-	/**
-	 * If "incremental" is true, return the enabled incremental validators. If "incremental" is
-	 * false, return the enabled non-incremental validators.
-	 */
-	public ValidatorMetaData[] getEnabledIncrementalValidators(boolean incremental) throws InvocationTargetException {
-		return getEnabledFullBuildValidators(!incremental);
-	}
-
-	/**
-	 * If "fullBuild" is true, return the enabled validators that support full builds. If
-	 * "fullBuild" is false, return the enabled validators that do not support full builds.
-	 */
-	public ValidatorMetaData[] getEnabledFullBuildValidators(boolean fullBuild) throws InvocationTargetException {
-		return getEnabledFullBuildValidators(fullBuild, false);
-	}
-
-	public ValidatorMetaData[] getEnabledFullBuildValidators(boolean fullBuild, boolean onlyReferenced) throws InvocationTargetException {
-
-		int count = 0;
-		ValidatorMetaData[] result = null;
-		 
-		if( !isDisableAllValidation() ){
-			Set<ValidatorMetaData> set = getBuildEnabledValidatorsMap().keySet();
-			ValidatorMetaData[] temp = new ValidatorMetaData[set.size()];
-			for (ValidatorMetaData vmd : set) {
-				Boolean bvalue = getBuildEnabledValidatorsMap().get(vmd);
-				if (bvalue) {
-					// If the validator is enabled
-					if (vmd == null)continue;
-					if ( vmd.isBuildValidation() ) {
-						if (!onlyReferenced || vmd.isDependentValidator())
-							temp[count++] = vmd;
-					}
-				}
-			}
-			result = new ValidatorMetaData[count];
-			System.arraycopy(temp, 0, result, 0, count);
-		}
-		else {
-			 result = new ValidatorMetaData[0];
-		}
-		return result;
-	}
-
-	public void setEnabledValidators(ValidatorMetaData[] vmds) {
-		// First, "disable" all validators
-		Map<ValidatorMetaData, Boolean> all = getValidatorMetaData();
-		for (ValidatorMetaData vmd : all.keySet()) {
-			all.put(vmd, Boolean.FALSE);
-		}
-
-		// Then enable only the validators in the array
-		if ((vmds == null) || (vmds.length == 0))return;
-		
-		for (ValidatorMetaData vmd : vmds) {
-			all.put(vmd, Boolean.TRUE);
-		}
-	}
-	
-	public void setEnabledManualValidators(ValidatorMetaData[] vmds) throws InvocationTargetException {
-		Set<ValidatorMetaData> manualEnabledVMDs = new HashSet<ValidatorMetaData>(vmds.length);
-		for (ValidatorMetaData vmd : vmds)manualEnabledVMDs.add(vmd);
-		
-		for(ValidatorMetaData data : getValidators()) {
-			if(manualEnabledVMDs.contains(data))
-				getManualEnabledValidatorsMap().put(data, Boolean.TRUE);
-			else
-				getManualEnabledValidatorsMap().put(data, Boolean.FALSE);			
-		}
-	}
-	
-	/**
-	 * Update the list of validators that have been enabled for manual validation.
-	 * 
-	 * @param vmds the validators that are enabled for manual validation.
-	 * @throws InvocationTargetException
-	 */
-	public void setEnabledManualValidators(Set<ValidatorMetaData> vmds) throws InvocationTargetException {
-		for(ValidatorMetaData data : getValidators()) {
-			if(vmds.contains(data))getManualEnabledValidatorsMap().put(data, Boolean.TRUE);
-			else getManualEnabledValidatorsMap().put(data, Boolean.FALSE);			
-		}
-	}
-	
-	public void setEnabledBuildValidators(ValidatorMetaData[] vmds) throws InvocationTargetException {
-		Set<ValidatorMetaData> buildEnabledVMDs = new HashSet<ValidatorMetaData>(vmds.length);
-		for (ValidatorMetaData vmd : vmds)buildEnabledVMDs.add(vmd);
-		for(ValidatorMetaData data : getValidators()) {
-			if(buildEnabledVMDs.contains(data))
-				getBuildEnabledValidatorsMap().put(data, Boolean.TRUE);
-			else
-				getBuildEnabledValidatorsMap().put(data, Boolean.FALSE);			
-		}
-	}
-	
-	/**
-	 * Update the list of validators that have been enabled for build validation.
-	 * 
-	 * @param vmds the validators that are enabled for build validation.
-	 * @throws InvocationTargetException
-	 */
-	public void setEnabledBuildValidators(Set<ValidatorMetaData> vmds) throws InvocationTargetException {
-		for(ValidatorMetaData data : getValidators()) {
-			if(vmds.contains(data))getBuildEnabledValidatorsMap().put(data, Boolean.TRUE);
-			else getBuildEnabledValidatorsMap().put(data, Boolean.FALSE);			
-		}
-	}
-
-	private Map<ValidatorMetaData, Boolean> getValidatorMetaData() {
-		return _validators;
-	}
-	
-
-	public ValidatorMetaData[] getDisabledValidators() throws InvocationTargetException {
-		return getValidators(false);
-	}
-
-	/**
-	 * Return an array of ValidatorMetaData - if value is false, return the disabled validators; if
-	 * value is true, return the enabled validators.
-	 */
-	private ValidatorMetaData[] getValidators(boolean value) throws InvocationTargetException {
-		ValidatorMetaData[] temp = new ValidatorMetaData[numberOfValidators()];
-		int count = 0;
-		for (ValidatorMetaData vmd : getValidatorMetaData().keySet()) {
-			Boolean bvalue = getValidatorMetaData().get(vmd);
-			if (bvalue.booleanValue() == value) {
-				temp[count++] = vmd;
-			}
-		}
-
-		ValidatorMetaData[] result = new ValidatorMetaData[count];
-		System.arraycopy(temp, 0, result, 0, count);
-		return result;
-	}
-	
-	public ValidatorMetaData[] getManualEnabledValidators() throws InvocationTargetException {
-		Map<ValidatorMetaData, Boolean> map = getManualEnabledValidatorsMap();
-		if (!map.isEmpty()) {
-			List<ValidatorMetaData> list = new LinkedList<ValidatorMetaData>();
-			for (Map.Entry<ValidatorMetaData, Boolean> me : map.entrySet()) {
-				Boolean obj = me.getValue();
-				if (obj != null && obj)list.add(me.getKey());
-			}
-			return (ValidatorMetaData[]) list.toArray(new ValidatorMetaData[list.size()]);
-		}
-		return getEnabledValidators();
-	}	
-	
-	public  ValidatorMetaData[] getBuildEnabledValidators() throws InvocationTargetException {
-		Map<ValidatorMetaData, Boolean> map = getBuildEnabledValidatorsMap();
-		List<ValidatorMetaData> list = new LinkedList<ValidatorMetaData>();
-		if (!map.isEmpty()) {
-			for (Map.Entry<ValidatorMetaData, Boolean> me : map.entrySet()) {
-				Boolean obj = me.getValue();
-				if (obj != null && obj)list.add(me.getKey());
-			}
-			return (ValidatorMetaData[]) list.toArray(new ValidatorMetaData[list.size()]);
-		}
-		return getEnabledValidators();
-	}
-	
-	/**
-	 * Answer the map of the validators that have been enabled for build validation, 
-	 * creating it if necessary.
-	 */
-	protected  Map<ValidatorMetaData, Boolean> getBuildEnabledValidatorsMap() {
-		if(buildValidators == null)buildValidators = new HashMap<ValidatorMetaData, Boolean>();
-		return buildValidators;
-	}	
-	
-	/**
-	 * Answer the map of the validators that have been enabled for manual validation, 
-	 * creating it if necessary.
-	 */
-	protected  Map<ValidatorMetaData, Boolean> getManualEnabledValidatorsMap() {
-		if(manualValidators == null)manualValidators = new HashMap<ValidatorMetaData, Boolean>();
-		return manualValidators;
-	}	
-
-	/**
-	 * Return all incremental validators for this preference; either every installed validator
-	 * (global) or every validator configured on the project (project).
-	 */
-	public ValidatorMetaData[] getIncrementalValidators() throws InvocationTargetException {
-		ValidatorMetaData[] temp = new ValidatorMetaData[numberOfValidators()];
-		int count = 0;
-		for (ValidatorMetaData vmd : getValidatorMetaData().keySet()) {
-			Boolean bvalue = getValidatorMetaData().get(vmd);
-			if (bvalue && vmd.isIncremental())temp[count++] = vmd;
-		}
-
-		ValidatorMetaData[] result = new ValidatorMetaData[count];
-		System.arraycopy(temp, 0, result, 0, count);
-		return result;
-	}
-
-	/**
-	 * Return all validators for this preference; either every installed validator (global) or every
-	 * validator configured on the project (project).
-	 */
-	public ValidatorMetaData[] getValidators() throws InvocationTargetException {
-		return convertToArray(_validators.keySet());
-	}
-	
-	public void setValidators(ValidatorMetaData[] vmds) {
-		_validators.clear();
-		for (ValidatorMetaData vmd : vmds) {
-			if (vmd == null)continue;
-			_validators.put(vmd, (vmd.isEnabledByDefault() ? Boolean.TRUE : Boolean.FALSE));
-		}
-	}
-	
-  public void setDefaultDelegates(ValidatorMetaData[] vmds) throws InvocationTargetException {
-    _delegatesByTarget.clear();
-    for (ValidatorMetaData vmd : vmds) {
-      if (vmd == null)continue;
-      
-      String targetID = vmd.getValidatorUniqueName();
-      String delegateID = ValidatorDelegatesRegistry.getInstance().getDefaultDelegate(targetID);
-      if (delegateID == null)continue;
-      _delegatesByTarget.put(targetID, ValidatorDelegatesRegistry.getInstance().getDefaultDelegate(targetID));
-    }
-  }
-
-	/**
-	 * Returns the number of configured validators on the given project or installed validators in
-	 * the workspace.
-	 */
-	public int numberOfValidators() throws InvocationTargetException {
-		return _validators.size();
-	}
-
-	public int numberOfEnabledIncrementalValidators() throws InvocationTargetException {
-		return numberOfIncrementalValidators(getEnabledValidators());
-	}
-
-	public int numberOfIncrementalValidators() throws InvocationTargetException {
-		return numberOfIncrementalValidators(getValidators());
-	}
-
-	private static int numberOfIncrementalValidators(ValidatorMetaData[] vmds) {
-		int count = 0;
-		for (ValidatorMetaData vmd : vmds) {
-			if (vmd.isIncremental())count++;
-		}
-		return count;
-	}
-
-	/**
-	 * Returns the number of enabled validators on the project or workspace.
-	 */
-	public int numberOfEnabledValidators() throws InvocationTargetException {
-		return getEnabledValidators().length;
-	}
-
-	/**
-	 * Returns the number of disabled validators on the project or workspace.
-	 */
-	public int numberOfDisabledValidators() throws InvocationTargetException {
-		return getDisabledValidators().length;
-	}
-
-	/**
-	 * The value returned from this method is guaranteed to be non-null.
-	 */
-	public final String getVersion() throws InvocationTargetException {
-		if (_version == null)loadVersion();
-		return _version;
-	}
-
-	private void setVersion(String version) {
-		_version = version;
-	}
-
-	/**
-	 * This preference has been migrated; change the version to the current version.
-	 * @deprecated dead code.
-	 */
-	public void markVersionCurrent() {
-		// The version should not be marked current until the migration is complete
-		// (i.e., ValidationMigrator has been invoked.) Migrating the user's configuration
-		// is only the first step of the migration.
-		setVersion(ConfigurationConstants.CURRENT_VERSION);
-	}
-
-	public boolean isVersionCurrent() throws InvocationTargetException {
-		return getVersion().equals(ConfigurationConstants.CURRENT_VERSION);
-	}
-
-	// IResource could be an IProject or an IWorkspaceRoot
-	public IResource getResource() {
-		return _resource;
-	}
-
-	/**
-	 * Return true if the validator is enabled on this preference.
-	 */
-	public boolean isEnabled(String validatorClassName) throws InvocationTargetException {
-		if (validatorClassName == null) {
-			return false;
-		}
-
-		ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validatorClassName);
-		return isEnabled(vmd);
-	}
-
-	/**
-	 * Return true if the validator is enabled on this preference.
-	 */
-	public boolean isEnabled(ValidatorMetaData vmd) throws InvocationTargetException {
-		if (vmd == null)return false;
-
-		Boolean value = getValidatorMetaData().get(vmd);
-		if (value == null)return false;
-
-		return value.booleanValue();
-	}
-
-	/**
-	 * Once all of the fields have been updated on this ValidationConfiguration instance, this
-	 * preference should be stored back on the IResource for later use. This method must be called
-	 * manually by the validation framework once the fields of this type have been updated.
-	 */
-	public final void passivate() throws InvocationTargetException {
-		try {
-			if (getResource() == null) {
-				throw new InvocationTargetException(null, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_NULLSAVE));
-			}
-			getResource().setSessionProperty(ConfigurationConstants.USER_PREFERENCE, this);
-		} catch (CoreException exc) {
-			throw new InvocationTargetException(exc, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_SAVE, new String[]{getResource().getName()}));
-		}
-	}
-
-	/**
-	 * Reset the values to the default values.
-	 */
-	public abstract void resetToDefault() throws InvocationTargetException;
-
-	protected Boolean convertToBoolean(boolean value) {
-		return (value == true ? Boolean.TRUE : Boolean.FALSE);
-	}
-
-	protected Integer convertToInteger(int value) {
-		return new Integer(value);
-	}
-
-	protected boolean convertToBoolean(String value) {
-		Boolean b = Boolean.valueOf(value);
-		return b.booleanValue();
-	}
-
-	protected int convertToInt(String value) {
-		Integer t = Integer.valueOf(value);
-		return t.intValue();
-	}
-
-	public static ValidatorMetaData[] convertToArray(Collection<ValidatorMetaData> c) {
-		int length = (c == null) ? 0 : c.size();
-		ValidatorMetaData[] result = new ValidatorMetaData[length];
-		if (length == 0)return result;
-
-		int count = 0;
-		for (ValidatorMetaData vmd : c)result[count++] = vmd;
-
-		return result;
-	}
-
-	public static ValidatorMetaData[] convertToArray(Object[] c) {
-		int length = (c == null) ? 0 : c.length;
-		ValidatorMetaData[] result = new ValidatorMetaData[length];
-		if (length == 0)return result;
-
-		System.arraycopy(c, 0, result, 0, length);
-		return result;
-	}
-	
-	/**
-	 * Save the values of these fields before the project or workspace is closed.
-	 */
-	public void store() throws InvocationTargetException {
-		store(null);
-	}
-
-	/**
-	 * Save the values of these fields before the project or workspace is closed.
-	 */
-	public void store(Boolean persist) throws InvocationTargetException {
-		PreferencesWrapper pref = PreferencesWrapper.getPreferences(null, persist);
-		pref.put(ValidationConfiguration.UserPreference, serialize());
-		pref.put(ValidationConfiguration.UserManualPreference, serializeManualSetting());
-		pref.put(ValidationConfiguration.UserBuildPreference, serializeBuildSetting());
-		pref.put(ValidationConfiguration.DelegatesPreference, serializeDelegatesSetting());
-		try {
-			pref.flush();
-		}
-		catch (BackingStoreException e){
-			throw new InvocationTargetException(e);
-		}
-	}
-
-	/**
-	 * Load and store the version number, but nothing else. The version isn't a preference, but it's
-	 * stored and loaded as if it is. Because the load mechanism is different between an IProject
-	 * and the IWorkspaceRoot, keep the load mechanism inside the ValidationConfiguration
-	 * implementation, but initialize only the minimum at first. After the project has been
-	 * migrated, load the other fields (loading the other fields before the migration may overwrite
-	 * the values of those fields).
-	 */
-	protected final void loadVersion() throws InvocationTargetException {
-		if (getResource() == null) {
-			throw new InvocationTargetException(null, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_NULLRETRIEVE));
-		}
-
-		IMarker[] marker = getMarker();
-		String version = null;
-		if (marker == null) {
-			// either a new workspace or already migrated; proceed as normal
-			version = loadVersion(getResource());
-		} else {
-			// migrate
-			version = loadVersion(marker);
-		}
-		setVersion(version);
-	}
-
-	protected final String loadVersion(IMarker[] marker) throws InvocationTargetException {
-		String version = (String) getValue(marker[0], ConfigurationConstants.VERSION);
-		if (version == null)	return ConfigurationConstants.VERSION4_03;
-
-		return version;
-	}
-
-	protected final String loadVersion(IResource resource) throws InvocationTargetException {
-		try {
-			// This method will be called in one of two situations:
-			//    1. This is a new workspace and no preferences exist.
-			//    2. This is a migrated workspace and the old preferences have already been created as
-			// persistent properties.
-			String storedConfiguration = resource.getPersistentProperty(ConfigurationConstants.USER_PREFERENCE);
-			String version = null;
-			if (storedConfiguration == null) {
-				version = getVersionDefault();
-			} else {
-				int versionIndex = storedConfiguration.indexOf(ConfigurationConstants.VERSION);
-				if (versionIndex != -1)
-					version = storedConfiguration.substring(versionIndex + ConfigurationConstants.VERSION.length());
-			}
-
-			if (version == null) {
-				return getVersionDefault();
-			}
-
-			return version;
-		} catch (CoreException exc) {
-			throw new InvocationTargetException(exc, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_RETRIEVE, new String[]{getResource().getName()}));
-		}
-	}
-
-	/**
-	 * Load the values of these fields when the project or workspace is opened.
-	 */
-	protected final void load() throws InvocationTargetException {
-		try {
-			if (getResource() == null) {
-				throw new InvocationTargetException(null, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_NULLRETRIEVE));
-			}
-
-			IMarker[] marker = getMarker();
-			if (marker == null) {
-				// either a new workspace or already migrated; proceed as normal
-				loadPreference();
-			} else {
-				// migrate
-				load(marker);
-			}
-		} catch (InvocationTargetException exc) {
-			throw exc;
-		} catch (Exception exc) {
-			String resourceName = (getResource() == null) ? "null" : getResource().getName(); //$NON-NLS-1$
-			throw new InvocationTargetException(exc, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_RETRIEVE, new String[]{resourceName}));
-		}
-	}
-
-	/**
-	 * Return the IMarker that used to store the preference information, if the marker exists. (If
-	 * it doesn't exist, then it's already been migrated.)
-	 */
-	protected abstract IMarker[] getMarker();
-
-	protected abstract void load(IMarker[] marker) throws InvocationTargetException;
-
-	protected Object getValue(IMarker marker, String attribName) {
-		if (marker == null)return null;
-
-		try {
-			return marker.getAttribute(attribName);
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return null;
-		}
-	}
-
-	protected boolean getValue(IMarker marker, String attribName, boolean defaultValue) {
-		Boolean bool = (Boolean) getValue(marker, attribName);
-		if (bool == null)return defaultValue;
-
-		return bool.booleanValue();
-	}
-
-	protected int getValue(IMarker marker, String attribName, int defaultValue) {
-		Integer integer = (Integer) getValue(marker, attribName);
-		if (integer == null)return defaultValue;
-
-		return integer.intValue();
-	}
-
-	protected String getValue(IMarker marker, String attribName, String defaultValue) {
-		String string = (String) getValue(marker, attribName);
-		if (string == null)return defaultValue;
-
-		return string;
-	}
-
-	protected void loadPreference() throws InvocationTargetException {
-		// This method will be called in one of two situations:
-		// 1. This is a new workspace and no preferences exist.
-		// 2. This is a migrated workspace and the old preferences have already been created as
-		// persistent properties.
-		PreferencesWrapper prefs = PreferencesWrapper.getPreferences(null, null);
-		deserializeAllPrefs(prefs);
-	}
-
-	/**
-	 * @param prefs
-	 * @throws InvocationTargetException
-	 */
-	private void deserializeAllPrefs(PreferencesWrapper prefs) throws InvocationTargetException {
-		String storedConfig = prefs.get(ValidationConfiguration.UserPreference, null);
-		deserialize(storedConfig);
-		String storedManualConfig = prefs.get(ValidationConfiguration.UserManualPreference, null);
-		deserializeManual(storedManualConfig);
-		String storedBuildConfig = prefs.get(ValidationConfiguration.UserBuildPreference, null);
-		deserializeBuild(storedBuildConfig);
-		String storedDelegatesConfiguration = prefs.get(ValidationConfiguration.DelegatesPreference, null);
-		deserializeDelegates(storedDelegatesConfiguration);
-	}
-	
-	public void propertyChange(PropertyChangeEvent event) {
-		Preferences prefs = (Preferences) event.getSource();
-		if (prefs != null && !event.getOldValue().equals(event.getNewValue())) {
-			try {
-				deserializeAllPrefs(event);
-				passivate();
-			 } catch (InvocationTargetException e) {
-				 ValidationPlugin.getPlugin().handleException(e);
-			}
-		}
-	}
-
-	private void deserializeAllPrefs(PropertyChangeEvent event) throws InvocationTargetException {
-		String storedConfig = (String)event.getNewValue();
-		if( event.getProperty().equals(ValidationConfiguration.UserPreference) ){
-			deserialize(storedConfig);
-		}else if(event.getProperty().equals(ValidationConfiguration.UserManualPreference)){
-			deserializeManual(storedConfig);
-		}else if(event.getProperty().equals(ValidationConfiguration.UserBuildPreference)){
-			deserializeBuild(storedConfig);
-		}else if(event.getProperty().equals(ValidationConfiguration.DelegatesPreference)){
-			deserializeDelegates(storedConfig);
-		}
-	}
-	
-	
-	protected void deserializeBuild(String storedConfiguration) throws InvocationTargetException {
-		if (storedConfiguration == null || storedConfiguration.length() == 0 || storedConfiguration.equals(DefaultValue)) {
-			// Assume that the configuration has never been set (new workspace).
-			resetToDefault();
-			return;
-		}
-		int buildValidationIndex = storedConfiguration.indexOf(ConfigurationConstants.ENABLED_BUILD_VALIDATORS);
-
-		String manualValidation = storedConfiguration.substring(buildValidationIndex + ConfigurationConstants.ENABLED_BUILD_VALIDATORS.length(),storedConfiguration.length());
-		setEnabledBuildValidators(getStringAsEnabledElementsArray(manualValidation));
-	}
-
-	protected void deserializeManual(String storedConfiguration) throws InvocationTargetException {
-		if (storedConfiguration == null || storedConfiguration.length() == 0 || storedConfiguration.equals(DefaultValue)) {
-			// Assume that the configuration has never been set (new workspace).
-			resetToDefault();
-			return;
-		}
-		int manualValidationIndex = storedConfiguration.indexOf(ConfigurationConstants.ENABLED_MANUAL_VALIDATORS);
-
-		String manualValidation = storedConfiguration.substring(manualValidationIndex + ConfigurationConstants.ENABLED_MANUAL_VALIDATORS.length(),storedConfiguration.length());
-		setEnabledManualValidators(getStringAsEnabledElementsArray(manualValidation));
-	}
-
-	protected void deserializeDelegates(String storedConfiguration) throws InvocationTargetException {
-
-    if (storedConfiguration == null || storedConfiguration.length() == 0 || storedConfiguration.equals(DefaultValue)) {
-	    // Assume that the configuration has never been set (new workspace).
-	    resetToDefault();
-	    return;
-	  }
-
-	  int delegatesIndex = storedConfiguration.indexOf(ConfigurationConstants.DELEGATE_VALIDATORS);
-
-	  String delegates = storedConfiguration.substring(delegatesIndex + ConfigurationConstants.DELEGATE_VALIDATORS.length(),storedConfiguration.length());
-
-	  if (delegates == null) {
-	    return;
-	  }
-
-	  StringTokenizer tokenizer = new StringTokenizer(delegates, ConfigurationConstants.ELEMENT_SEPARATOR);
-	  while (tokenizer.hasMoreTokens()) {
-	    String delegateConfiguration = tokenizer.nextToken();
-	    int separatorIndex = delegateConfiguration.indexOf(ConfigurationConstants.DELEGATES_SEPARATOR);
-	    String targetID = delegateConfiguration.substring(0, separatorIndex);
-	    String delegateID = delegateConfiguration.substring(separatorIndex + 1);
-      _delegatesByTarget.put(targetID, delegateID);
-	  }
-	}
-
-	protected void copyTo(ValidationConfiguration up) throws InvocationTargetException {
-		up.setVersion(getVersion());
-		up.setValidators(getValidators());
-		up.setDisableAllValidation(isDisableAllValidation());
-		up.setEnabledValidators(getEnabledValidators());
-		up.setEnabledManualValidators(getManualEnabledValidators());
-		up.setEnabledBuildValidators(getBuildEnabledValidators());
-    up.setDelegatingValidators(getDelegatingValidators());
-	}
-
-	/**
-	 * The key is the id of the place holder validator, and the value is the id of validator
-	 * that will perform the validation. 
-	 */
-	public Map<String, String> getDelegatingValidators() throws InvocationTargetException {
-		return _delegatesByTarget;
-	}
-
-	public void setDelegatingValidators(Map<String, String> source)
-	{
-		// It is safe to copy this map as it contains only immutable strings.
-		_delegatesByTarget.putAll(source);
-	}
-
-  /**
-	 * Return true if the enabled validators have not changed since this ValidationConfiguration was
-	 * constructed, false otherwise. (This method is needed for the Properties and Preference pages;
-	 * if the list of validators hasn't changed, then there is no need to update the task list;
-	 * updating the task list is a costly operation.)
-	 */
-	protected boolean hasEnabledValidatorsChanged(ValidatorMetaData[] oldEnabledVmd) throws InvocationTargetException {
-		// First check the obvious: is every enabled validator still enabled, and is
-		// the number of enabled validators the same as it was before? If not, return true.
-		if (oldEnabledVmd == null) {
-			// Something's gone wrong...
-			return true;
-		}
-
-		for (int i = 0; i < oldEnabledVmd.length; i++) {
-			ValidatorMetaData vmd = oldEnabledVmd[i];
-			if (!isEnabled(vmd)) {
-				return true;
-			}
-		}
-
-		// Everything that was enabled is still enabled; have any additional
-		// validators been enabled?
-		if (numberOfEnabledValidators() != oldEnabledVmd.length) {
-			return true;
-		}
-
-		return false;
-	}
-  
-  /**
-   * Determines if there has been a change in the list of delegate validators.
-   * @param oldDelegates a Map with the old delegates ID by target ID.
-   * @return true if there has been a change, false otherwise.
-   * @throws InvocationTargetException
-   */
-  protected boolean haveDelegatesChanged(Map<String, String> oldDelegates) throws InvocationTargetException {
-    
-    if (oldDelegates == null)return true;
-    
-    for (String targetID : oldDelegates.keySet()) {
-      String oldDelegateID = oldDelegates.get(targetID);
-      String newDelegateID = _delegatesByTarget.get(targetID);
-      
-      if (oldDelegateID == null || newDelegateID == null)return true;
-        
-      if (!newDelegateID.equals(oldDelegateID))return true;
-    }
-    
-    if (oldDelegates.size() != _delegatesByTarget.size())return true;
-    
-    return false;
-  }
-
-	protected String serialize() throws InvocationTargetException {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(ConfigurationConstants.DISABLE_ALL_VALIDATION_SETTING);
-		buffer.append(String.valueOf(isDisableAllValidation()));
-		buffer.append(ConfigurationConstants.VERSION);
-		buffer.append(getVersion());
-		return buffer.toString();
-	}
-	
-	protected String serializeManualSetting() throws InvocationTargetException {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(ConfigurationConstants.ENABLED_MANUAL_VALIDATORS);
-		buffer.append(getEnabledElementsAsString(getManualEnabledValidators()));
-		return buffer.toString();
-	}
-	
-	protected String serializeBuildSetting() throws InvocationTargetException {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append(ConfigurationConstants.ENABLED_BUILD_VALIDATORS);
-		buffer.append(getEnabledElementsAsString(getBuildEnabledValidators()));
-		return buffer.toString();
-	}
-
-  protected String serializeDelegatesSetting() throws InvocationTargetException {
-    StringBuffer buffer = new StringBuffer();
-    buffer.append(ConfigurationConstants.DELEGATE_VALIDATORS);
-    buffer.append(getDelegatesAsString(getValidatorMetaData()));
-    return buffer.toString();
-  }
-
-  /**
-   * Provides a String which contains pairs of targetID=delegateID separated by a semicolon.
-   * @param validatorMetaData a Map with the currently configured validators.
-   * @return a String.
-   */
-  private String getDelegatesAsString(Map<ValidatorMetaData, Boolean> validatorMetaData) {
-    
-    StringBuffer buffer = new StringBuffer();
-    for (ValidatorMetaData vmd : validatorMetaData.keySet()) {    
-      String targetID = vmd.getValidatorUniqueName();
-      String delegateID = getDelegateUniqueName(vmd);
-      
-      if (delegateID == null)continue;
-
-      // Write out pairs targetID=delegateID
-
-      buffer.append(targetID);
-      buffer.append(ConfigurationConstants.DELEGATES_SEPARATOR);
-      buffer.append(delegateID);
-      buffer.append(ConfigurationConstants.ELEMENT_SEPARATOR);
-    }
-    
-    return buffer.toString();
-  }
-  
-  /**
-   * Provides the delegate's ID of the validator delegate configured in this configuration for 
-   * a given delegating validator. That is answer the id of validator that is going to do the real work.
-   * 
-   * @param vmd the delegating validator's meta data. Must not be null.
-   * @return a String with the id of the validator delegate, null if there isn't one.
-   */
-  public String getDelegateUniqueName(ValidatorMetaData vmd) {
-    String targetID = vmd.getValidatorUniqueName();    
-    return _delegatesByTarget.get(targetID);
-  }
-  
-  /**
-   * Provides the delegate's ID of the validator delegate configured in this configuration for 
-   * a given delegating validator. That is answer the id of validator that is going to do the real work.
-   * 
-   * @param targetId the id of the target (or place holder) validator. Must not be null.
-   * @return a String with the id of the validator delegate, null if there isn't one.
-   */
-  public String getDelegateForTarget(String targetId){
-	  return _delegatesByTarget.get(targetId);
-  }
-
-  /**
-   * Sets the delegate's ID of the validator delegate to be used in this configuration for the
-   * given delegating validator.
-   * 
-   * @param vmd the delegating validator's metadata. Must not be null.
-   * @param delegateID a String with the unique name (ID) of the validator delegate. Must not be null.
-   */
-  public void setDelegateUniqueName(ValidatorMetaData vmd, String delegateID) {
-    String targetID = vmd.getValidatorUniqueName();    
-    _delegatesByTarget.put(targetID, delegateID);
-  }
-
-  /**
-	 * Deserialize everything except the version number; the version is deserialized first, in the
-	 * loadVersion() method.
-	 */
-	protected void deserialize(String storedConfiguration) throws InvocationTargetException {
-		if (storedConfiguration == null || storedConfiguration.length() == 0 || storedConfiguration.equals(DefaultValue)) {
-			// Assume that the configuration has never been set (new workspace).
-			resetToDefault();
-			return;
-		}
-		int disableAllValidationIndex = storedConfiguration.indexOf(ConfigurationConstants.DISABLE_ALL_VALIDATION_SETTING);
-		int versionIndex = storedConfiguration.indexOf(ConfigurationConstants.VERSION);
-		if(disableAllValidationIndex != -1) {
-				String disableAllValidation = storedConfiguration.substring(disableAllValidationIndex + ConfigurationConstants.DISABLE_ALL_VALIDATION_SETTING.length(),versionIndex);
-				setDisableAllValidation(Boolean.valueOf(disableAllValidation).booleanValue());
-		} else {
-				setDisableAllValidation(false);
-		}
-		
-	}
-
-	public static boolean getDisableValidationDefault() {
-		return ConfigurationConstants.DEFAULT_DISABLE_VALIDATION_SETTING;
-	}
-
-	public static ValidatorMetaData[] getEnabledValidatorsDefault() {
-		return ConfigurationConstants.DEFAULT_ENABLED_VALIDATORS;
-	}
-
-	public static int getMaximumNumberOfMessagesDefault() {
-		return ConfigurationConstants.DEFAULT_MAXNUMMESSAGES;
-	}
-
-	public static String getVersionDefault() {
-		// If the version can't be retrieved, assume that it's a new workspace. (A null version
-		// could also mean a 4.03 workspace, but that's taken care of in the load(IMarker[])
-		// method.)
-		return ConfigurationConstants.CURRENT_VERSION;
-	}
-	
-	public boolean isManualEnabled(ValidatorMetaData vmd) {
-		if (vmd == null)return false;
-		Boolean value = getManualEnabledValidatorsMap().get(vmd);
-		if (value == null)return false;
-		return value;
-	}
-
-	public boolean isBuildEnabled(ValidatorMetaData vmd) {
-		if (vmd == null)return false;
-		Boolean value = getBuildEnabledValidatorsMap().get(vmd);
-		if (value == null)return false;
-		return value;
-	}
-	
-	public int numberOfManualEnabledValidators() throws InvocationTargetException {
-		return getManualEnabledValidators().length;
-	}
-	
-	public void enableSingleValidator(ValidatorMetaData  vmd){
-		getValidatorMetaData().put(vmd, Boolean.TRUE);
-	}
-	
-	
-	public void disableSingleValidator(ValidatorMetaData  vmd){
-		getValidatorMetaData().put(vmd, Boolean.FALSE);
-	}
-	
-	public void enableSingleManualValidator(ValidatorMetaData  vmd){
-		getManualEnabledValidatorsMap().put(vmd, Boolean.TRUE);
-	}
-	
-	
-	public void disableSingleManualValidator(ValidatorMetaData  vmd){
-		getManualEnabledValidatorsMap().put(vmd, Boolean.FALSE);
-	}
-
-	
-	public void enableSingleBuildValidator(ValidatorMetaData  vmd){
-		getBuildEnabledValidatorsMap().put(vmd, Boolean.TRUE);
-	}
-	
-	
-	public void disableSingleBuildValidator(ValidatorMetaData  vmd){
-		getBuildEnabledValidatorsMap().put(vmd, Boolean.FALSE);
-	}
-	
-  /**
-   * Provides the delegate validator descriptor of the validator delegate configured 
-   * for the given delegating validator in the context of this configuration. 
-   * @param vmd the delegating validator's meta data. Must not be null.
-   * @return a ValidatorDelegateDescriptor for the given delegating validator.
-   */
-  public ValidatorDelegateDescriptor getDelegateDescriptor(ValidatorMetaData vmd)  throws InvocationTargetException {
-    String targetID = vmd.getValidatorUniqueName();
-    String delegateID = getDelegateUniqueName(vmd);
-  
-    ValidatorDelegateDescriptor descriptor = ValidatorDelegatesRegistry.getInstance().getDescriptor(targetID, delegateID); 
-    return descriptor;    
-  }
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationFactoryImpl.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationFactoryImpl.java
deleted file mode 100644
index 1ba2ed1..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationFactoryImpl.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.wst.validation.internal.provisional.ValidationFactory;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-
-public class ValidationFactoryImpl implements ValidationFactory {
-	static ValidationFactory inst = null;
-	
-	public ValidationFactoryImpl() {
-		super();
-	}
-
-	public static ValidationFactory getInstance() {
-		if(inst == null)
-			inst = new ValidationFactoryImpl();
-		return inst;
-	}
-
-
-
-	public IValidator getValidator(String validatorUniqueId) throws InstantiationException {
-		ValidationRegistryReader reader = ValidationRegistryReader.getReader();
-		return reader.getValidator(validatorUniqueId);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationRegistryReader.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationRegistryReader.java
deleted file mode 100644
index 9766048..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationRegistryReader.java
+++ /dev/null
@@ -1,1353 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.expressions.EvaluationContext;
-import org.eclipse.core.expressions.EvaluationResult;
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.expressions.ExpressionConverter;
-import org.eclipse.core.expressions.ExpressionTagNames;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.validation.internal.delegates.ValidatorDelegatesRegistry;
-import org.eclipse.wst.validation.internal.operations.IRuleGroup;
-import org.eclipse.wst.validation.internal.operations.IWorkbenchContext;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-import org.osgi.framework.Bundle;
-
-/**
- * ValidationRegistryReader is a singleton who reads the plugin registry for Validator extensions.
- * The read is done once (in the constructor), and the list of validators can be accessed by calling
- * "getValidatorMetaData(String)" on this class. The read is triggered by a call from
- * ValidatorManager's loadValidatorMetaData(IProject) method. ValidatorManager delegates the load
- * call to this class, and if this class is null, the singleton is new'ed up, and the registry is
- * read.
- * <p>
- * No Validator should need to know about this class. The only class which should call
- * ValidationRegistryReader is ValidatorManager.
- * </p>
- * <p>
- * The Validator itself is initialized in the "initializeValidator" method.
- * </p>
- */
-public final class ValidationRegistryReader implements RegistryConstants {
-	
-	 /* <extension point="org.eclipse.wst.validation.internal.provisional.core.core.validator" id="EJBValidator" name="EJB
-		 * Validator"> <validator><projectNature id="com.ibm.etools.j2ee.EJBNature" include="false"/>
-		 * <filter objectClass="org.eclipse.core.resources.IFile" nameFilter = "ejb-jar.xml"/> <filter
-		 * objectClass="org.eclipse.core.resources.IFile" nameFilter = "*.java"/> <helper
-		 * class="org.eclipse.wst.validation.internal.provisional.core.core.ejb.workbenchimpl.EJBHelper"/> <run
-		 * class="org.eclipse.wst.validation.internal.provisional.core.core.ejb.EJBValidator" incremental="false" enabled="false"
-		 * pass="fast,full" async="false"/> <aggregateValidator class="my.aggregate.ValidatorClass"/>
-		 * <migrate><validator from="old.class.name" to="new.class.name"/> </migrate> </validator>
-		 * </extension>
-		 */
-	
-	private static ValidationRegistryReader _inst = new ValidationRegistryReader();
-	
-	/** list of all validators registered, with their associated ValidatorMetaData, indexed by project nature id */
-	private final Map<String,Set<ValidatorMetaData>> _validators;
-	
-	// list of all validators, indexed by validator class name,
-	// with the validator's ValidatorMetaData as the value.
-	// Needed by the WorkbenchReporter, because sometimes the
-	// IValidator is not enough to remove all messages from the
-	// task list.
-	private final Map<String, ValidatorMetaData> _indexedValidators; 
-	
-	private final Set<ValidatorMetaData> _defaultEnabledValidators;
-	
-	// Since IProject's contents are all instances of IResource, every type filter for a validator
-	// must be an instance of IResource. This applies to both the rebuildCache pass and to the
-	// validation pass.
-	private static final String IRESOURCE = "org.eclipse.core.resources.IResource"; //$NON-NLS-1$
-
-	private static final String UNKNOWN_PROJECT = "UNKNOWN"; //$NON-NLS-1$ // This 'project nature id' is used as a key to get the validators which can run on a project type which hasn't been explicitly filtered in or out by any validator.
-	private static final String EXCLUDED_PROJECT = "EXCLUDED"; //$NON-NLS-1$ // This 'project nature id' is used as a key to get the validators which are excluded on certain projects.
-	
-	/** @deprecated this instance variable should not be public. */
-	public HashMap<IProject, Set<ValidatorMetaData>> projectValidationMetaData = new HashMap<IProject, Set<ValidatorMetaData>>();
-
-	/**
-	 * The registry is read once - when this class is instantiated.
-	 */
-	private ValidationRegistryReader() {
-
-		_validators = new HashMap<String,Set<ValidatorMetaData>>();
-		_indexedValidators = new HashMap<String, ValidatorMetaData>();
-		_defaultEnabledValidators = new HashSet<ValidatorMetaData>();
-		try {
-
-			// Read the registry and build a map of validators. The key into
-			// the map is the IValidator instance and the value is the ValidatorMetaData
-			// which describes the IValidator.
-			readRegistry();
-
-			// Once all of the validators have been read, the caches of the
-			// validators need to be updated.
-			buildCache();
-		} catch (Exception e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-
-	/**
-	 * Traverse over the list of VMDs which have been added and create copies of it. The copies are
-	 * created to increase runtime performance.
-	 */
-	private void buildCache() {
-		for (ValidatorMetaData vmd : _indexedValidators.values()) {
-			buildProjectNatureCache(vmd);
-			buildDefaultEnabledCache(vmd);
-		}
-
-		// Now add the validators which are configured on all projects,
-		// and all projects but X.
-		addRemainder();
-
-		// this temporary list isn't needed any more. All of the excluded
-		// projects have been added to the project natures which they don't exclude.
-		_validators.remove(EXCLUDED_PROJECT);
-
-		if (Tracing.isTraceV1()) {
-			Tracing.log("ValidationRegistryReader-01: ", debug()); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * Build the cache of VMDs which is indexed by project nature ids. If the validator is
-	 * registered on all project types, the vmd's project nature filters will be null.
-	 */
-	private void buildProjectNatureCache(ValidatorMetaData vmd) {
-		// Build the cache with the identified project natures in validators'
-		// extensions.
-		ValidatorNameFilter[] projNatureIds = vmd.getProjectNatureFilters();
-		String[] facetFilters = vmd.getFacetFilters();
-		if (projNatureIds == null) {
-			if (facetFilters == null && vmd.getEnablementExpresion() == null) {
-				add(UNKNOWN_PROJECT, vmd);
-			}
-		} else {
-			boolean noneIncluded = true; // assume that the validator does not include any project
-			// natures
-			for (int i = 0; i < projNatureIds.length; i++) {
-				ValidatorNameFilter pn = projNatureIds[i];
-				if (pn.isInclude()) {
-					noneIncluded = false;
-					add(pn.getNameFilter(), vmd);
-				}
-			}
-
-			if (noneIncluded) {
-				// add it to the list of EXCLUDED projects
-				// (that is, a validator which excludes project natures but doesn't
-				// explicitly include any. This type of validator runs on any unrecognized (UNKNOWN)
-				// projects, but the rest of the cache needs to be built before this is added
-				// to the UNKNOWN list. See addExcludedRemainder().
-				add(EXCLUDED_PROJECT, vmd);
-			}
-		}
-	}
-	/**
-	 * Build the list of validators which are enabled by default.
-	 */
-	private void buildDefaultEnabledCache(ValidatorMetaData vmd) {
-		if (vmd == null)return;
-
-		if (vmd.isEnabledByDefault())_defaultEnabledValidators.add(vmd);
-	}
-
-	/**
-	 * Add vmd to the list of validators, indexed by validator class name
-	 */
-	private void add(ValidatorMetaData vmd) {
-		if (vmd == null) {
-			return;
-		}
-
-		_indexedValidators.put(vmd.getValidatorUniqueName(), vmd);
-	}
-
-	/*
-	 * Some validators can run on any type of project. In order to have a static list, add the "any
-	 * project" validators to each "project nature" validators' list. This avoids adding the "any
-	 * project" validators to the "project nature" validators at runtime, which results in
-	 * performance savings.
-	 * 
-	 * Some validators run on any type of project but X, where X is an excluded project nature.
-	 * Those validators should also be added via this method.
-	 */
-	private void addRemainder() {
-		// First, add all "can-run-on-any-project-type" to every registered project nature type in
-		// the cache.
-		addAnyRemainder();
-
-		// Then add the "can-run-on-any-project-type-but-X" to every non-X registered project nature
-		// type in the cache.
-		addExcludedRemainder();
-	}
-
-	private void addExcludedRemainder() {
-		Set<ValidatorMetaData> excludedProjVmds = _validators.get(EXCLUDED_PROJECT);
-		if (excludedProjVmds == null) {
-			// no excluded project natures
-			return;
-		}
-
-		for (ValidatorMetaData vmd : excludedProjVmds) {
-
-			// assume that, by default, if someone explicitly excludes
-			// a project nature then they don't include any project natures
-			boolean noneIncluded = true;
-			
-			// a project nature then they don't include any project natures
-			for (String projId : _validators.keySet()) {
-				if (projId.equals(UNKNOWN_PROJECT) || projId.equals(EXCLUDED_PROJECT)) {
-					// Don't add list to a project nature which is excluded or applicable to all.
-					continue;
-				}
-
-				ValidatorNameFilter filter = vmd.findProjectNature(projId);
-				if (filter != null) {
-					// Don't add list to itself (filter.isIncluded() == true) or
-					// to a list from which it's excluded (filter.isIncluded() == false)
-					if (filter.isInclude()) {
-						noneIncluded = false;
-					}
-					continue;
-				}
-
-				add(projId, vmd);
-			}
-
-			if (noneIncluded) {
-				// At this point, the "can-run-on-any-project" becomes
-				// "not-excluded-on-these-projects". That is, if the project
-				// nature id isn't in the list of _validators, then it isn't
-				// included or excluded by any validators, so all validators
-				// which can run on any project AND all validators which can
-				// run on any but certain excluded projects can run on the
-				// given IProject.
-				add(UNKNOWN_PROJECT, vmd);
-			}
-		}
-	}
-
-	private void addAnyRemainder() {
-		Set<ValidatorMetaData> anyProjVmds = _validators.get(UNKNOWN_PROJECT);
-		if (anyProjVmds == null) {
-			// no validators run on all projects
-			return;
-		}
-
-		for (String projId : _validators.keySet()) {
-			if (projId.equals(UNKNOWN_PROJECT) || projId.equals(EXCLUDED_PROJECT)) {
-				// Don't add list to itself or to a project nature which is excluded.
-				continue;
-			}
-
-			add(projId, anyProjVmds);
-		}
-	}
-
-	private void add(String projectNatureId, Set<ValidatorMetaData> vmdList) {
-		if ((vmdList == null) || (vmdList.size() == 0))return;
-
-		// whether the validator includes or excludes this
-		// project nature id, make sure that an entry is created for it in the table
-		Set<ValidatorMetaData> pnVal = createSet(projectNatureId); 
-		pnVal.addAll(vmdList);
-		_validators.put(projectNatureId, pnVal);
-	}
-
-	private void add(String projectNatureId, ValidatorMetaData vmd) {
-		if (vmd == null)return;
-
-		// whether the validator includes or excludes this
-		// project nature id, make sure that an entry is created for it in the table
-		Set<ValidatorMetaData> pnVal = createSet(projectNatureId); 
-		pnVal.add(vmd);
-		_validators.put(projectNatureId, pnVal);
-	}
-
-	/**
-	 * When a validator's class or helper class cannot be loaded, the vmd calls this method to
-	 * disable the validator. The validator will be removed from the preference page, properties
-	 * page, and enabled list of any project thereafter validated.
-	 */
-	public void disableValidator(ValidatorMetaData vmd) {
-		_indexedValidators.remove(vmd.getValidatorUniqueName());
-		_defaultEnabledValidators.remove(vmd);
-
-		// The whole "on-any-project" and "exclude-this-project-nature" would take
-		// a lot of processing time... Instead, traverse the list of proj nature ids,
-		// and search the Set of that proj nature id, and remove the vmd if it's in the
-		// Set.
-		for (String projId : _validators.keySet()) {
-			Set<ValidatorMetaData> value = _validators.get(projId);
-			if (value == null)continue;
-
-			if (value.contains(vmd)) {
-				value.remove(vmd);
-				_validators.put(projId, value);
-			}
-		}
-	}
-
-	private Set<ValidatorMetaData> createSet(String projNature) {
-		Set<ValidatorMetaData> v = _validators.get(projNature);
-		if (v == null) {
-			v = new HashSet<ValidatorMetaData>();
-		}
-		return v;
-	}
-
-	/**
-	 * Given an IConfigurationElement, if it has a project nature(s) specified, return the
-	 * ValidatorNameFilters which represent those natures. Otherwise return null.
-	 * 
-	 * A project nature can be specified in plugin.xml to indicate what types of IProjects a
-	 * validator can run on.
-	 */
-	private String[] getAggregateValidatorsNames(IConfigurationElement element) {
-		IConfigurationElement[] filters = element.getChildren(TAG_AGGREGATE_VALIDATORS);
-		if (filters.length == 0)
-			return null;
-
-		String[] names = new String[filters.length];
-		for (int i = 0; i < names.length; i++) {
-			// In order to speed up our String comparisons, load these
-			// names into Java's constants space. This way, we'll be able to
-			// use pointer comparison instead of the traditional
-			// character-by-character comparison. Since these names should
-			// never be set by anyone other than this class, and this class
-			// sets them only once, it is safe to declare these Strings
-			// constants.
-			//
-			// To load a String into the constants space, call intern() on the String.
-			//
-			String nameFilter = filters[i].getAttribute(ATT_CLASS);
-			if (nameFilter != null) {
-				nameFilter = nameFilter.intern();
-			}
-			names[i] = nameFilter;
-		}
-		return names;
-	}
-	
-	private String[] getContentTypeBindings(IConfigurationElement element){
-		IConfigurationElement[] bindings = element.getChildren(TAG_CONTENTTYPE);
-		if(bindings.length == 0)
-			return null;
-		String[] cTypeIDs = new String[bindings.length];
-		for (int i = 0; i < bindings.length; i ++){
-			
-			cTypeIDs[i] = bindings[i].getAttribute(ATT_CONTENTTYPEID);
-		}
-		
-		return cTypeIDs;
-		
-	}
-
-	/**
-	 * Given an IConfigurationElement from plugin.xml, if it has any filter tags, construct the
-	 * appropriate ValidatorFilters to represent those tags; else return null.
-	 * 
-	 * A filter can be specified in plugin.xml to filter out certain resources.
-	 */
-	private ValidatorFilter[] getFilters(IConfigurationElement element) {
-		IConfigurationElement[] filters = element.getChildren(TAG_FILTER);
-		if (filters.length == 0)
-			return null;
-
-		ValidatorFilter[] vf = new ValidatorFilter[filters.length];
-		for (int i = 0; i < filters.length; i++) {
-			vf[i] = new ValidatorFilter(IRESOURCE);
-
-			// In order to speed up our String comparisons, load these
-			// names into Java's constants space. This way, we'll be able to
-			// use pointer comparison instead of the traditional
-			// character-by-character comparison. Since these names should
-			// never be set by anyone other than this class, and this class
-			// sets them only once, it is safe to declare these Strings
-			// constants.
-			//
-			// To load a String into the constants space, call intern() on the String.
-			//
-			String nameFilter = filters[i].getAttribute(ATT_NAME_FILTER);
-			if (nameFilter != null) {
-				nameFilter = nameFilter.intern();
-			}
-			String isCaseSensitive = filters[i].getAttribute(ATT_CASE_SENSITIVE);
-			vf[i].setNameFilter(nameFilter, isCaseSensitive);
-
-			String objectClass = filters[i].getAttribute(ATT_OBJECT_CLASS);
-			if (objectClass != null) {
-				objectClass = objectClass.intern();
-			}
-			vf[i].setTypeFilter(objectClass);
-
-			String actionFilter = filters[i].getAttribute(ATT_ACTION_FILTER);
-			if (actionFilter != null) {
-				actionFilter = actionFilter.intern();
-			}
-			vf[i].setActionFilter(actionFilter);
-		}
-		return vf;
-	}
-
-	public boolean getDependentValidatorValue(IConfigurationElement element) {
-		IConfigurationElement[] depValidatorElement = element.getChildren(DEP_VALIDATOR);
-		if (depValidatorElement.length == 0)
-			return false;
-		String depValue = depValidatorElement[0].getAttribute(DEP_VAL_VALUE);
-		boolean depBoolValue = (new Boolean(depValue)).booleanValue();
-		return depBoolValue;
-	}
-
-	/**
-	 * Return the name of the marker ID associated with the IValidator.
-	 */
-	public String[] getMarkerIdsValue(IConfigurationElement element) {
-		IConfigurationElement[] markerId = element.getChildren(MARKER_ID);
-		if (markerId.length == 0)
-			return null;
-		String markerIds[] = new String[markerId.length];
-		for(int i = 0; i < markerIds.length; i++) {
-			markerIds[i] = markerId[i].getAttribute(MARKER_ID_VALUE);
-		}
-		return markerIds;
-	}
-	
-	public String[] getFacetIds(IConfigurationElement element) {
-		IConfigurationElement[] facets = element.getChildren(FACET);
-		if (facets.length == 0)
-			return null;
-		String[] facetIds = new String[facets.length];
-		for (int i = 0; i < facets.length; i++) {
-			facetIds[i] = facets[i].getAttribute(FACET_ID);
-		}
-		return facetIds;
-	}
-
-	/**
-	 * Return the name of the helper class associated with the IValidator.
-	 */
-	private String getHelperName(IConfigurationElement element) {
-		IConfigurationElement[] helpers = element.getChildren(TAG_HELPER_CLASS);
-		if (helpers.length == 0)
-			return null;
-
-		return helpers[0].getAttribute(ATT_CLASS);
-	}
-
-	static IWorkbenchContext createHelper(IConfigurationElement element, String helperClassName) {
-		IWorkbenchContext wh = null;
-		try {
-			wh = (IWorkbenchContext) element.createExecutableExtension(TAG_HELPER_CLASS);
-		} catch (Exception exc) {
-			ValidationPlugin.getPlugin().handleException(exc);
-			String result = MessageFormat.format(
-				ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_SYNTAX_NO_HELPER_THROWABLE), 
-				new Object[]{helperClassName});
-			ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, result);	
-			return null;
-		}
-		return wh;
-	}
-
-	static IValidator createValidator(IConfigurationElement element, String validatorClassName) {
-		IValidator validator = null;
-		try {
-			validator = (IValidator) element.createExecutableExtension(ATT_CLASS);
-		} catch (Exception e) {
-			String result = MessageFormat.format(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_SYNTAX_NO_VAL_THROWABLE), 
-				new Object[]{validatorClassName});
-			ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, result);	
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-
-		if (validator == null) {
-			if (Tracing.isTraceV1()) {
-				Tracing.log("ValidationRegistryReader-02: ",  //$NON-NLS-1$
-					NLS.bind(ValMessages.VbfExcSyntaxNoValNull, validatorClassName));
-			}
-			return null;
-		}
-
-		return validator;
-	}
-
-	/**
-	 * Given an IConfigurationElement from plugin.xml, return whether or not the validator is
-	 * enabled by default.
-	 * 
-	 * If no enabled attribute is specified, the default, true (i.e., enabled) is returned.
-	 */
-	private boolean getEnabledByDefault(IConfigurationElement element) {
-		IConfigurationElement[] runChildren = element.getChildren(TAG_RUN_CLASS);
-		// Don't need to check if runChildren is null or empty, because that was checked in the
-		// initializeValidator method.
-
-		String inc = runChildren[0].getAttribute(ATT_ENABLED);
-		if (inc == null) {
-			return RegistryConstants.ATT_ENABLED_DEFAULT;
-		}
-
-		return Boolean.valueOf(inc.trim().toLowerCase()).booleanValue(); // this will return true
-		// if, and only if, the
-		// attribute value is
-		// "true". For example,
-		// "yes" will be considered
-		// "false".
-	}
-
-	/**
-	 * Given an IConfigurationElement from plugin.xml, return whether or not the validator supports
-	 * incremental validation.
-	 * 
-	 * If no incremental attribute is specified, the default, true (i.e., incremental is supported)
-	 * is returned.
-	 */
-	private boolean getIncremental(IConfigurationElement element) {
-		IConfigurationElement[] runChildren = element.getChildren(TAG_RUN_CLASS);
-		// Don't need to check if runChildren is null or empty, because that was checked in the
-		// initializeValidator method.
-
-		String inc = runChildren[0].getAttribute(ATT_INCREMENTAL);
-		if (inc == null) {
-			return RegistryConstants.ATT_INCREMENTAL_DEFAULT;
-		}
-
-		return Boolean.valueOf(inc.trim().toLowerCase()).booleanValue(); // this will return true
-		// if, and only if, the
-		// attribute value is
-		// "true". For example,
-		// "yes" will be considered
-		// "false".
-	}
-
-	/**
-	 * Given an IConfigurationElement from plugin.xml, return whether or not the validator supports
-	 * full build validation.
-	 * 
-	 * If no incremental attribute is specified, the default, true (i.e., incremental is supported)
-	 * is returned.
-	 */
-	private boolean getFullBuild(IConfigurationElement element) {
-		IConfigurationElement[] runChildren = element.getChildren(TAG_RUN_CLASS);
-		// Don't need to check if runChildren is null or empty, because that was checked in the
-		// initializeValidator method.
-
-		String fb = runChildren[0].getAttribute(ATT_FULLBUILD);
-		if (fb == null) {
-			return RegistryConstants.ATT_FULLBUILD_DEFAULT;
-		}
-
-		return Boolean.valueOf(fb.trim().toLowerCase()).booleanValue(); // this will return true if,
-		// and only if, the
-		// attribute value is
-		// "true". For example,
-		// "yes" will be considered
-		// "false".
-	}
-
-	/**
-	 * Given an IConfigurationElement from plugin.xml, return whether or not the validator supports
-	 * asynchronous validation.
-	 * 
-	 * If no async attribute is specified, the default, true (i.e., the validator is thread-safe) is
-	 * returned.
-	 */
-	private boolean getAsync(IConfigurationElement element) {
-		IConfigurationElement[] runChildren = element.getChildren(TAG_RUN_CLASS);
-		// Don't need to check if runChildren is null or empty, because that was checked in the
-		// initializeValidator method.
-
-		String async = runChildren[0].getAttribute(ATT_ASYNC);
-		if (async == null) {
-			return RegistryConstants.ATT_ASYNC_DEFAULT;
-		}
-
-		return Boolean.valueOf(async.trim().toLowerCase()).booleanValue(); // this will return true
-		// if, and only if, the
-		// attribute value is
-		// "true". For example,
-		// "yes" will be
-		// considered "false".
-	}
-
-	/**
-	 * Given an IConfigurationElement from plugin.xml, return the types of validation passes, as
-	 * defined in IRuleGroup, that the validator performs.
-	 * 
-	 * If no pass attribute is specified, the default, IRuleGroup.PASS_FULL, is returned.
-	 */
-	private int getRuleGroup(IConfigurationElement element) {
-		IConfigurationElement[] runChildren = element.getChildren(TAG_RUN_CLASS);
-		// Don't need to check if runChildren is null or empty, because that was checked in the
-		// initializeValidator method.
-
-		String pass = runChildren[0].getAttribute(ATT_RULE_GROUP);
-		if (pass == null) {
-			return RegistryConstants.ATT_RULE_GROUP_DEFAULT;
-		}
-
-		final String COMMA = ","; //$NON-NLS-1$
-		StringTokenizer tokenizer = new StringTokenizer(pass, COMMA, false); // false means don't
-		// return the comma as
-		// part of the string
-		int result = 0; // no passes identified
-		while (tokenizer.hasMoreTokens()) {
-			String nextAction = tokenizer.nextToken().trim();
-			if (nextAction.equals(IRuleGroup.PASS_FAST_NAME)) {
-				result = result | IRuleGroup.PASS_FAST;
-			} else if (nextAction.equals(IRuleGroup.PASS_FULL_NAME)) {
-				result = result | IRuleGroup.PASS_FULL;
-			}
-		}
-
-		if (result == 0) {
-			// No recognized passes. Return the default.
-			return RegistryConstants.ATT_RULE_GROUP_DEFAULT;
-		}
-
-		return result;
-	}
-
-	private ValidatorMetaData.MigrationMetaData getMigrationMetaData(IConfigurationElement element) {
-		IConfigurationElement[] runChildren = element.getChildren(TAG_MIGRATE);
-		if ((runChildren == null) || (runChildren.length == 0)) {
-			return null;
-		}
-
-		// Only supposed to be one "migrate" section in a validator, so ignore the rest
-		IConfigurationElement migrate = runChildren[0];
-
-		// Now look for the "validator" elements. Zero or more can be specified.
-		IConfigurationElement[] migrateChildren = migrate.getChildren(TAG_VALIDATOR);
-		if ((migrateChildren == null) || (migrateChildren.length == 0)) {
-			return null;
-		}
-
-		ValidatorMetaData.MigrationMetaData mmd = new ValidatorMetaData.MigrationMetaData();
-		for (int i = 0; i < migrateChildren.length; i++) {
-			IConfigurationElement migrateChild = migrateChildren[i];
-			String from = migrateChild.getAttribute(ATT_FROM);
-			if (from == null) {
-				continue;
-			}
-
-			String to = migrateChild.getAttribute(ATT_TO);
-			if (to == null) {
-				continue;
-			}
-			mmd.addId(from, to);
-		}
-		return mmd;
-	}
-
-	/**
-	 * Given an IConfigurationElement, if it has a project nature(s) specified, return the
-	 * ValidatorNameFilters which represent those natures. Otherwise return null.
-	 * 
-	 * A project nature can be specified in plugin.xml to indicate what types of IProjects a
-	 * validator can run on.
-	 */
-	private ValidatorNameFilter[] getProjectNatureFilters(IConfigurationElement element) {
-		IConfigurationElement[] filters = element.getChildren(TAG_PROJECT_NATURE);
-		if (filters.length == 0) {
-			return null;
-		}
-
-		ValidatorNameFilter[] vf = new ValidatorNameFilter[filters.length];
-		for (int i = 0; i < filters.length; i++) {
-			vf[i] = new ValidatorNameFilter();
-			// In order to speed up our String comparisons, load these
-			// names into Java's constants space. This way, we'll be able to
-			// use pointer comparison instead of the traditional
-			// character-by-character comparison. Since these names should
-			// never be set by anyone other than this class, and this class
-			// sets them only once, it is safe to declare these Strings
-			// constants.
-			//
-			// To load a String into the constants space, call intern() on the String.
-			//
-			String nameFilter = filters[i].getAttribute(ATT_ID);
-			if (nameFilter != null) {
-				nameFilter = nameFilter.intern();
-			}
-			vf[i].setNameFilter(nameFilter);
-
-			String include = filters[i].getAttribute(ATT_INCLUDE);
-			vf[i].setInclude(include);
-		}
-		return vf;
-	}
-
-	/**
-	 * Returns the singleton ValidationRegistryReader.
-	 */
-	public static ValidationRegistryReader getReader() {
-		return _inst;
-	}
-
-	public static boolean isActivated() {
-		// Whether the registry has been read or not is kept in the EventManager
-		// class instead of this class in order to work around a shutdown problem.
-		// See the comment in the isActive() method of the EventManager class
-		// for details.
-		return EventManager.getManager().isActive();
-	}
-
-	/**
-	 * Returns the Validator extension point
-	 */
-	private IExtensionPoint getValidatorExtensionPoint() {
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IExtensionPoint extensionPoint = registry.getExtensionPoint(ValidationPlugin.PLUGIN_ID, VALIDATOR_EXT_PT_ID);
-		if (extensionPoint == null) {
-			// If this happens it means that someone removed the "validator" extension point
-			// declaration from our plugin.xml file.
-			if (Tracing.isTraceV1()) {
-				String result = MessageFormat.format(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_MISSING_VALIDATOR_EP),
-						new Object[]{ValidationPlugin.PLUGIN_ID + "." + VALIDATOR_EXT_PT_ID}); //$NON-NLS-1$
-				Tracing.log("ValidationRegistryReader-03: ", result);		 //$NON-NLS-1$
-			}
-		}
-		return extensionPoint;
-	}
-
-	/**
-	 * It's okay to return a handle to the ValidatorMetaData because the vmd can't be modified by
-	 * any code not in this package.
-	 */
-	public ValidatorMetaData getValidatorMetaData(IValidator validator) {
-		// retrieval will be in log(n) time
-		if (validator == null) {
-				String message = ResourceHandler.getExternalizedMessage(
-					ResourceConstants.VBF_EXC_ORPHAN_IVALIDATOR, new String[]{"null"}); //$NON-NLS-1$
-				ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, message);
-			return null;
-		}
-
-		String validatorClassName = validator.getClass().getName();
-		ValidatorMetaData vmd = getValidatorMetaData(validatorClassName);
-		if (vmd != null) {
-			return vmd;
-		}
-
-		// If we got here, then vmd is neither a root nor an aggregate validator,
-		// yet the IValidator exists. Internal error.
-		String message = ResourceHandler.getExternalizedMessage(
-				ResourceConstants.VBF_EXC_ORPHAN_IVALIDATOR, new String[]{validatorClassName});
-		ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, message);
-		return null;
-	}
-
-	public Set<ValidatorMetaData> getValidatorMetaData(IWorkspaceRoot root) {
-		// Every validator on the Preferences page must be returned
-		Set<ValidatorMetaData> copy = new HashSet<ValidatorMetaData>();
-		clone(_indexedValidators.values(), copy);
-		return copy;
-	}
-
-	/**
-	 * Return a collection of Validators configured on a certain type of IProject (e.g. EJB Project
-	 * vs. Web Project).
-	 * 
-	 * This is a long-running process. If you can, cache the result.
-	 */
-	public Set<ValidatorMetaData> getValidatorMetaData(IProject project) {
-		Set<ValidatorMetaData> copy = new HashSet<ValidatorMetaData>();
-		getValidatorMetaData(project, copy);
-		return copy;
-	}
-
-	/**
-	 * Copy the set of configured validator metadata into the Set.
-	 */
-	public void getValidatorMetaData(IProject project, Set<ValidatorMetaData> vmds) {
-		if (vmds == null)return;
-		vmds.clear();
-		int executionMap = 0x0;
-		try {
-			if (Tracing.isTraceV1()) {
-				Tracing.log("ValidationRegistryReader-04: IProject is " + String.valueOf(project)); //$NON-NLS-1$
-			}
-			if (project == null) {
-				executionMap |= 0x1;
-				// vmds is already clear
-				return;
-			}
-			String[] projectNatures = null;
-			try {
-				projectNatures = project.getDescription().getNatureIds();
-			} catch (CoreException e) {
-				executionMap |= 0x2;
-				// vmds is already clear
-				ValidationPlugin.getPlugin().handleException(e);
-				return;
-			}
-			// If there are no project natures on a particular project,
-			// or if this project nature has no validators configured
-			// on it, return the validators which are configured on all
-			// projects.
-			if ((projectNatures == null) || (projectNatures.length == 0)) {
-				executionMap |= 0x4;
-				
-				// Also include the validators which are enabled through enablement
-				// expression for this project.
-				// Note that the API isFacetEnabled(vmd, project) works properly 
-				// only when the plugin containing the property tester is activated.
-				// forcePluginActivation="true" may be needed in the declaration of 
-				// the enablement in the validator extension point.
-		        // <enablement>
-		        //  <test forcePluginActivation="true" property="foo.testProperty"/>
-		        // </enablement> 
-				
-				Set<ValidatorMetaData> validatorsWithEnablementExpression = new HashSet<ValidatorMetaData>();
-				for (ValidatorMetaData vmd : getAllValidators()) {
-					if (isFacetEnabled(vmd, project)) {
-						validatorsWithEnablementExpression.add(vmd);
-					}
-				}
-				if(validatorsWithEnablementExpression.size() > 0 ){
-					validatorsWithEnablementExpression.addAll( getValidatorMetaDataUnknownProject());
-					clone(validatorsWithEnablementExpression, vmds);
-				}
-				else
-					clone(getValidatorMetaDataUnknownProject(), vmds);
-
-
-			} else {
-				executionMap |= 0x8;
-				if (Tracing.isTraceV1()) {
-					Tracing.log("ValidationRegistryReader-05: ", projectNatures.toString()); //$NON-NLS-1$
-				}
-				calculateVmdsForNatureAndFacets(vmds, projectNatures,project);
-				// Now filter out the validators which must not run on this project
-				removeExcludedProjects(project, vmds);
-				if (vmds.size() == 0) {
-					executionMap |= 0x20;
-					clone(getValidatorMetaDataUnknownProject(), vmds);
-				}
-			}
-		} finally {
-			if (Tracing.isTraceV1()) {
-				StringBuffer buffer = new StringBuffer();
-				for (ValidatorMetaData vmd : vmds) {
-					buffer.append(vmd.getValidatorUniqueName());
-					buffer.append("\n"); //$NON-NLS-1$
-				}
-				Tracing.log("ValidationRegistryReader-06: ", buffer.toString()); //$NON-NLS-1$
-			}
-		}
-	}
-
-	/**
-	 * @param project
-	 * @param vmds
-	 * @param projectNatures
-	 */
-	private void calculateVmdsForNatureAndFacets(Set<ValidatorMetaData> vmds, String[] projectNatures, IProject project) {
-		Set<ValidatorMetaData> projVmds;
-		String[] projectFacetIds = getProjectFacetIds(project);
-		for (ValidatorMetaData vmd : getAllValidators()) {
-			if (containsProjectFacet(vmd, projectFacetIds) || isFacetEnabled(vmd, project)) {
-				vmds.add(vmd);
-			}
-		}
-		for (String projectNatureId : projectNatures) {
-			projVmds = _validators.get(projectNatureId);
-			if (projVmds == null)continue;
-
-			for (ValidatorMetaData vmd : projVmds) {
-				if (!vmds.contains(vmd) && (vmd.getFacetFilters() == null || vmd.getFacetFilters().length == 0)) {
-					if (vmd.getEnablementExpresion() == null)vmds.add(vmd);
-					else if (isFacetEnabled(vmd, project))vmds.add(vmd);
-				}
-			}
-		}
-	}
-
-	private boolean containsProjectFacet(ValidatorMetaData vmd, String[] projectFacetIds) {
-		String[] validatorFacets = vmd.getFacetFilters();
-		if (validatorFacets != null && validatorFacets.length > 0) {
-			if (projectFacetIds != null && projectFacetIds.length > 0) {
-				if (Arrays.asList(projectFacetIds).containsAll(Arrays.asList(validatorFacets)))
-					return true;
-			}
-		}
-		return false;
-	}
-	
-	private boolean isFacetEnabled(ValidatorMetaData vmd, IProject project) {
-		try {
-			Expression expression = vmd.getEnablementExpresion();
-			if (expression != null) {
-				EvaluationContext context = new EvaluationContext(null, project);
-				context.setAllowPluginActivation(true);
-				EvaluationResult result = expression.evaluate(context);
-				return result == EvaluationResult.TRUE;
-			}
-		} catch (CoreException ce) {
-		}
-		return false;
-	}
-
-	private String[] getProjectFacetIds(IProject project) {
-		try {
-			IFacetedProject fProject = ProjectFacetsManager.create(project);
-			if (fProject != null) {
-				Object[] projectFacets = fProject.getProjectFacets().toArray();
-				String[] projectFacetIds = new String[projectFacets.length];
-				for (int i = 0; i < projectFacets.length; i++) {
-					IProjectFacet projectFacet = ((IProjectFacetVersion) projectFacets[i]).getProjectFacet();
-					projectFacetIds[i] = projectFacet.getId();
-				}
-				return projectFacetIds;
-			}
-		} catch (CoreException ce) {
-		}
-
-		return null;
-	}
-
-	/*
-	 * If one project nature on the project includes a particular validator, but another project
-	 * nature excludes that validator, then the validator needs to be removed from the vmd set.
-	 * 
-	 * For example, if AValidator can run on any java project but not on a J2EE project, which is an
-	 * instance of a java project, then the AValidator is included by the java nature and excluded
-	 * by the J2EE nature. The AValidator would have to be removed from the set.
-	 */
-	private void removeExcludedProjects(IProject project, Set<ValidatorMetaData> vmds) {
-		if (Tracing.isTraceV1()) {
-			StringBuffer buffer = new StringBuffer("\nValidationRegistryReader-12: before:\n"); //$NON-NLS-1$
-			for (ValidatorMetaData vmd : vmds) {
-				buffer.append(vmd.getValidatorUniqueName());
-				buffer.append("\n"); //$NON-NLS-1$
-			}
-			Tracing.log(buffer);
-		}
-
-		String[] projectNatures = null;
-		try {
-			projectNatures = project.getDescription().getNatureIds();
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return;
-		}
-		if ((projectNatures == null) || (projectNatures.length == 0)) {
-			// nothing needs to be removed from the list
-			return;
-		}
-		for (int i = 0; i < projectNatures.length; i++) {
-			String nature = projectNatures[i];
-			Iterator<ValidatorMetaData> iterator = vmds.iterator();
-			while (iterator.hasNext()) {
-				ValidatorMetaData vmd = iterator.next();
-				ValidatorNameFilter[] natureFilters = vmd.getProjectNatureFilters();
-				if (natureFilters == null) {
-					// Can run on any project
-					continue;
-				}
-
-				for (ValidatorNameFilter pn : natureFilters) {
-					if (nature.equals(pn.getNameFilter()) && !pn.isInclude()) {
-						iterator.remove();
-						break;
-					}
-				}
-			}
-		}
-
-		if (Tracing.isTraceV1()) {
-			StringBuffer buffer = new StringBuffer("\nValidationRegistryReader-13: after:\n"); //$NON-NLS-1$
-			for (ValidatorMetaData vmd : vmds) {
-				buffer.append(vmd.getValidatorUniqueName());
-				buffer.append("\n"); //$NON-NLS-1$
-			}
-			Tracing.log(buffer);
-		}
-	}
-
-	@SuppressWarnings("unchecked")
-	private Collection clone(Collection input, Collection copy) {
-		if (input == null || copy == null)return null;
-		copy.clear();
-		copy.addAll(input);
-		return copy;
-	}
-
-	public String debug() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append("Project nature => validators configured"); //$NON-NLS-1$
-		buffer.append("\n"); //$NON-NLS-1$
-		for (String projId : _validators.keySet()) {
-			buffer.append("projId: "); //$NON-NLS-1$
-			buffer.append(projId);
-			buffer.append("\n"); //$NON-NLS-1$
-			Set<ValidatorMetaData> validators = _validators.get(projId);
-			for (ValidatorMetaData vmd : validators) {
-				buffer.append("\t"); //$NON-NLS-1$
-				buffer.append(vmd.getValidatorUniqueName());
-				buffer.append("\n"); //$NON-NLS-1$
-			}
-		}
-		buffer.append("\n"); //$NON-NLS-1$
-
-		buffer.append("Enable/disable validator by default"); //$NON-NLS-1$
-		buffer.append("\n"); //$NON-NLS-1$
-		for (ValidatorMetaData vmd : _indexedValidators.values()) {
-			buffer.append(vmd.getValidatorUniqueName());
-			buffer.append(" enabled? "); //$NON-NLS-1$
-			buffer.append(vmd.isEnabledByDefault());
-			buffer.append("\n"); //$NON-NLS-1$
-		}
-
-		return buffer.toString();
-	}
-
-	public boolean isConfiguredOnProject(ValidatorMetaData vmd, IProject project) {
-		Set<ValidatorMetaData> vmds = null;
-		synchronized(projectValidationMetaData){
-			vmds = projectValidationMetaData.get(project);
-		}
-		if (vmds != null) {
-			return vmds.contains(vmd);
-		} else {
-			Set<ValidatorMetaData> prjVmds = getValidatorMetaData(project);
-			if (prjVmds == null || prjVmds.size() == 0)return false;
-			synchronized(projectValidationMetaData){
-				projectValidationMetaData.put(project, prjVmds);
-			}
-			return prjVmds.contains(vmd);
-		}
-	}
-	
-	public void clearCachedMaps(){
-		synchronized(projectValidationMetaData){
-			projectValidationMetaData.clear();
-		}
-	}
-
-	/**
-	 * Return a set of ValidatorMetaData which are configured on all projects or which run on any
-	 * projects except certain project types.
-	 * 
-	 * Unlike other get methods, because this method is private it doesn't return a clone.
-	 * 
-	 * @see addExcludedRemainder()
-	 */
-	private Set<ValidatorMetaData> getValidatorMetaDataUnknownProject() {
-		Set<ValidatorMetaData> projVmds = _validators.get(UNKNOWN_PROJECT);
-		if (projVmds == null) {
-			projVmds = new HashSet<ValidatorMetaData>();
-		}
-		return projVmds;
-	}
-
-	/**
-	 * Return a set of ValidatorMetaData which are enabled by default.
-	 */
-	public Set<ValidatorMetaData> getValidatorMetaDataEnabledByDefault() {
-		Set<ValidatorMetaData> copy = new HashSet<ValidatorMetaData>();
-		clone(_defaultEnabledValidators, copy);
-		return copy;
-	}
-
-	public ValidatorMetaData[] getValidatorMetaDataArrayEnabledByDefault() {
-		ValidatorMetaData[] result = new ValidatorMetaData[_defaultEnabledValidators.size()];
-		_defaultEnabledValidators.toArray(result);
-		return result;
-	}
-
-	/**
-	 * This method should be called ONLY by the validation framework, UI, or TVT plugin. In general,
-	 * only the validation framework and the validation TVT should handle ValidatorMetaData objects.
-	 * 
-	 * Given a string which identifies a fully-qualified class name of a validator, return the
-	 * ValidatorMetaData that uses a validator of that name, if it exists.
-	 * 
-	 * It's okay to return a handle to the ValidatorMetaData because the vmd can't be modified by
-	 * any code not in this package.
-	 */
-	public ValidatorMetaData getValidatorMetaData(String validatorClassName) {
-		if (validatorClassName == null)return null;
-
-		ValidatorMetaData vmd2 = _indexedValidators.get(validatorClassName);
-		if (vmd2 != null)return vmd2;
-
-		// Check for an aggregate validator
-		for (ValidatorMetaData vmd : _indexedValidators.values()) {
-			if (vmd == null)continue;
-
-			if (vmd.getValidatorUniqueName().equals(validatorClassName))return vmd;
-
-			String[] aggregateNames = vmd.getAggregatedValidatorNames();
-			if (aggregateNames != null) {
-				for (String aggregateName : aggregateNames) {
-					if (validatorClassName.equals(aggregateName))return vmd;
-				}
-			}
-
-			// Current name of validator doesn't match; has this validator been
-			// migrated from another package?
-			ValidatorMetaData.MigrationMetaData mmd = vmd.getMigrationMetaData();
-			if (mmd == null) {
-				// Validator class name hasn't been migrated
-				continue;
-			}
-
-			Set<String[]> idList = mmd.getIds();
-			if (idList == null) {
-				// Invalid <migrate> element.
-				continue;
-			}
-
-			for (String[] ids : idList) {
-				if (ids.length != 2) {
-					// log
-					continue;
-				}
-
-				String from = ids[0];
-				if (from == null) {
-					// log
-					continue;
-				}
-
-				if (from.equals(validatorClassName)) {
-					return vmd;
-				}
-			}
-		}
-
-		// If we got to this point, no validator using that class name is loaded.
-		return null;
-	}
-
-	/**
-	 * Return true if the named validator is installed, otherwise false.
-	 */
-	public boolean isExistingValidator(String validatorClassName) {
-		return (getValidatorMetaData(validatorClassName) != null);
-	}
-
-	/**
-	 * Initialize the validator with the static metadata (runtime metadata is initialized in the
-	 * ValidationOperation class).
-	 */
-	private ValidatorMetaData initializeValidator(IConfigurationElement element, String validatorName, String pluginId) {
-		IConfigurationElement[] runChildren = element.getChildren(TAG_RUN_CLASS);
-		if ((runChildren == null) || (runChildren.length < 1)) {
-			// How can an IValidatorImpl be created when there no class name to instantiate?
-			if (Tracing.isLogging()) {
-				Tracing.log("ValidationRegistryReader-07: ", NLS.bind(ValMessages.VbfExcSyntaxNoValRun, validatorName));				 //$NON-NLS-1$
-			}
-			return null;
-		}
-
-		//WTP Bugzilla defect: 82338
-		//Using the Unique Identifier give the flexibility of the same validator class used by other validator extensions without writing a new validation class
-		//Reverting the fix back as the class name defined in the ext is unique to this validator and has to be used for the unique id in the validation metadata
-		String validatorImplName = runChildren[0].getAttribute(ATT_CLASS);
-		
-		if (validatorImplName == null) {
-			// Same as before; how can we instantiate when...
-			if (Tracing.isLogging()) {
-				Tracing.log("ValidationRegistryReader-08: ", NLS.bind(ValMessages.VbfExcSyntaxNoValClass, validatorName)); //$NON-NLS-1$
-			}
-			return null;
-		}
-
-		String helperImplName = getHelperName(element);
-		if (helperImplName == null) {
-			// Same as before; how can we instantiate when...
-			if (Tracing.isLogging()) {
-				Tracing.log("ValidationRegistryReader-09: ", NLS.bind(ValMessages.VbfExcSyntaxNoValRun, validatorImplName)); //$NON-NLS-1$
-			}
-			return null;
-		}
-
-		// In order to speed up our String comparisons, load these
-		// names into Java's constants space. This way, we'll be able to
-		// use pointer comparison instead of the traditional
-		// character-by-character comparison. Since these names should
-		// never be set by anyone other than this class, and this class
-		// sets them only once, it is safe to declare these Strings
-		// constants.
-		//
-		// To load a String into the constants space, call intern() on the String.
-		//
-		
-		boolean async = getAsync(element);
-		String[] markerIds = initializeValidatorCustomMarkers(element, pluginId);
-		ValidatorMetaData vmd = new ValidatorMetaData(async, getAggregateValidatorsNames(element), getEnabledByDefault(element),
-				getIncremental(element), getFullBuild(element), element, helperImplName, getMigrationMetaData(element),
-				pluginId, getRuleGroup(element), runChildren[0], validatorName.intern(), validatorImplName.intern(),
-				getContentTypeBindings(element), getDependentValidatorValue(element), getEnablementElement(element),
-				getFacetIds(element), getFilters(element), getProjectNatureFilters(element), markerIds);
-		
-		
-		if (Tracing.isTraceV1()) {
-			Tracing.log("ValidationRegistryReader-10: validator loaded: " + validatorImplName); //$NON-NLS-1$
-		}
-
-		return vmd;
-	}
-
-	/**
-	 * @param element
-	 * @param pluginId
-	 * @param vmd
-	 */
-	private String[] initializeValidatorCustomMarkers(IConfigurationElement element, String pluginId) {
-		String[] qualifiedMarkerIds = null;
-		String[] customMarkerIds = getMarkerIdsValue(element);
-		if (customMarkerIds != null && customMarkerIds.length > 0) {
-			qualifiedMarkerIds = new String[customMarkerIds.length];
-			for (int i = 0; i < customMarkerIds.length; i++) {
-				String markerid = customMarkerIds[i];
-				if (markerid.lastIndexOf(".") != -1) { //$NON-NLS-1$
-					String pluginID = markerid.substring(0, markerid.lastIndexOf(".")); //$NON-NLS-1$
-					Bundle bundle = Platform.getBundle(pluginID);
-					if (bundle == null)
-						qualifiedMarkerIds[i] = pluginId + "." + customMarkerIds[i]; //$NON-NLS-1$
-					else
-						qualifiedMarkerIds[i] = customMarkerIds[i];
-				} else
-					qualifiedMarkerIds[i] = pluginId + "." + customMarkerIds[i]; //$NON-NLS-1$
-			}
-		}
-		return qualifiedMarkerIds;
-	}
-
-	private Expression getEnablementElement(IConfigurationElement element) {
-		IConfigurationElement[] enablements = element.getChildren(ExpressionTagNames.ENABLEMENT);
-		if (enablements.length == 0)
-			return null;
-		try {
-			return ExpressionConverter.getDefault().perform(enablements[0]);
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		return null;
-	}
-
-	/**
-	 * This method should be called ONLY BY THE VALIDATION FRAMEWORK! The value from this method is
-	 * used to populate the validation preference page.
-	 */
-	public Collection<ValidatorMetaData> getAllValidators() {
-		Set<ValidatorMetaData> validators = new HashSet<ValidatorMetaData>(50);
-		clone(_indexedValidators.values(), validators);
-		return validators;
-	}
-
-	public int numberOfValidators() {
-		return _indexedValidators.size();
-	}
-
-	/**
-	 * Reads one extension by looping through its configuration elements.
-	 */
-	private void readExtension(IExtension extension) {
-		IConfigurationElement[] elements = extension.getConfigurationElements();
-
-		for (int i = 0; i < elements.length; i++) {
-			IConfigurationElement element = elements[i];
-
-			String label = extension.getLabel();
-			if (label == null || label.equals("")) { //$NON-NLS-1$
-				if (Tracing.isTraceV1()) {
-					String[] msgParm = {extension.getUniqueIdentifier()};
-					String result = MessageFormat.format(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_VALIDATORNAME_IS_NULL),
-							(Object[])msgParm);
-					Tracing.log("ValidationRegistryReader-11: ", result); //$NON-NLS-1$
-				}
-			} else {
-				// If getLabel() returns an empty string, this is an illegal validator.
-				// The PropertyPage, and other status messages, need to have a displayable name for
-				// the validator.
-				String pluginId = extension.getContributor().getName();
-				if (Tracing.isEnabled(extension.getUniqueIdentifier())){
-					ValidatorMetaData vmd = initializeValidator(element, label, pluginId);
-	
-					if (vmd != null) {
-						// Add this validator to the list of validators; if vmd is null, the validator
-						// couldn't be created.
-						add(vmd);
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * Reads the registry to find the Validators which have been implemented.
-	 */
-	private void readRegistry() {
-		_validators.clear();
-
-		// Get the extensions that have been registered.
-		IExtensionPoint validatorEP = getValidatorExtensionPoint();
-		if (validatorEP == null) {
-			return;
-		}
-		IExtension[] extensions = validatorEP.getExtensions();
-
-		// find all runtime implementations
-		for (int i = 0; i < extensions.length; i++) {
-			readExtension(extensions[i]);
-		}
-    
-    // Force the delegate validators registry to be read early to avoid
-    // the non-synchronized singleton issue which occurs when two delegating
-    // validators race to load the registry.
-    
-    ValidatorDelegatesRegistry.getInstance();
-	}
-
-	public IValidator getValidator(String validatorClassName) throws InstantiationException {
-		ValidatorMetaData vmd = _indexedValidators.get(validatorClassName);
-		if(vmd != null)
-			return vmd.getValidator();
-		return null;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationSelectionHandlerRegistryReader.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationSelectionHandlerRegistryReader.java
deleted file mode 100644
index cf3ce9a..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidationSelectionHandlerRegistryReader.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-public class ValidationSelectionHandlerRegistryReader {
-
-	public static final String VALIDATION_SELECTION_HANDLER = "validationSelectionHandler"; //$NON-NLS-1$
-	static final String ATT_ID = "id"; //$NON-NLS-1$ 
-	
-	/** handlerClass - */
-	static final String ATT_HANDLER_CLASS = "handlerClass"; //$NON-NLS-1$
-	
-	static final String ATT_SELECTION_TYPE = "selectionType"; //$NON-NLS-1$
-	private static ValidationSelectionHandlerRegistryReader INSTANCE;
-	private List<IValidationSelectionHandler> _validationSelectionHandlers;
-	
-	public ValidationSelectionHandlerRegistryReader() {
-	}
-	
-	public static ValidationSelectionHandlerRegistryReader getInstance() {
-		if (INSTANCE == null) {
-			INSTANCE = new ValidationSelectionHandlerRegistryReader();
-			INSTANCE.readRegistry();
-		}
-		return INSTANCE;
-	}
-
-	/**
-	 * Read the extension point and parse it.
-	 */
-	public void readRegistry() {
-		IExtensionPoint point = Platform.getExtensionRegistry()
-			.getExtensionPoint(ValidationPlugin.PLUGIN_ID, VALIDATION_SELECTION_HANDLER);
-		if (point == null)return;
-		IConfigurationElement[] elements = point.getConfigurationElements();
-		for (int i = 0; i < elements.length; i++) {
-			internalReadElement(elements[i]);
-		}
-	}
-	
-	private void internalReadElement(IConfigurationElement element) {
-		boolean recognized = this.readElement(element);
-		if (!recognized) {
-			logError(element, "Error processing extension: " + element); //$NON-NLS-1$
-		}
-	}
-
-	/*
-	 * Logs the error in the desktop log using the provided text and the information in the configuration element.
-	 */
-	protected void logError(IConfigurationElement element, String text) {
-		IExtension extension = element.getDeclaringExtension();
-		StringBuffer buf = new StringBuffer();
-		buf.append("Plugin " + extension.getContributor().getName() + ", extension " + extension.getExtensionPointUniqueIdentifier()); //$NON-NLS-1$ //$NON-NLS-2$
-		buf.append("\n" + text); //$NON-NLS-1$
-		ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, buf.toString());
-	}
-	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jem.util.RegistryReader#readElement(org.eclipse.core.runtime.IConfigurationElement)
-	 */
-	public boolean readElement(IConfigurationElement element) {
-		if (!element.getName().equals(VALIDATION_SELECTION_HANDLER))
-			return false;
-		
-//		String handlerClass = element.getAttribute(ATT_HANDLER_CLASS);
-		String selectionType = element.getAttribute(ATT_SELECTION_TYPE); 
-		
-		IValidationSelectionHandler handler = null;
-		try {
-			handler = (IValidationSelectionHandler) element.createExecutableExtension(ATT_HANDLER_CLASS);
-			handler.setValidationTypeString(selectionType);
-			getValidationSelectionHandlers().add(handler);
-			return true;
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-	   return false;
-	}
-	
-	private List<IValidationSelectionHandler> getValidationSelectionHandlers() {
-		if (_validationSelectionHandlers == null)
-			_validationSelectionHandlers = new ArrayList<IValidationSelectionHandler>();
-		return _validationSelectionHandlers;
-	}
-	
-	public Object getExtendedType(Object selection) {
-		Object result = null;
-		for (IValidationSelectionHandler handler : getValidationSelectionHandlers()) {
-			result = handler.getBaseValidationType(selection);
-			if (result != null)break;
-		}
-		return result;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorActionFilter.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorActionFilter.java
deleted file mode 100644
index ee241be..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorActionFilter.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IResourceDelta;
-
-/**
- * This class stores the value of the "action" attribute in the validator's plugin.xml contribution.
- */
-public class ValidatorActionFilter {
-	public static final String ADD = "add"; //$NON-NLS-1$ // if the resource delta is an addition; this value is used in plugin.xml
-	public static final String CHANGE = "change"; //$NON-NLS-1$ // if the resource delta is a change; this value is used in plugin.xml
-	public static final String DELETE = "delete"; //$NON-NLS-1$ // if the resource delta is a removal; this value is used in plugin.xml
-	public static final int ALL_ACTIONS = (IResourceDelta.ADDED | IResourceDelta.CHANGED | IResourceDelta.REMOVED);
-
-	private int _actionType = 0; // Default to 0, so that if an invalid filter is specified, then no
-
-	// matter what the IResourceDelta is, the delta & _actionType will
-	// always == 0. (i.e., the resource will never be filtered in)
-
-	public ValidatorActionFilter() {
-		super();
-	}
-
-	/**
-	 * Return the hexadecimal number which represents the type(s) of actions which this filter
-	 * allows in.
-	 */
-	public int getActionType() {
-		// Since IResourceDelta's constants are hexadecimal numbers,
-		// it's nicer to return a corresponding hexadecimal, for bitwise OR,
-		// than it is to have three boolean methods on this class, i.e.,
-		// isAdd, isChange, isDelete.
-		return _actionType;
-	}
-
-	/**
-	 * <p>
-	 * Parse the incoming string, which is extracted from the plugin.xml file, to determine the
-	 * value of the actionType.
-	 * <p>
-	 * The string can contain one, two, or three constants. If there is more than one constant, the
-	 * constants should be separated by a comma.
-	 * <p>
-	 * These are the three constants: add, change, delete. The order that the constants are
-	 * specified in does not matter. The constants are case-sensitive; i.e., ADD is not considered
-	 * the same as add.
-	 * <p>
-	 * If the action attribute is not defined, the default behaviour is to filter in all types of
-	 * actions: add, change, delete. (i.e., the same behaviour can be achieved by specifying "add,
-	 * change, delete" as the action attribute's value.
-	 * <p>
-	 * If the action attribute is defined, and none of the constants are defined, then the filter is
-	 * invalid, and will be ignored by the Validation Framework. (If none of the actions should be
-	 * filtered in, then the filter itself should not exist.)
-	 * <p>
-	 * If the action attribute is defined, and one of the constants is defined, then the form of the
-	 * action should be like this: <br>
-	 * &nbsp;&nbsp;&nbsp;&lt;filter ... action="add"/>
-	 * <p>
-	 * If the action attribute is defined, and more than one constant is defined, then the form of
-	 * the action should be like this: <br>
-	 * &nbsp;&nbsp;&nbsp;&lt;filter ... action="add, delete"/>
-	 * <p>
-	 * If the action attribute is defined, and an unknown constant is defined, then the unknown
-	 * constant will be ignored. For example, <br>
-	 * &nbsp;&nbsp;&nbsp;&lt;filter ... action="ADD, delete"/> <br>
-	 * is the same as specifying <br>
-	 * &nbsp;&nbsp;&nbsp;&lt;filter ... action="delete"/> <br>
-	 * and if all of the constants are unknown, the filter is invalid, and will be ignored by the
-	 * Validation Framework. e.g., <br>
-	 * &nbsp;&nbsp;&nbsp;&lt;filter ... action="ADD, DELETE"/> <br>
-	 * is the same as not specifying a filter.
-	 * <p>
-	 * If the action attribute is defined, and a constant is defined more than once, the extra
-	 * constant is ignored. For example, <br>
-	 * &nbsp;&nbsp;&nbsp;&lt;filter ... action="add, change, add"/> <br>
-	 * is the same as specifying <br>
-	 * &nbsp;&nbsp;&nbsp;&lt;filter ... action="add, change"/>
-	 */
-	public void setActionTypes(String actions) {
-		if (actions == null) {
-			// user has not defined the "action" element, so default to everything
-			_actionType = ALL_ACTIONS;
-			return;
-		}
-
-		final String COMMA = ","; //$NON-NLS-1$
-		StringTokenizer tokenizer = new StringTokenizer(actions, COMMA, false); // false means don't
-		// return the comma
-		// as part of the
-		// string
-		int isAdd = 0;
-		int isChange = 0;
-		int isDelete = 0;
-		while (tokenizer.hasMoreTokens()) {
-			String nextAction = tokenizer.nextToken().trim();
-			if (nextAction.equals(ADD)) {
-				isAdd = IResourceDelta.ADDED;
-			} else if (nextAction.equals(CHANGE)) {
-				isChange = IResourceDelta.CHANGED;
-			} else if (nextAction.equals(DELETE)) {
-				isDelete = IResourceDelta.REMOVED;
-			}
-		}
-		_actionType = isAdd | isChange | isDelete;
-	}
-
-	public String toString() {
-		final String ON = "on"; //$NON-NLS-1$
-		final String OFF = "off"; //$NON-NLS-1$
-		StringBuffer buffer = new StringBuffer();
-		buffer.append("     ActionFilter:"); //$NON-NLS-1$
-		buffer.append("          add: " + (((getActionType() & IResourceDelta.ADDED) != 0) ? ON : OFF)); //$NON-NLS-1$
-		buffer.append("          change: " + (((getActionType() & IResourceDelta.CHANGED) != 0) ? ON : OFF)); //$NON-NLS-1$
-		buffer.append("          delete: " + (((getActionType() & IResourceDelta.REMOVED) != 0) ? ON : OFF)); //$NON-NLS-1$
-		return buffer.toString();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorFilter.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorFilter.java
deleted file mode 100644
index d51a217..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorFilter.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IResource;
-
-/**
- * This class represents the plugin.xml tags, for a validator, for both name filters and type
- * filters. i.e., if an object has name filter and type filter specified, the filter filters out
- * objects which are not both of that type and named like the filter.
- */
-public class ValidatorFilter {
-	private ValidatorNameFilter _nameFilter;
-	private ValidatorTypeFilter _typeFilter;
-	private ValidatorActionFilter _actionFilter;
-
-	ValidatorFilter() {
-		super();
-		_nameFilter = new ValidatorNameFilter();
-		_typeFilter = new ValidatorTypeFilter();
-		_actionFilter = new ValidatorActionFilter();
-	}
-
-	ValidatorFilter(String mustImplementClass) {
-		this();
-		_nameFilter = new ValidatorNameFilter();
-		_typeFilter.setMustImplementClass(mustImplementClass);
-		_actionFilter = new ValidatorActionFilter();
-	}
-
-	public boolean isApplicableAction(int resourceDelta) {
-		return ((resourceDelta & _actionFilter.getActionType()) != 0);
-	}
-
-	/**
-	 * Returns true if the given resource's name matches the name filter.
-	 * 
-	 * e.g. if the name filter is "*.java", and this resource is "readme.txt", this method will
-	 * return false. If the resource is named "readme.java", this method will return true.
-	 */
-	boolean isApplicableName(IResource resource) {
-		return _nameFilter.isApplicableName(resource);
-	}
-
-	/**
-	 * Returns true if the given resource's type matches the type filter.
-	 * 
-	 * e.g. if the type filter is "IFile", and this resource is "IProject", this method will return
-	 * false. If the resource is an IFile, this method will return true.
-	 */
-	boolean isApplicableType(IResource resource) {
-		return _typeFilter.isApplicableType(resource);
-	}
-
-	public void setActionFilter(String actions) {
-		_actionFilter.setActionTypes(actions);
-	}
-
-	/**
-	 * Sets the name filter.
-	 */
-	void setNameFilter(String filter, String isCaseSensitiveString) {
-		_nameFilter.setNameFilter(filter);
-		if(filter != null)
-			  _nameFilter.setNameFilterExtension(getFilterExt(filter));
-		_nameFilter.setCaseSensitive(isCaseSensitiveString);
-	}
-	
-	private String getFilterExt(String filter) {
-		return filter.substring(filter.indexOf(".") + 1); //$NON-NLS-1$
-	}
-	
-
-	/**
-	 * Sets the type filter.
-	 */
-	void setTypeFilter(String filter) {
-		_typeFilter.setTypeFilter(filter);
-	}
-
-	public String toString() {
-		final String lineSep = System.getProperty("line.separator"); //$NON-NLS-1$
-		StringBuffer buffer = new StringBuffer();
-		buffer.append("ValidatorFilter:"); //$NON-NLS-1$
-		buffer.append(lineSep);
-		buffer.append("     nameFilter = " + _nameFilter); //$NON-NLS-1$
-		buffer.append(lineSep);
-		buffer.append("     typeFilter = " + _typeFilter); //$NON-NLS-1$
-		buffer.append(lineSep);
-		buffer.append("     actionFilter = " + _actionFilter); //$NON-NLS-1$
-		buffer.append(lineSep);
-		return buffer.toString();
-	}
-
-	/**
-	 * @return Returns the _nameFilter.
-	 */
-	public ValidatorNameFilter get_nameFilter() {
-		return _nameFilter;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorMetaData.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorMetaData.java
deleted file mode 100644
index 90da739..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorMetaData.java
+++ /dev/null
@@ -1,546 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.atomic.AtomicReference;
-
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.wst.validation.internal.delegates.ValidatorDelegatesRegistry;
-import org.eclipse.wst.validation.internal.operations.IWorkbenchContext;
-import org.eclipse.wst.validation.internal.operations.WorkbenchContext;
-import org.eclipse.wst.validation.internal.plugin.ValidationHelperRegistryReader;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-import org.eclipse.wst.validation.internal.provisional.core.IValidatorJob;
-import org.osgi.framework.Bundle;
-
-/**
- * This class stores information, as specified by a validator's plugin.xml tags. There is one
- * ValidatorMetaData for each Validator. No Validator should attempt to access its
- * ValidatorMetaData; it is for use by the base framework only.
- */
-public class ValidatorMetaData {
-	private final ValidatorFilter[] _filters;
-	private final ValidatorNameFilter[] 	_projectNatureFilters;
-	private final String[]			_facetFilters;
-	private final AtomicReference<IValidator>	_validator = new AtomicReference<IValidator>();
-	private final AtomicReference<IWorkbenchContext> 		_helper = new AtomicReference<IWorkbenchContext>();
-	private final String 			_validatorDisplayName;
-	private final String 			_validatorUniqueName;
-	
-	/**
-	 * The list of class names of every validator which this validator aggregates. For
-	 * example, if the EJB Validator instantiated another validator, and started its validate
-	 * method, then that instantiated class' name should be in this list.
-	 */
-	private final String[] 	_aggregatedValidators;
-    private final String[] 	_contentTypeIds;
-	private final String[] 	_validatorNames;
-	private final String 	_pluginId;
-	private final boolean	_supportsIncremental;
-	private final boolean 	_supportsFullBuild;
-	private final boolean 	_isEnabledByDefault;
-	private final MigrationMetaData _migrationMetaData;
-	private final int 		_ruleGroup;
-	private final boolean 	_async;
-	private final boolean 	_dependentValidator;
-	private final String[]	_markerIds;
-	private final String 	_helperClassName;
-	private final IConfigurationElement _helperClassElement;
-	private final IConfigurationElement _validatorClassElement;
-	private volatile boolean 	_cannotLoad;
-	private volatile boolean 	_manualValidation = true;
-	private volatile boolean	_buildValidation = true;
-	private final Map<IValidatorJob, IWorkbenchContext> _helpers = 
-		Collections.synchronizedMap( new HashMap<IValidatorJob, IWorkbenchContext>() );
-	private final Expression 		_enablementExpression;
-
-	ValidatorMetaData(boolean async, String[] aggregatedValidators, boolean isEnabledByDefault, boolean supportsIncremental,
-			boolean supportsFullBuild, IConfigurationElement helperClassElement, String helperClassName, 
-			MigrationMetaData migrationMetaData, String pluginId, int ruleGroup, IConfigurationElement validatorClassElement,
-			String validatorDisplayName, String validatorUniqueName, String[] contentTypeIds, boolean dependentValidator,
-			Expression enablementExpression, String[] facetFilters, ValidatorFilter[] filters,
-			ValidatorNameFilter[] projectNatureFilters, String[] markerIds) {
-		_async = async;
-		_aggregatedValidators = aggregatedValidators;
-		_isEnabledByDefault = isEnabledByDefault;
-		_supportsIncremental = supportsIncremental;
-		_supportsFullBuild = supportsFullBuild;
-		_helperClassElement = helperClassElement;
-		_helperClassName = helperClassName;
-		_migrationMetaData = migrationMetaData;
-		_pluginId = pluginId;
-		_ruleGroup = ruleGroup;
-		_validatorClassElement = validatorClassElement;
-		_validatorDisplayName = validatorDisplayName;
-		_validatorUniqueName = validatorUniqueName;
-		_contentTypeIds = contentTypeIds;
-		_dependentValidator = dependentValidator;
-		_enablementExpression = enablementExpression;
-		_facetFilters = facetFilters;
-		_filters = filters;
-		_projectNatureFilters = projectNatureFilters;
-		_markerIds = markerIds;
-		_validatorNames = buildValidatorNames();
-	}
-		
-	protected String[] getFacetFilters() {
-		return _facetFilters;
-	}
-
-	public List<String> getNameFilters() {
-		List<String> nameFilters = new ArrayList<String>();
-		if (_filters != null && _filters.length > 0) {
-			for (ValidatorFilter filter : _filters) {
-				ValidatorNameFilter nameFilter = filter.get_nameFilter();
-				if (nameFilter != null) {
-					nameFilters.add(nameFilter.getNameFilter());
-				}
-			}
-		}
-		return nameFilters;
-	}
-
-	/**
-	 * Return the list of class names of the primary validator and its aggregates.
-	 */
-	public String[] getValidatorNames() {
-		return _validatorNames;
-	}
-	
-	private String[] buildValidatorNames() {
-		int aLength = (_aggregatedValidators == null) ? 0 : _aggregatedValidators.length;
-		String [] validatorNames = new String[aLength + 1]; // add 1 for the primary validator name
-		validatorNames[0] = getValidatorUniqueName();
-		if (_aggregatedValidators != null) {
-			System.arraycopy(_aggregatedValidators, 0, validatorNames, 1, aLength);
-		}
-		return validatorNames;
-	}
-
-	/**
-	 * Return the list of class names of every validator which this validator aggregates. For
-	 * example, if the EJB Validator instantiated another validator, and started its validate
-	 * method, then that instantiated class' name should be in this list.
-	 */
-	public String[] getAggregatedValidatorNames() {
-		return _aggregatedValidators;
-	}
-
-	/**
-	 * Return the name/type filter pairs.
-	 */
-	public ValidatorFilter[] getFilters() {
-		return _filters;
-	}
-
-	/**
-	 * Return true if this vmd's helper and validator have been instantiated, and also if this
-	 * validator's plugin is active.
-	 */
-	public boolean isActive() {
-		if (_helperClassElement != null) {
-			return false;
-		}
-
-		if (_validatorClassElement != null) {
-			return false;
-		}
-
-		Bundle bundle = Platform.getBundle(_pluginId);
-		if (bundle != null)
-			return bundle.getState() == Bundle.ACTIVE;
-
-		return false;
-	}
-
-	/**
-	 * This method will throw an InstantiationException if the helper cannot be instantiated, e.g.,
-	 * if the helper's plugin is disabled for some reason. Before the InstantiationException is
-	 * thrown, this validator will be disabled.
-	 * 
-	 * The IWorkbenchContext must ALWAYS have its project set before it is used; but it can't be
-	 * created with the IProject. So, before using the single instance, always initialize that
-	 * instance with the IProject.
-	 * 
-	 * If this validator supports asynchronous validation, then instead of maintaining a single the
-	 * helper instance, create a new IWorkbenchContext instance every time that the helper is needed.
-	 * This feature is provided because several validation Runnables may be queued to run, and if
-	 * those Runnables's project is different from the current validation's project, then the
-	 * current validation will suddenly start validating another project.
-	 */
-	//TODO just want to remember to figure out the many-temporary-objects problem if this method
-	// continues to new an IValidationContext every time - Ruth
-	public IWorkbenchContext getHelper(IProject project) throws InstantiationException {
-		IWorkbenchContext helper = _helper.get();
-		if (helper != null){
-			IProject oldProject = helper.getProject();
-			if ((oldProject == null) || !(oldProject.equals(project)))helper.setProject(project);
-			return helper;
-		}
-		
-		helper = ValidationRegistryReader.createHelper(_helperClassElement, _helperClassName);
-		if (helper == null)helper = new WorkbenchContext();
-		
-		if ((helper.getProject() == null) || !(helper.getProject().equals(project))) {
-			helper.setProject(project);
-		}
-		if (_helper.compareAndSet(null, helper))return helper;
-		return _helper.get();
-	}
-
-	/**
-	 * cannotLoad is false if both the IValidator and IWorkbenchContext instance can be instantiated.
-	 */
-	private void setCannotLoad() {
-		_cannotLoad = true;
-	}
-
-	/**
-	 * Return false if both the IValidator and IWorkbenchContext instance can be instantiated.
-	 * 
-	 * @return boolean
-	 */
-	public boolean cannotLoad() {
-		return _cannotLoad;
-	}
-
-	public MigrationMetaData getMigrationMetaData() {
-		return _migrationMetaData;
-	}
-
-	/**
-	 * Return the IRuleGroup integer indicating which groups of rules this validator recognizes.
-	 */
-	public int getRuleGroup() {
-		return _ruleGroup;
-	}
-
-	/**
-	 * Return the filters which identify which project(s) this validator may run on.
-	 */
-	ValidatorNameFilter[] getProjectNatureFilters() {
-		return _projectNatureFilters;
-	}
-
-	/**
-	 * This method returns the validator if it can be loaded; if the validator cannot be loaded,
-	 * e.g., if its plugin is disabled for some reason, then this method throws an
-	 * InstantiationException. Before the CoreException is thrown, this validator is disabled.
-	 */
-	public IValidator getValidator() throws InstantiationException {
-		IValidator val = _validator.get();
-		if (val != null)return val;
-		
-		val = ValidationRegistryReader.createValidator(_validatorClassElement, getValidatorUniqueName());
-
-		if (val == null) {
-			setCannotLoad();
-			throw new InstantiationException(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_DISABLEV, new String[]{getValidatorUniqueName()}));
-		}
-		if (_validator.compareAndSet(null, val))return val;
-		return _validator.get();
-	}
-
-	public String getValidatorDisplayName() {
-		return _validatorDisplayName;
-	}
-
-	public String getValidatorUniqueName() {
-		return _validatorUniqueName;
-	}
-
-	/**
-	 * If the resource is applicable to the Validator which this ValidatorMetaData is associated
-	 * with, return true; else return false.
-	 * 
-	 * A resource is applicable if it passes the name/type filters. This method is called if there
-	 * is no resource delta (i.e., a full validation).
-	 */
-	public boolean isApplicableTo(IResource resource) {
-		return isApplicableTo(resource, ValidatorActionFilter.ALL_ACTIONS);
-	}
-
-	/**
-	 * If the resource is applicable to the Validator which this ValidatorMetaData is associated
-	 * with, return true; else return false.
-	 * 
-	 * A resource is applicable if it passes the name/type filters.
-	 */
-	public boolean isApplicableTo(IResource resource, int resourceDelta) {
-		// If no filters are specified, then every type of resource should be validated/trigger a
-		// rebuild of the model cache.
-		// Also make sure no content type id is specified (BUG 193816)
-		if (_filters == null  && getContentTypeIds() == null)return true;
-
-		return isApplicableTo(resource, resourceDelta, _filters);
-	}
-
-	/**
-	 * Return true if the resource passes the name/type filters for this validator.
-	 */
-	boolean isApplicableTo(IResource resource, int resourceDelta, ValidatorFilter[] filters) {
-		// Are any of the filters satisfied? (i.e., OR them, not AND them.)
-		// make sure filters is not null (BUG 193816)
-		if (filters != null && checkIfValidSourceFile(resource)) {
-			for (ValidatorFilter filter : filters) {
-				if (filter.isApplicableType(resource)
-						&& filter.isApplicableName(resource)
-						&& filter.isApplicableAction(resourceDelta)) {
-					return true;
-				}
-			}
-		}
-		if (getContentTypeIds() != null) {
-			IContentDescription description = null;
-			try {
-				if (resource.getType() == IResource.FILE && resource.exists())
-					description = ((IFile) resource).getContentDescription();
-			} catch (CoreException e) {
-				//Resource exceptions
-			}
-			if (description == null)return false;
-			if (isApplicableContentType(description))return true;
-		}
-		return false;
-	}
-
-	private boolean checkIfValidSourceFile(IResource file) {
-		if (file.getType() == IResource.FILE) {
-			IProjectValidationHelper helper = ValidationHelperRegistryReader.getInstance().getValidationHelper();
-			IProject project = file.getProject();
-			if (helper == null || project == null)
-				return true;
-			IContainer[] outputContainers = helper.getOutputContainers(project);
-			IContainer[] sourceContainers = helper.getSourceContainers(project);
-			for (int i=0; i<outputContainers.length; i++) {
-				String outputPath = outputContainers[i].getProjectRelativePath().makeAbsolute().toString();
-                String filePath = file.getProjectRelativePath().makeAbsolute().toString();
-				if (filePath.startsWith(outputPath)) {
-					//The file is in an output container.
-					//If it is a source container return true and false otherwise.
-					for (int j=0;j<sourceContainers.length; j++) {
-	                    if(outputContainers[i].equals(sourceContainers[j])){
-	                    	return true;
-	                    }
-						return false;
-					}
-				}
-			}
-		}
-		return true;
-	}
-		
-		
-	/**
-	 * If this validator recognizes the project nature, whether included or excluded, return the
-	 * name filter which describes the nature. Otherwise return null.
-	 */
-	ValidatorNameFilter findProjectNature(String projId) {
-		if (projId == null) {
-			return null;
-		}
-
-		if (_projectNatureFilters == null) {
-			// If no tag is specified, this validator is configured on all IProjects
-			return null;
-		}
-
-		for (int i = 0; i < _projectNatureFilters.length; i++) {
-			ValidatorNameFilter filter = _projectNatureFilters[i];
-			// In this case, we're not checking if the project is an instance of the filter class,
-			// but if it has the Nature specified in the filter class.
-			String projectNatureID = filter.getNameFilter();
-			if (projId.equals(projectNatureID)) {
-				return filter;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Convenience method. Rather than store the is-this-vmd-configured-on-this-IProject algorithm
-	 * in two places, refer back to the reader's cache.
-	 */
-	public boolean isConfiguredOnProject(IProject project) {
-		return ValidationRegistryReader.getReader().isConfiguredOnProject(this, project);
-	}
-
-	public boolean isEnabledByDefault() {
-		return _isEnabledByDefault;
-	}
-
-	public boolean isIncremental() {
-		return _supportsIncremental;
-	}
-
-	public boolean isFullBuild() {
-		return _supportsFullBuild;
-	}
-
-	/**
-	 * Return true if the validator is thread-safe and can be run asynchronously.
-	 */
-	public boolean isAsync() {
-		return _async;
-	}
-
-	public String toString() {
-		return getValidatorUniqueName();
-	}
-
-	public final static class MigrationMetaData {
-		private Set<String[]> _ids;
-
-		public MigrationMetaData() {
-		}
-
-		public void addId(String oldId, String newId) {
-			if (oldId == null)return;
-			if (newId == null)return;
-
-			String[] ids = new String[]{oldId, newId};
-			getIds().add(ids);
-		}
-
-		public Set<String[]> getIds() {
-			if (_ids == null)_ids = new HashSet<String[]>();
-			return _ids;
-		}
-	}
-
-	public boolean isDependentValidator() {
-		return _dependentValidator;
-	}
-
-	/**
-	 * @return Returns the markerId.
-	 */
-	public String[] getMarkerIds() {
-		return _markerIds;
-	}
-
-	public boolean isBuildValidation() {
-		return _buildValidation;
-	}
-
-	public void setBuildValidation(boolean buildValidation) {
-		_buildValidation = buildValidation;
-	}
-
-	public boolean isManualValidation() {
-		return _manualValidation;
-	}
-
-	public void setManualValidation(boolean manualValidation) {
-		_manualValidation = manualValidation;
-	}
-  
-	/**
-   * Determines if the validator described by this metadata object is a delegating validator. 
-   * @return true if the validator described by this metadata object is a delegating validator, false otherwise.
-	 */
-  public boolean isDelegating() {
-    String targetID = getValidatorUniqueName();
-    return ValidatorDelegatesRegistry.getInstance().hasDelegates(targetID);
-  }
-  
-
-	public IValidator createValidator() throws InstantiationException {
-		return  ValidationRegistryReader.createValidator(_validatorClassElement, getValidatorUniqueName());
-	}
-	
-	public IWorkbenchContext createHelper(IProject project) throws InstantiationException {
-		IWorkbenchContext helper = ValidationRegistryReader.createHelper(_helperClassElement, _helperClassName);
-		if (helper == null) {
-			helper = new WorkbenchContext();
-		}
-		helper.setProject(project);
-		return helper;
-	}	  
-	
-   public void addHelper( IValidatorJob validator, IWorkbenchContext helper ){
-	   _helpers.put( validator, helper );
-   }
-   
-   public void removeHelper( IValidatorJob validator ){
-	   _helpers.remove( validator );
-   }
-   
-   private IWorkbenchContext getHelper( IValidatorJob validator ){
-	   return _helpers.get( validator );
-   }   
-   
-   public IWorkbenchContext getHelper( IProject project, IValidator validator ){
-	   
-	   if( validator instanceof IValidatorJob ){
-		   IWorkbenchContext helper = getHelper( (IValidatorJob)validator );
-		   if( helper == null ){
-			   try{
-				helper =  getHelper( project );
-				return helper;
-			   }catch (InstantiationException e) {
-					e.printStackTrace();
-				}			   
-		   }
-	   	return helper;
-	   }
-	   else{
-		   try {
-			IWorkbenchContext helper =  getHelper( project );
-			return helper;
-			} catch (InstantiationException e) {
-				e.printStackTrace();
-			}
-	   }
-	   
-	   return null;
-   }   
-   
-   public Expression getEnablementExpresion() {
-		return _enablementExpression;
-	}
-
-public String[] getContentTypeIds() {
-	return _contentTypeIds;
-}
-
- 
-private boolean isApplicableContentType(IContentDescription desc){
-	
-	IContentType ct = desc.getContentType();
-	String[] applicableContentTypes = getContentTypeIds();
-	if (applicableContentTypes != null) {
-		for (int i = 0; i < applicableContentTypes.length; i ++){
-			if(applicableContentTypes[i].equals(ct.getId()))
-				return true;
-		}
-	}
-	return false;
-}
-   
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorNameFilter.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorNameFilter.java
deleted file mode 100644
index 946cfba..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorNameFilter.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IResource;
-
-/**
- * Represents a name filter tag in a validator's plugin.xml file. e.g. &lt;filter name="*.*"> Then
- * this class would store the "*.*", and provide the wildcard matching functionality.
- */
-public class ValidatorNameFilter {
-	private String _nameFilter;
-	private String nameFilterExtension;
-	private boolean _include = true; // by default, filter in the IFile specified
-	private final static String WILDCARD = "*"; //$NON-NLS-1$
-	private boolean _isCaseSensitive = true; // by default, the filter name is case-sensitive
-
-	/**
-	 * Insert the method's description here. Creation date: (12/4/00 11:08:41 AM)
-	 */
-	ValidatorNameFilter() {
-		//default
-	}
-
-	/**
-	 * Get the filter, as specified in plugin.xml
-	 */
-	String getNameFilter() {
-		return _nameFilter;
-	}
-
-	boolean isCaseSensitive() {
-		return _isCaseSensitive;
-	}
-
-	boolean isInclude() {
-		return _include;
-	}
-
-	/**
-	 * Return true if the given resource is both applicable and include="true".
-	 */
-	boolean isApplicableTo(IResource resource) {
-		return (isApplicableName(resource) && isInclude());
-	}
-	
-	protected void setNameFilterExtension(String filterExt) {
-		nameFilterExtension = filterExt;
-	}
-
-	/**
-	 * Returns true if the name of the resource matches the filter, or if there is no filter
-	 * specified.
-	 */
-	public boolean isApplicableName(IResource resource) {
-		// If name filter is null, means filter out no names.
-		// Otherwise, return true only if the given name matches
-		// the name filter.
-		if (_nameFilter == null)
-			return true;
-		
-		String name = resource.getName();
-//		return true if the file name is exact match of the _nameFilter
-		if (name.equalsIgnoreCase(_nameFilter))
-			return true;
-
-		int indexOfStarDot = _nameFilter.indexOf("*."); //$NON-NLS-1$
-
-		//return value if the filter name extension matches the extension
-		//of the resource 
-		if (indexOfStarDot != -1) {
-			String nameExtension = name.substring(name.lastIndexOf(".") + 1); //$NON-NLS-1$
-			return nameFilterExtension.equalsIgnoreCase(nameExtension);
-		}
-
-		if (!isCaseSensitive()) {
-			name = name.toLowerCase();
-		}
-
-		return verifyNameMatch(_nameFilter, name);
-	}
-
-	void setInclude(String includeValue) {
-		if (includeValue != null) {
-			setInclude(Boolean.valueOf(includeValue).booleanValue());
-		}
-	}
-
-	void setInclude(boolean includeBool) {
-		_include = includeBool;
-	}
-
-	/**
-	 * Set the filter, as specified in plugin.xml
-	 */
-	void setNameFilter(String filter) {
-		_nameFilter = filter;
-	}
-
-	void setCaseSensitive(String isCaseSensitiveString) {
-		if (isCaseSensitiveString != null) {
-			// only change the value from the default if the case-sensitive attribute is defined
-			_isCaseSensitive = Boolean.valueOf(isCaseSensitiveString).booleanValue();
-		}
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append("NameFilter:\n\tnameFilter = "); //$NON-NLS-1$
-		buffer.append(_nameFilter);
-		return buffer.toString();
-	}
-
-	/**
-	 * Return true if the given name matches the given filter.
-	 * 
-	 * The only filter wildcard allowed is '*'.
-	 */
-	static boolean verifyNameMatch(final String filter, String name) {
-		/*
-		 * There are eight possible wildcard combinations, given that a wildcard may, if present, be
-		 * at the beginning, middle, or end of a name; or any combination of those positions. i.e.,
-		 * 
-		 * beginning middle end 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
-		 *  
-		 */
-		StringTokenizer tokenizer = new StringTokenizer(filter, WILDCARD, true);
-		boolean wildcardFlag = false;
-		while (tokenizer.hasMoreTokens()) {
-			String token = tokenizer.nextToken();
-			if (token.equals(WILDCARD)) {
-				wildcardFlag = true;
-			} else {
-				if (wildcardFlag) {
-					int tokenIndex = name.indexOf(token);
-					if (tokenIndex >= 0) {
-						name = name.substring(tokenIndex + token.length());
-					} else {
-						return false;
-					}
-				} else {
-					if (name.startsWith(token)) {
-						int tokenIndex = token.length();
-						name = name.substring(tokenIndex);
-					} else {
-						return false;
-					}
-				}
-				wildcardFlag = false;
-			}
-		}
-		if (!name.equals("")) { //$NON-NLS-1$
-			if (!wildcardFlag) {
-				return false;
-			}
-		}
-		return true;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorTypeFilter.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorTypeFilter.java
deleted file mode 100644
index f495aa6..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/ValidatorTypeFilter.java
+++ /dev/null
@@ -1,146 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.resources.IResource;
-
-/**
- * Represents a type filter tag in a validator's plugin.xml file. e.g. &lt;filter
- * objectClass="com.ibm.foo.MyClass"> Then this class would store the "com.ibm.foo.MyClass", and
- * provide the "instanceof" matching functionality.
- */
-public class ValidatorTypeFilter {
-	private Class _typeFilterClass;
-	private String _mustImplementClass; // the type set in setTypeFilter must implement the
-
-	// class/interface identified by this fully-qualified
-	// Java string.
-
-	ValidatorTypeFilter() {
-		//default
-	}
-
-	ValidatorTypeFilter(String mustImplementClass) {
-		setMustImplementClass(mustImplementClass);
-	}
-
-	/**
-	 * Type filters are allowed only for certain types of classes. This method returns the name of
-	 * the class which this type must implement before it can be a filter.
-	 */
-	String getMustImplementClass() {
-		return _mustImplementClass;
-	}
-
-	/**
-	 * Return the type filter as a java.lang.Class object.
-	 */
-	Class getTypeFilterClass() {
-		return _typeFilterClass;
-	}
-
-	/**
-	 * Returns true if the resource passed in either an instance of the type filter class, or if
-	 * there is no type filter class defined in plugin.xml.
-	 */
-	public boolean isApplicableType(IResource resource) {
-		// If type filter is null, means filter out no types.
-		// Otherwise, return true only if the given type is an instance of
-		// the type filter.
-		if (_typeFilterClass == null)
-			return true;
-
-		// If the resource is an instance of the type filter class.
-		return isInstance(resource.getClass(), _typeFilterClass);
-	}
-
-	/**
-	 * Checks if filterClass is a parent (interface or superclass) of objectClass.
-	 */
-	boolean isInstance(Class objectClass, Class filterClass) {
-		// The java.lang.Class.isInstance call doesn't check interfaces fully.
-		// i.e., if I have two interfaces, A and B, and B extends A but
-		// doesn't implement A, then the isInstance call will return false.
-		//
-		// So, instead of using Class.isInstance, do the checking myself.
-		for (Class cl = objectClass; cl != null; cl = cl.getSuperclass()) {
-			if (cl.getName().equals(filterClass.getName())) {
-				return true;
-			}
-			Class[] clInterfaces = cl.getInterfaces();
-			for (int i = 0; i < clInterfaces.length; i++) {
-				if (clInterfaces[i].getName().equals(filterClass.getName())) {
-					return true;
-				}
-				return isInstance(clInterfaces[i], filterClass);
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Type filters are allowed only for certain types of classes. This method sets the name of the
-	 * class which this type must implement before it can be a filter.
-	 */
-	void setMustImplementClass(String className) {
-		_mustImplementClass = className;
-	}
-
-	/**
-	 * If the filter implements the mustImplementClass (in ValidatorFilter's case, IResource), then
-	 * this is a valid filter, and store the filter value.
-	 */
-	void setTypeFilter(String filter) {
-		Class filterClass = null;
-		Class mustImplementClass = null;
-
-		if (filter == null) {
-			_typeFilterClass = null;
-			return;
-		}
-
-		try {
-			filterClass = Class.forName(filter);
-			if (getMustImplementClass() != null) {
-				mustImplementClass = Class.forName(getMustImplementClass());
-
-				// If the filter class is not an instance of mustImplementClass
-				if (!isInstance(filterClass, mustImplementClass)) {
-					_typeFilterClass = null;
-					if (Tracing.isLogging()) {
-						String result = MessageFormat.format(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_INVALID_TYPE_FILTER), 
-							new Object[]{filter, getMustImplementClass()});
-						Tracing.log("ValidatorTypeFilter-01: ", result); //$NON-NLS-1$
-					}
-				}
-			}
-		} catch (ClassNotFoundException exc) {
-			_typeFilterClass = null;
-			if (Tracing.isLogging()) {
-				Tracing.log("ValidatorTypeFilter-02: The class named " + filter +  //$NON-NLS-1$
-					" cannot be instantiated because it does not exist. Check the spelling of the name, " + //$NON-NLS-1$
-					"in the validator's plugin.xml contribution, and try restarting eclipse again."); //$NON-NLS-1$
-			}
-			return;
-		}
-		_typeFilterClass = filterClass;
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append("TypeFilter:"); //$NON-NLS-1$
-		buffer.append("     _typeFilterClass = " + _typeFilterClass.getName()); //$NON-NLS-1$
-		buffer.append("     _mustImplementClass = " + _mustImplementClass); //$NON-NLS-1$
-		return buffer.toString();
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/DelegatingValidator.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/DelegatingValidator.java
deleted file mode 100644
index d143f9b..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/DelegatingValidator.java
+++ /dev/null
@@ -1,270 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.validation.internal.delegates;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-import org.eclipse.wst.validation.AbstractValidator;
-import org.eclipse.wst.validation.ValidationResult;
-import org.eclipse.wst.validation.ValidationState;
-import org.eclipse.wst.validation.internal.ConfigurationManager;
-import org.eclipse.wst.validation.internal.ProjectConfiguration;
-import org.eclipse.wst.validation.internal.ResourceConstants;
-import org.eclipse.wst.validation.internal.ResourceHandler;
-import org.eclipse.wst.validation.internal.ValidationRegistryReader;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-import org.eclipse.wst.validation.internal.core.ValidationException;
-import org.eclipse.wst.validation.internal.operations.LocalizedMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IProjectValidationContext;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IValidationContext;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-import org.eclipse.wst.validation.internal.provisional.core.IValidatorJob;
-
-/**
- * This class is to be used as a base class by clients who want to provide
- * alternate validator implementations for a given validator type.
- * 
- * It locates the currently configured delegate for this validator and calls its
- * validate method.
- * 
- * @see IValidator
- * @see IDelegatingValidator
- * 
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still
- * under development and expected to change significantly before reaching
- * stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this
- * API will almost certainly be broken (repeatedly) as the API evolves.
- * </p>
- */
-public class DelegatingValidator extends AbstractValidator implements IDelegatingValidator
-{
-  public DelegatingValidator()
-  {
-  }
-
-  /*
-   * (non-Javadoc)
-   * 
-   * @see org.eclipse.wst.validation.internal.provisional.core.IValidator#cleanup(org.eclipse.wst.validation.internal.provisional.core.IReporter)
-   */
-  public void cleanup(IReporter reporter)
-  {
-    // [Issue] This method does not get passed the validation context. How are
-    // going to know the delegate in order to invoke its cleanup method?
-  }
-
-  /*
-   * (non-Javadoc)
-   * 
-   * @see org.eclipse.wst.validation.internal.provisional.core.IValidator#validate(org.eclipse.wst.validation.internal.provisional.core.IValidationContext,
-   *      org.eclipse.wst.validation.internal.provisional.core.IReporter)
-   */
-  public void validate(IValidationContext helper, IReporter reporter) throws ValidationException
-  {
-    validateInJob(helper, reporter);
-  }
-
-  /**
-   * Wraps the original reporter instance to make it look like this validator is
-   * the one generating messages. This is needed because the framework ignores
-   * messages coming from the delegate validator because it is not registered
-   * with the validation framework.
-   */
-  private class DelegatingReporter implements IReporter
-  {
-    /**
-     * The reporter passed originally to the delegating validator by the
-     * framework.
-     */
-    IReporter delegatingReporter;
-
-    /**
-     * The delegating validator.
-     */
-    IValidator delegatingValidator;
-
-    /**
-     * Constructor.
-     * 
-     * @param validator
-     *          the original validator.
-     * @param reporter
-     *          the reporter originally passed to the delegating validator.
-     */
-    DelegatingReporter(IValidator validator, IReporter reporter)
-    {
-      delegatingReporter = reporter;
-      delegatingValidator = validator;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.wst.validation.internal.provisional.core.IReporter#addMessage(org.eclipse.wst.validation.internal.provisional.core.IValidator,
-     *      org.eclipse.wst.validation.internal.provisional.core.IMessage)
-     */
-    public void addMessage(IValidator origin, IMessage message)
-    {
-      delegatingReporter.addMessage(delegatingValidator, message);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.wst.validation.internal.provisional.core.IReporter#displaySubtask(org.eclipse.wst.validation.internal.provisional.core.IValidator,
-     *      org.eclipse.wst.validation.internal.provisional.core.IMessage)
-     */
-    public void displaySubtask(IValidator validator, IMessage message)
-    {
-      delegatingReporter.displaySubtask(delegatingValidator, message);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.wst.validation.internal.provisional.core.IReporter#getMessages()
-     */
-    public List getMessages()
-    {
-      return delegatingReporter.getMessages();
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.wst.validation.internal.provisional.core.IReporter#isCancelled()
-     */
-    public boolean isCancelled()
-    {
-      return delegatingReporter.isCancelled();
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.wst.validation.internal.provisional.core.IReporter#removeAllMessages(org.eclipse.wst.validation.internal.provisional.core.IValidator)
-     */
-    public void removeAllMessages(IValidator origin)
-    {
-      delegatingReporter.removeAllMessages(delegatingValidator);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.wst.validation.internal.provisional.core.IReporter#removeAllMessages(org.eclipse.wst.validation.internal.provisional.core.IValidator,
-     *      java.lang.Object)
-     */
-    public void removeAllMessages(IValidator origin, Object object)
-    {
-      delegatingReporter.removeAllMessages(delegatingValidator, object);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.wst.validation.internal.provisional.core.IReporter#removeMessageSubset(org.eclipse.wst.validation.internal.provisional.core.IValidator,
-     *      java.lang.Object, java.lang.String)
-     */
-    public void removeMessageSubset(IValidator validator, Object obj, String groupName)
-    {
-      delegatingReporter.removeMessageSubset(delegatingValidator, obj, groupName);
-    }
-  }
-
-  /*
-   * (non-Javadoc)
-   * 
-   * @see org.eclipse.wst.validation.internal.provisional.core.IValidatorJob#validateInJob(org.eclipse.wst.validation.internal.provisional.core.IValidationContext,
-   *      org.eclipse.wst.validation.internal.provisional.core.IReporter)
-   */
-  public IStatus validateInJob(IValidationContext helper, IReporter reporter) throws ValidationException
-  {
-    ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(this);
-    String validatorName = vmd.getValidatorDisplayName();
-
-    // We need to ensure that the context is an IProjectValidationContext. The
-    // limitation of using an IValidationContext is that it does not readily
-    // provide the project the validator is being invoked upon.
-
-    if (!(helper instanceof IProjectValidationContext))
-    {
-      throw new ValidationException(new LocalizedMessage(IMessage.HIGH_SEVERITY, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_WRONG_CONTEXT_FOR_DELEGATE, new String[] { validatorName })));
-    }
-
-    IProjectValidationContext projectContext = (IProjectValidationContext) helper;
-    IProject project = projectContext.getProject();
-
-    ValidatorDelegateDescriptor delegateDescriptor = null;
-
-    try
-    {
-      ProjectConfiguration projectConfig = ConfigurationManager.getManager().getProjectConfiguration(project);
-
-      delegateDescriptor = projectConfig.getDelegateDescriptor(vmd);
-    }
-    catch (InvocationTargetException e)
-    {
-      // Already dealt with by the framework.
-    }
-    finally
-    {
-      if (delegateDescriptor == null)
-      {
-        throw new ValidationException(new LocalizedMessage(IMessage.HIGH_SEVERITY, ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_NO_DELEGATE, new String[] { vmd.getValidatorDisplayName() })));
-      }
-    }
-
-    IValidatorJob delegate = (IValidatorJob)delegateDescriptor.getValidator();
-
-    // We need to make it look like this validator is the one generating
-    // messages so we wrap the reporter and use this validator as the source.
-    // The validation framework does not recognize our validators because they
-    // are not registered directly with the framework.
-    // We could make them work like the aggregated validators but that would
-    // create problems with markers not being cleaned up if someone switches
-    // validators.
-    // TODO : Maybe we could clear all the markers generated by a delegate when
-    // the user chooses a different delegate implementation?
-
-    DelegatingReporter delegatingReporter = new DelegatingReporter(this, reporter);
-
-    IStatus status = delegate.validateInJob(helper, delegatingReporter);
-
-    return status;
-  }
-
-  /*
-   * (non-Javadoc)
-   * 
-   * @see org.eclipse.wst.validation.internal.provisional.core.IValidatorJob#getSchedulingRule(org.eclipse.wst.validation.internal.provisional.core.IValidationContext)
-   */
-  public ISchedulingRule getSchedulingRule(IValidationContext helper)
-  {
-    return null;
-  }
-
-@Override
-public ValidationResult validate(IResource resource, int kind, ValidationState state, IProgressMonitor monitor) {
-	return null;
-}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/IDelegatingValidator.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/IDelegatingValidator.java
deleted file mode 100644
index e779ed9..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/IDelegatingValidator.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.validation.internal.delegates;
-
-import org.eclipse.wst.validation.internal.provisional.core.IValidatorJob;
-
-/**
- * A delegating validator delegates the actual validation work to a delegate
- * validator. This is a marker interface used internally by the framework to
- * determine if a delegate is a delegating validator.
- * 
- * [Issue] Could/should this interface be replaced with an attribute on the
- * validators extension definition?
- * 
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still
- * under development and expected to change significantly before reaching
- * stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this
- * API will almost certainly be broken (repeatedly) as the API evolves.
- * </p>
- */
-public interface IDelegatingValidator extends IValidatorJob
-{
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/ValidatorDelegateDescriptor.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/ValidatorDelegateDescriptor.java
deleted file mode 100644
index 51910e0..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/ValidatorDelegateDescriptor.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.validation.internal.delegates;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.wst.validation.AbstractValidator;
-import org.eclipse.wst.validation.internal.ResourceConstants;
-import org.eclipse.wst.validation.internal.ResourceHandler;
-import org.eclipse.wst.validation.internal.ValidationRegistryReader;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-import org.eclipse.wst.validation.internal.core.ValidationException;
-import org.eclipse.wst.validation.internal.operations.LocalizedMessage;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-
-/**
- * ValidatorDelegateDescriptor stores information about a delegate validator.
- * <p>
- * It is also used to store the instance of the validator it describes. To
- * obtain the instance call getValidator().
- * </p>
- */
-public class ValidatorDelegateDescriptor {
-	/**
-	 * The platform configuration element describing this delegate.
-	 */
-	private IConfigurationElement _delegateConfiguration;
-
-	/**
-	 * The delegating validator's ID.
-	 */
-	private String _delegatingValidatorID;
-
-	/**
-	 * The delegate's ID.
-	 */
-	private String _id;
-
-	/**
-	 * The delegate's display name.
-	 */
-	private String _name;
-
-	/**
-	 * Constructs a descriptor.
-	 * 
-	 * @param id
-	 *            The delegate's unique id. Must be unique in the context of a
-	 *            delegating validator.
-	 * @param delegateConfiguration
-	 *            The delegates configuration element
-	 * @param delegateName
-	 *            The delegate's display name.
-	 * @param targetValidatorID
-	 *            The target validator's unique id.
-	 */
-	public ValidatorDelegateDescriptor(String id,
-			IConfigurationElement delegateConfiguration, String delegateName,
-			String targetValidatorID) {
-
-		assert id != null;
-		assert delegateConfiguration != null;
-		assert targetValidatorID != null;
-
-		_id = id;
-		_delegateConfiguration = delegateConfiguration;
-		_name = delegateName;
-		_delegatingValidatorID = targetValidatorID;
-	}
-
-	/**
-	 * Provides the delegate's ID.
-	 * 
-	 * @return a string with the fully qualified class name of this validator
-	 *         implementation.
-	 */
-	public String getId() {
-		return _id;
-	}
-
-	/**
-	 * Provides the delegate's name.
-	 * 
-	 * @return a String with the validator's display name.
-	 */
-	public String getName() {
-		return _name;
-	}
-
-	/**
-	 * Retrieves the target validator's ID.
-	 * 
-	 * @return a String with the fully qualified class name of the delegating
-	 *         validator who will delegate its implementation to the validator
-	 *         described by this descriptor.
-	 */
-	public String getTargetID() {
-		return _delegatingValidatorID;
-	}
-
-	/**
-	 * Provides the instance of the validator delegate pointed to by this descriptor.
-	 * 
-	 * @return an IValidator instance.
-	 * @throws ValidationException
-	 */
-	public IValidator getValidator() throws ValidationException {
-		try {
-			IValidator delegate = (IValidator) _delegateConfiguration
-					.createExecutableExtension(ValidatorDelegatesRegistryReader.CLASS_ATTRIBUTE);
-			return delegate;
-		} catch (CoreException e) {
-			handleException(e);
-		}
-		return null;
-	}
-
-	/**
-	 * Answer an AbstractValidator if one has been defined, otherwise answer null.
-	 */
-	public AbstractValidator getValidator2() throws ValidationException {
-		try {
-			Object o = _delegateConfiguration
-					.createExecutableExtension(ValidatorDelegatesRegistryReader.CLASS_ATTRIBUTE);
-			if (o instanceof AbstractValidator)
-				return (AbstractValidator) o;
-		} catch (CoreException e) {
-			handleException(e);
-		}
-		return null;
-	}
-
-	private void handleException(CoreException e) throws ValidationException {
-		ValidationPlugin.getPlugin().handleException(e);
-		String delegatingValidatorName = getTargetID();
-		ValidatorMetaData vmd = ValidationRegistryReader.getReader()
-			.getValidatorMetaData(getTargetID());
-		if (vmd != null)delegatingValidatorName = vmd.getValidatorDisplayName();
-		throw new ValidationException(new LocalizedMessage(
-			IMessage.HIGH_SEVERITY, ResourceHandler.getExternalizedMessage(
-			ResourceConstants.VBF_CANNOT_INSTANTIATE_DELEGATE, new String[] { getName(), delegatingValidatorName })));
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/ValidatorDelegatesRegistry.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/ValidatorDelegatesRegistry.java
deleted file mode 100644
index 3ea034f..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/ValidatorDelegatesRegistry.java
+++ /dev/null
@@ -1,223 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.validation.internal.delegates;
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.preferences.DefaultScope;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.wst.validation.internal.ConfigurationConstants;
-import org.eclipse.wst.validation.internal.core.ValidationException;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-
-/**
- * ValidatorDelegatesRegistry is a singleton used to store validator delegate
- * descriptors for each delegating validator.
- */
-public class ValidatorDelegatesRegistry {
-	
-  /**
-   * The one and only instance of this registry.
-   */
-  private static ValidatorDelegatesRegistry _instance;
-
-  /**
-   * Provides the one and only instance of this class.
-   * 
-   * The actual platform extension registry reading happens at this time.
-   * 
-   * @see ValidatorDelegatesRegistryReader
-   * 
-   * @return the validator delegates registry singleton instance.
-   */
-  public static ValidatorDelegatesRegistry getInstance() {
-    if (_instance == null) {
-    	ValidatorDelegatesRegistry instance = new ValidatorDelegatesRegistry();
-    	ValidatorDelegatesRegistryReader reader = new ValidatorDelegatesRegistryReader(instance);
-    	reader.readRegistry();
-    	instance.initDefaults();
-    	_instance = instance;
-    }
-
-    return _instance;
-  }
-
-  /**
-   * Determine if the product defined any default delegate validators, by setting the old
-   * DELEGATES_PREFERENCE preference in the default preference scope. If they did, we remember
-   * them, so that if we every need to return a default for the delegating validator, we can return the one
-   * that the product requested.
-   */
-  private void initDefaults() {
-	  	// This code was copied from the ValidationConfiguration#deserializeDelegates() method. The code was copied because this
-	  	// change is part of a patch and I didn't want to disturb the ValidationConfiguration class.
-	  
-		IEclipsePreferences prefs = new DefaultScope().getNode(ValidationPlugin.PLUGIN_ID);
-		String delegatePref = prefs.get("DELEGATES_PREFERENCE", null); //$NON-NLS-1$
-		if (delegatePref == null)return;
-
-		int delegatesIndex = delegatePref.indexOf(ConfigurationConstants.DELEGATE_VALIDATORS);
-		String delegates = delegatePref.substring(delegatesIndex + ConfigurationConstants.DELEGATE_VALIDATORS.length(), delegatePref.length());
-
-		if (delegates == null)return;
-
-		_defaultDelegates = new HashSet<String>(10);
-		StringTokenizer tokenizer = new StringTokenizer(delegates, ConfigurationConstants.ELEMENT_SEPARATOR);
-		while (tokenizer.hasMoreTokens()) {
-			String delegateConfiguration = tokenizer.nextToken();
-			int separatorIndex = delegateConfiguration.indexOf(ConfigurationConstants.DELEGATES_SEPARATOR);
-//			String targetID = delegateConfiguration.substring(0, separatorIndex);
-			String delegateID = delegateConfiguration.substring(separatorIndex + 1);
-			_defaultDelegates.add(delegateID);
-		}
-
-	}
-
-/**
-   * The map of target validator id to Map of delegates by id.
-   */
-  private Map<String, Map<String,ValidatorDelegateDescriptor>> _delegatesByTarget = 
-	  new HashMap<String, Map<String,ValidatorDelegateDescriptor>>();
-  
-  /**
-   * Validator ids that have been defined by the product to be the default validators, for some of the delegating validtors.
-   */
-  private Set<String> _defaultDelegates;
-
-  /**
-   * Adds a descriptor to the registry.
-   * 
-   * @param descriptor
-   *          The descriptor to add. Must not be null.
-   */
-  void add(ValidatorDelegateDescriptor descriptor) {
-    if (descriptor == null)return;
-
-    String targetID = descriptor.getTargetID();
-
-    Map<String,ValidatorDelegateDescriptor> delegates = _delegatesByTarget.get(targetID);
-
-    if (delegates == null) {
-      delegates = new HashMap<String,ValidatorDelegateDescriptor>();
-      _delegatesByTarget.put(targetID, delegates);
-    }
-
-    delegates.put(descriptor.getId(), descriptor);
-  }
-
-  /**
-   * Provides the default delegate ID for the given delegating validator ID.
-   * 
-   * @param targetID
-   *          The delegating validator's ID.
-   * @return a String with the ID of the default delegate.
-   */
-  public String getDefaultDelegate(String targetID)
-  {
-    Map<String,ValidatorDelegateDescriptor> delegates = getDelegateDescriptors(targetID);
-
-    if (delegates == null)return null;
-
-    if (_defaultDelegates != null){
-    	for (ValidatorDelegateDescriptor vdd : delegates.values()){
-    		String id = vdd.getId();
-    		if (_defaultDelegates.contains(id))return id;
-    	}
-    }
-    
-    // TODO: Implement a default attribute and use that to get the default?
-    // What happens if two or more delegates claim to be the default one?
-    // For now, just pick the first one in the list.
-
-    Iterator<ValidatorDelegateDescriptor> delegatesIterator = delegates.values().iterator();
-    
-    if (!delegatesIterator.hasNext())return null;
-
-    return delegatesIterator.next().getId();
-  }
-
-  /**
-   * Retrieves a delegate instance based on the target and delegate IDs.
-   * 
-   * @param targetID
-   *          the delegating validator's ID.
-   * @param delegateID
-   *          the delegate validator's ID.
-   * @return an instance of the delegate validator or null if one cannot be
-   *         found.
-   */
-  public IValidator getDelegate(String targetID, String delegateID) throws ValidationException
-  {
-    ValidatorDelegateDescriptor descriptor = getDescriptor(targetID, delegateID);
-
-    if (descriptor == null)return null;
-
-    IValidator delegate = descriptor.getValidator();
-
-    return delegate;
-  }
-
-  /**
-   * Provides a map with all delegates descriptors for the given target, keyed
-   * by their ID.
-   * 
-   * @param targetID
-   *          the target (delegating) validator id. Must not be null.
-   * @return a Map <string, ValidatorDelegateDescriptor>. May be null if the ID
-   *         passed in is not a delegating validator.
-   */
-  public Map<String,ValidatorDelegateDescriptor> getDelegateDescriptors(String targetID) {
-    return _delegatesByTarget.get(targetID);
-  }
-
-  /**
-   * Finds a delegate descriptor based on the target id and delegate id.
-   * 
-   * @param targetID
-   *          the delegating validator's id
-   * @param delegateID
-   *          the delegate id
-   * @return a ValidatorDelegateDescriptor for the given target and id or null
-   *         if one cannot be found.
-   */
-  public ValidatorDelegateDescriptor getDescriptor(String targetID, String delegateID)
-  {
-    Map<String,ValidatorDelegateDescriptor> delegates = _delegatesByTarget.get(targetID);
-
-    if (delegates == null || delegateID == null)return null;
-    
-    ValidatorDelegateDescriptor descriptor = (ValidatorDelegateDescriptor) delegates.get(delegateID);
-
-    return descriptor;
-  }
-
-  /**
-   * Determines if a given validator has delegates.
-   * 
-   * @param targetID
-   *          the target validator id.
-   * @return true if the target has registered delegates, false otherwise.
-   */
-  public boolean hasDelegates(String targetID)
-  {
-    Map<String,ValidatorDelegateDescriptor> delegatesByID = _delegatesByTarget.get(targetID);
-
-    boolean hasDelegates = (delegatesByID != null && !delegatesByID.isEmpty());
-    return hasDelegates;
-  }
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/ValidatorDelegatesRegistryReader.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/ValidatorDelegatesRegistryReader.java
deleted file mode 100644
index 368f267..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/delegates/ValidatorDelegatesRegistryReader.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.validation.internal.delegates;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IContributor;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * This class reads the plug-in extension registry and registers each delegating
- * validator descriptor with the delegates registry.
- * 
- * @see ValidatorDelegatesRegistry
- */
-class ValidatorDelegatesRegistryReader
-{
-  /**
-   * The delegate class attribute. Must be visible in the package because it is
-   * used by other classes in the package.
-   */
-  static final String CLASS_ATTRIBUTE = "class"; //$NON-NLS-1$
-
-  /**
-   * The delegate element name.
-   */
-  private static final String DELEGATE_ELEMENT = "delegate"; //$NON-NLS-1$
-
-  /**
-   * The validator delegates extension point id.
-   */
-  private static final String EXTENSION_POINT_ID = "validatorDelegates"; //$NON-NLS-1$
-
-  /**
-   * The delegate name attribute.
-   */
-  private static final String NAME_ATTRIBUTE = "name"; //$NON-NLS-1$
-
-  /**
-   * Plugin id.
-   */
-  private static final String PLUGIN_ID = "org.eclipse.wst.validation"; //$NON-NLS-1$
-
-  /**
-   * The target id attribute name.
-   */
-  private static final String TARGET_ATTRIBUTE = "target"; //$NON-NLS-1$
-
-  /**
-   * The validator registry where the descriptors being read will be placed.
-   */
-  private ValidatorDelegatesRegistry registry;
-
-  /**
-   * Constructor.
-   * 
-   * @param registry
-   *          the registry where the descriptors being read will be placed.
-   */
-  public ValidatorDelegatesRegistryReader(ValidatorDelegatesRegistry registry)
-  {
-    this.registry = registry;
-  }
-
-  /**
-   * Reads a configuration element.
-   * 
-   * @param element
-   *          the platform configuration element being read.
-   */
-  private void readElement(IConfigurationElement element)
-  {
-    String elementName = element.getName();
-
-    if (elementName.equals(DELEGATE_ELEMENT))
-    {
-      String delegateID = element.getAttribute(CLASS_ATTRIBUTE);
-      String delegateName = element.getAttribute(NAME_ATTRIBUTE);
-      String targetValidatorID = element.getAttribute(TARGET_ATTRIBUTE);
-
-      ValidatorDelegateDescriptor descriptor = new ValidatorDelegateDescriptor(delegateID, element, delegateName, targetValidatorID);
-
-      registry.add(descriptor);
-    }
-  }
-
-  /**
-   * Read from the extensions registry and parse it.
-   */
-  void readRegistry()
-  {
-    IExtensionRegistry pluginRegistry = Platform.getExtensionRegistry();
-    IExtensionPoint point = pluginRegistry.getExtensionPoint(PLUGIN_ID, EXTENSION_POINT_ID);
-
-    if (point != null)
-    {
-			IConfigurationElement[] elements = point.getConfigurationElements();
-			for (IConfigurationElement configurationElement : elements) {
-				try {
-					readElement(configurationElement);
-				}
-				catch (Exception e) {
-					// we don't want all the validators to be rendered helpless by some 
-					// rogue contribution, so, we catch any exception that occurs during 
-					// initialization, log it, and continue on.
-					IContributor contributor = configurationElement.getContributor();
-					ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, "Rogue validator delegate from " + contributor);
-				}
-			}
-		}
-  }
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/AllValidatorsOperation.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/AllValidatorsOperation.java
deleted file mode 100644
index 66809bc..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/AllValidatorsOperation.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-
-import java.lang.reflect.InvocationTargetException;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.validation.internal.ConfigurationManager;
-import org.eclipse.wst.validation.internal.InternalValidatorManager;
-import org.eclipse.wst.validation.internal.ProjectConfiguration;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * Implemented Validators must not be called directly by anyone other than instances of
- * ValidationOperation, because some initialization of the validator, and handling of error
- * conditions, is done in the operation. The initialization is separated because some of the
- * information needed to initialize the validator (i.e., the project) isn't known until runtime.
- * 
- * This operation runs all validators: enabled validators, disabled validators, incremental
- * validators, full validators.
- * 
- * This operation is not intended to be subclassed outside of the validation framework.
- */
-public class AllValidatorsOperation extends ValidatorSubsetOperation {
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use AllValidatorsOperation(IProject, boolean)
-	 */
-	public AllValidatorsOperation(IProject project) {
-		this(project, DEFAULT_ASYNC);
-	}
-
-	/**
-	 * Run all configured validators on the project, regardless of whether the validator is enabled
-	 * or disabled by the user.
-	 * 
-	 * If async is true, the validation will run all thread-safe validators in a background thread.
-	 * If async is false, no validators will run in a background thread.
-	 */
-	public AllValidatorsOperation(IProject project, boolean async) {
-		super(project, true, async);// always force validation to run
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			setEnabledValidators(InternalValidatorManager.wrapInSet(prjp.getValidators()));
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			if (e.getTargetException() != null) {
-				ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			}
-		}
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/DefaultResourceUtil.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/DefaultResourceUtil.java
deleted file mode 100644
index 39231d4..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/DefaultResourceUtil.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-/**
- * The default line number calculator (always returns "0").
- */
-public class DefaultResourceUtil implements IResourceUtil {
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.operations.IResourceUtil#getLineNo(Object)
-	 */
-	public int getLineNo(Object obj) {
-		return 0;
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/EnabledIncrementalValidatorsOperation.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/EnabledIncrementalValidatorsOperation.java
deleted file mode 100644
index df5a832..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/EnabledIncrementalValidatorsOperation.java
+++ /dev/null
@@ -1,201 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.wst.validation.internal.ConfigurationManager;
-import org.eclipse.wst.validation.internal.FilterUtil;
-import org.eclipse.wst.validation.internal.InternalValidatorManager;
-import org.eclipse.wst.validation.internal.ProjectConfiguration;
-import org.eclipse.wst.validation.internal.RegistryConstants;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * Implemented Validators must not be called directly by anyone other than instances of
- * ValidationOperation, because some initialization of the validator, and handling of error
- * conditions, is done in the operation. The initialization is separated because some of the
- * information needed to initialize the validator (i.e., the project) isn't known until runtime.
- * 
- * Instances of this operation load the project's configured validators, and run the validators if
- * they are both enabled and incremental.
- * 
- * This operation is not intended to be subclassed outside of the validation framework.
- */
-public class EnabledIncrementalValidatorsOperation extends EnabledValidatorsOperation {
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use
-	 *             EnabledIncrementalValidatorsOperation(IProject, IResourceDelta, boolean)
-	 */
-	public EnabledIncrementalValidatorsOperation(IProject project, IResourceDelta delta) {
-		this(project, delta, DEFAULT_ASYNC);
-	}
-
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use
-	 *             EnabledIncrementalValidatorsOperation(IProject, IResourceDelta, int, boolean)
-	 */
-	public EnabledIncrementalValidatorsOperation(IProject project, IResourceDelta delta, int ruleGroup) {
-		this(project, delta, ruleGroup, DEFAULT_ASYNC);
-	}
-
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use
-	 *             EnabledIncrementalValidatorsOperation(IProject, IResourceDelta, int, boolean)
-	 *             instead.
-	 */
-	public EnabledIncrementalValidatorsOperation(IProject project, Set validators, IResourceDelta delta, int ruleGroup) {
-		this(project, delta, ruleGroup, DEFAULT_ASYNC);
-		setEnabledValidators(validators);
-	}
-
-	/**
-	 * IProject must exist and be open.
-	 * 
-	 * If delta is null, a full validation of the project using only the incremental validators is
-	 * performed. If delta is not null, all enabled incremental validators that validate resources
-	 * in the delta will validate those resources.
-	 * 
-	 * If async is true, all thread-safe validators will run in the background validation thread,
-	 * and all other validators will run in the main thread. If async is false, all validators will
-	 * run in the main thread.
-	 */
-	public EnabledIncrementalValidatorsOperation(IProject project, IResourceDelta delta, boolean async) {
-		this(project, delta, RegistryConstants.ATT_RULE_GROUP_DEFAULT, async);
-	}
-	
-	/**
-	 * IProject must exist and be open.
-	 * 
-	 * If delta is null, a full validation of the project using only the incremental validators is
-	 * performed. If delta is not null, all enabled incremental validators that validate resources
-	 * in the delta will validate those resources.
-	 * 
-	 * If async is true, all thread-safe validators will run in the background validation thread,
-	 * and all other validators will run in the main thread. If async is false, all validators will
-	 * run in the main thread.
-	 */
-	public EnabledIncrementalValidatorsOperation(IProject project, IWorkbenchContext context, IResourceDelta delta, boolean async) {
-		this(project,context, delta, RegistryConstants.ATT_RULE_GROUP_DEFAULT, async);
-	}
-	
-	/**
-	 * IProject must exist and be open.
-	 * 
-	 * If delta is null, a full validation of the project using only the incremental validators is
-	 * performed. If delta is not null, all enabled incremental validators that validate resources
-	 * in the delta will validate those resources.
-	 * 
-	 * If async is true, all thread-safe validators will run in the background validation thread,
-	 * and all other validators will run in the main thread. If async is false, all validators will
-	 * run in the main thread.
-	 */
-	public EnabledIncrementalValidatorsOperation(IProject project,IWorkbenchContext context, IResourceDelta delta, int ruleGroup, boolean async) {
-		super(project, ruleGroup, shouldForce(delta), async);
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			setEnabledValidators(InternalValidatorManager.wrapInSet(prjp.getEnabledIncrementalValidators(true)));
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			if (e.getTargetException() != null)
-				ValidationPlugin.getPlugin().handleException(e.getTargetException());
-
-		}
-		setDelta(delta);
-		setContext(context);
-	}
-
-	/**
-	 * IProject must exist and be open.
-	 * 
-	 * If delta is null, a full validation of the project using only the incremental validators is
-	 * performed. If delta is not null, all enabled incremental validators that validate resources
-	 * in the delta will validate those resources.
-	 * 
-	 * If async is true, all thread-safe validators will run in the background validation thread,
-	 * and all other validators will run in the main thread. If async is false, all validators will
-	 * run in the main thread.
-	 */
-	public EnabledIncrementalValidatorsOperation(IProject project, IResourceDelta delta, int ruleGroup, boolean async) {
-		super(project, ruleGroup, shouldForce(delta), async);
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			setEnabledValidators(InternalValidatorManager.wrapInSet(prjp.getEnabledIncrementalValidators(true)));
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			if (e.getTargetException() != null)
-				ValidationPlugin.getPlugin().handleException(e.getTargetException());
-
-		}
-		setDelta(delta);
-	}
-
-	/**
-	 * IProject must exist, be open, and contain all of the resources in changedResources. If some
-	 * of the resources in changedResources belong to different projects, the result is undefined.
-	 * 
-	 * If changedResources is null, a full validation of the project using only the incremental
-	 * validators is performed. If changedResources is not null, all enabled incremental validators
-	 * that validate resources in the changedResources array will validate those resources.
-	 * 
-	 * If async is true, all thread-safe validators will run in the background validation thread,
-	 * and all other validators will run in the main thread. If async is false, all validators will
-	 * run in the main thread.
-	 */
-	public EnabledIncrementalValidatorsOperation(IResource[] changedResources,IWorkbenchContext aWorkbenchContext, IProject project, boolean async) {
-		super(project, RegistryConstants.ATT_RULE_GROUP_DEFAULT, shouldForce(changedResources), async);
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			setEnabledValidators(InternalValidatorManager.wrapInSet(prjp.getEnabledIncrementalValidators(true)));
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			if (e.getTargetException() != null)
-				ValidationPlugin.getPlugin().handleException(e.getTargetException());
-
-		}
-		//construct an array of IFileDelta[] to wrap the Object[]; one IFileDelta for each Object in the array
-		setFileDeltas(FilterUtil.getFileDeltas(getEnabledValidators(), changedResources, false));
-		setContext(aWorkbenchContext);
-	}
-	
-	/**
-	 * IProject must exist, be open, and contain all of the resources in changedResources. If some
-	 * of the resources in changedResources belong to different projects, the result is undefined.
-	 * 
-	 * If changedResources is null, a full validation of the project using only the incremental
-	 * validators is performed. If changedResources is not null, all enabled incremental validators
-	 * that validate resources in the changedResources array will validate those resources.
-	 * 
-	 * If async is true, all thread-safe validators will run in the background validation thread,
-	 * and all other validators will run in the main thread. If async is false, all validators will
-	 * run in the main thread.
-	 */
-	public EnabledIncrementalValidatorsOperation(IResource[] changedResources,IProject project, boolean async) {
-		super(project, RegistryConstants.ATT_RULE_GROUP_DEFAULT, shouldForce(changedResources), async);
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			setEnabledValidators(InternalValidatorManager.wrapInSet(prjp.getEnabledIncrementalValidators(true)));
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			if (e.getTargetException() != null)
-				ValidationPlugin.getPlugin().handleException(e.getTargetException());
-
-		}
-		//construct an array of IFileDelta[] to wrap the Object[]; one IFileDelta for each Object in the array
-		setFileDeltas(FilterUtil.getFileDeltas(getEnabledValidators(), changedResources, false));
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/EnabledValidatorsOperation.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/EnabledValidatorsOperation.java
deleted file mode 100644
index 9b8afb3..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/EnabledValidatorsOperation.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.validation.internal.RegistryConstants;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-
-
-/**
- * Implemented Validators must not be called directly by anyone other than instances of
- * ValidationOperation, because some initialization of the validator, and handling of error
- * conditions, is done in the operation. The initialization is separated because some of the
- * information needed to initialize the validator (i.e., the project) isn't known until runtime.
- * 
- * Instances of this operation run every enabled validator (both full and incremental) on the
- * project.
- * 
- * This operation is not intended to be subclassed outside of the validation framework.
- */
-public class EnabledValidatorsOperation extends ValidatorSubsetOperation {
-	
-
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use EnabledValidatorsOperation(IProject, boolean)
-	 */
-	public EnabledValidatorsOperation(IProject project) {
-		this(project, DEFAULT_ASYNC);
-	}
-
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use EnabledValidatorsOperation(IProject, int,
-	 *             boolean, boolean)
-	 */
-	public EnabledValidatorsOperation(IProject project, int ruleGroup) {
-		this(project, ruleGroup, DEFAULT_FORCE, DEFAULT_ASYNC);
-	}
-
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use EnabledValidatorsOperation(IProject, int,
-	 *             boolean, boolean)
-	 */
-	public EnabledValidatorsOperation(IProject project, int ruleGroup, boolean force) {
-		this(project, ruleGroup, force, DEFAULT_ASYNC);
-	}
-
-	/**
-	 * Run all enabled validators on the project.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all validators implementing IValidatorJob interface 
-	 * in the background validation thread, if async is false, it would run in the main thread. 
-	 * All validators implementing IValidator interface will run in in the main thread regardless of this flag.
-	 */
-	public EnabledValidatorsOperation(IProject project, boolean async) {
-		this(project, RegistryConstants.ATT_RULE_GROUP_DEFAULT, DEFAULT_FORCE, async);
-	}
-	
-	/**
-	 * Run all enabled validators on the project.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all validators implementing IValidatorJob interface 
-	 * in the background validation thread, if async is false, it would run in the main thread. 
-	 * All validators implementing IValidator interface will run in in the main thread regardless of this flag.
-	 */
-	public EnabledValidatorsOperation(IProject project, IWorkbenchContext aWorkbenchContext, boolean async) {
-		this(project, aWorkbenchContext, RegistryConstants.ATT_RULE_GROUP_DEFAULT, DEFAULT_FORCE, async);
-	}
-	
-	/**
-	 * Run all enabled validators on the project with the identified ruleGroup.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all validators implementing IValidatorJob interface 
-	 * in the background validation thread, if async is false, it would run in the main thread. 
-	 * All validators implementing IValidator interface will run in in the main thread regardless of this flag.
-	 */
-	public EnabledValidatorsOperation(IProject project, IWorkbenchContext aWorkbenchContext, int ruleGroup, boolean force, boolean async) {
-		this(project, aWorkbenchContext, ValidatorManager.getManager().getEnabledValidators(project), ruleGroup, force, async);
-	}
-	
-
-	/**
-	 * Run all enabled validators on the project with the identified ruleGroup.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all validators implementing IValidatorJob interface 
-	 * in the background validation thread, if async is false, it would run in the main thread. 
-	 * All validators implementing IValidator interface will run in in the main thread regardless of this flag.
-	 */
-	public EnabledValidatorsOperation(IProject project, int ruleGroup, boolean force, boolean async) {
-		this(project, ValidatorManager.getManager().getEnabledValidators(project), ruleGroup, force, async);
-	}
-
-	/**
-	 * Run the identified validators on the project.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all validators implementing IValidatorJob interface 
-	 * in the background validation thread, if async is false, it would run in the main thread. 
-	 * All validators implementing IValidator interface will run in in the main thread regardless of this flag.
-	 */
-	protected EnabledValidatorsOperation(IProject project, Set<ValidatorMetaData> enabledValidators, boolean async) {
-		this(project, enabledValidators, RegistryConstants.ATT_RULE_GROUP_DEFAULT, DEFAULT_FORCE, async); 
-		// true = force validation to run whether or not auto-validate is on
-	}
-	
-	/**
-	 * Run the identified validators on the project.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all validators implementing IValidatorJob interface 
-	 * in the background validation thread, if async is false, it would run in the main thread. 
-	 * All validators implementing IValidator interface will run in in the main thread regardless of this flag.
-	 */
-	protected EnabledValidatorsOperation(IProject project,IWorkbenchContext aWorkbenchContext, 
-		Set<ValidatorMetaData> enabledValidators, boolean async) {
-		this(project,aWorkbenchContext, enabledValidators, RegistryConstants.ATT_RULE_GROUP_DEFAULT, DEFAULT_FORCE, async); 
-		// true = force validation to run whether or not auto-validate is on
-	}
-
-	/**
-	 * Run the identified validators on the project with the ruleGroup.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all validators implementing IValidatorJob interface 
-	 * in the background validation thread, if async is false, it would run in the main thread. 
-	 * All validators implementing IValidator interface will run in in the main thread regardless of this flag.
-	 */
-	protected EnabledValidatorsOperation(IProject project, Set<ValidatorMetaData> enabledValidators, 
-		int ruleGroup, boolean force, boolean async) {
-		
-		super(project, force, ruleGroup, async);
-		setEnabledValidators(enabledValidators);
-	}
-	
-	/**
-	 * Run the identified validators on the project with the ruleGroup.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all validators implementing IValidatorJob interface 
-	 * in the background validation thread, if async is false, it would run in the main thread. 
-	 * All validators implementing IValidator interface will run in in the main thread regardless of this flag.
-	 */
-	protected EnabledValidatorsOperation(IProject project, IWorkbenchContext aWorkbenchContext, 
-		Set<ValidatorMetaData> enabledValidators, int ruleGroup, boolean force, boolean async) {
-		super(project,aWorkbenchContext,force, ruleGroup, async);
-		setEnabledValidators(enabledValidators);
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/IResourceUtil.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/IResourceUtil.java
deleted file mode 100644
index d0a34bf..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/IResourceUtil.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-
-/**
- * This type is not intended to be extended by clients.
- */
-public interface IResourceUtil {
-	/**
-	 * Return the line number where the Object is located.
-	 */
-	public int getLineNo(Object obj);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/IRuleGroup.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/IRuleGroup.java
deleted file mode 100644
index 1c2ad11..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/IRuleGroup.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-/**
- * This type represents a group of rules which a validator checks. For now, the only grouping is by
- * speed: if a set of rules can be checked quickly, it will be included in the PASS_FAST group,
- * otherwise, it is grouped in the PASS_FULL group.
- * 
- * In future, this could be extended to include severities. To be able to group by severity helps
- * with the MessageLimitException. A validator should report errors first, and then warnings, and
- * then infos, in order to avoid the message limit being reached before the most severe problems are
- * reported.
- */
-public interface IRuleGroup {
-	// The following filters are used to identify a group of validation checks.
-
-	// retrieves the type of pass, from the IValidationContext, which the validator should execute
-	public static final String PASS_LEVEL = "PASS_LEVEL"; //$NON-NLS-1$
-
-	// On the FAST_PASS, the validator should check the rules which do not
-	// take much time to check, and exclude the rules which are valid only
-	// before some action (e.g. exporting or deploying).
-	// 
-	// The severity of the messages is irrelevant.
-	public static final int PASS_FAST = 0x1;
-	public static final String PASS_FAST_NAME = "fast"; //$NON-NLS-1$ // In plugin.xml, identify this pass by this constant
-
-	// On the FULL_PASS, the validator should check everything. This is the default.
-	public static final int PASS_FULL = 0x2 | PASS_FAST;
-	public static final String PASS_FULL_NAME = "full"; //$NON-NLS-1$ // In plugin.xml, identify this pass by this constant
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/IWorkbenchContext.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/IWorkbenchContext.java
deleted file mode 100644
index 2ee4b60..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/IWorkbenchContext.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.wst.validation.internal.provisional.core.IProjectValidationContext;
-
-/**
- * In the eclipse environment, not only does the IValidationContext need to be able to load the MOF model, it
- * also needs to load items from the eclipse workbench. This interface should be extended by
- * workbench IHelpers, so that items can be added to, and from, the task list.
- */
-public interface IWorkbenchContext extends IProjectValidationContext {
-	/**
-	 * When the validation is complete, this method will be called so that the IWorkbenchContext can
-	 * clean up any resources it allocated during the validation.
-	 * 
-	 * If the cleanup is a long-running operation, subtask messages should be sent to the IReporter.
-	 */
-	void cleanup(WorkbenchReporter reporter);
-
-	/**
-	 * When the IProject is closing, perform any cleanup that needs to be done. When this method is
-	 * called, if the helper has cached any resources from the IProject, it should release those
-	 * resources. If you do not allocate resources in your helper, then this method should be a
-	 * no-op.
-	 */
-	void closing();
-
-	/**
-	 * When the IProject is being deleted, perform any cleanup that needs to be done. When this
-	 * method is called, if the helper has cached any resources from the IProject, it should release
-	 * those resources. If you do not allocate resources in your helper, then this method should be
-	 * a no-op.
-	 */
-	void deleting();
-
-	/**
-	 * Given an Object, if the object has a corresponding IFile in the workbench, return the IFile.
-	 * Otherwise return null.
-	 * 
-	 * This method is used by the WorkbenchReporter. In eclipse, in order to add or remove a task
-	 * list entry, the IResource, to which the entry applies, must be identified. The IReporter
-	 * interface passes in an Object in these methods:
-	 * 
-	 * addValidationMessage(IValidator, IMessage) // Object is a part of IMessage
-	 * 
-	 * removeAllMessages(IValidator, Object),
-	 * 
-	 * Thus, the WorkbenchReporter needs to know how, given the Object, which IFile that the Object
-	 * represents in the workbench, in order to be able to add the task list entry.
-	 * 
-	 * If this method returns null, then the WorkbenchReporter will add the message to the IProject
-	 * instead of an IFile.
-	 * 
-	 * @deprecated Implement getResource(Object) instead.
-	 */
-	IFile getFile(Object object);
-
-	/**
-	 * Given an Object, if the object has a corresponding IResource in the workbench, return the
-	 * IResourcee. Otherwise return null.
-	 * 
-	 * This method is used by the WorkbenchReporter. In eclipse, in order to add or remove a task
-	 * list entry, the IResource, to which the entry applies, must be identified. The IReporter
-	 * interface passes in an Object in these methods:
-	 * 
-	 * addValidationMessage(IValidator, IMessage) // Object is a part of IMessage
-	 * 
-	 * removeAllMessages(IValidator, Object),
-	 * 
-	 * Thus, the WorkbenchReporter needs to know how, given the Object, which IFile that the Object
-	 * represents in the workbench, in order to be able to add the task list entry.
-	 * 
-	 * If this method returns null, then the WorkbenchReporter will add the message to the IProject
-	 * instead of an IResource.
-	 */
-	IResource getResource(Object object);
-
-	/**
-	 * Given an IMessage's target object, return the line number, of the IFile, which the target
-	 * object represents, if possible. If the object is null, or if access to line numbers is not
-	 * possible, return a text description of the location.
-	 * 
-	 * This method will be called whether or not the IResource is an IFile, IFolder, or IProject.
-	 * Line numbers are valid only for IFile types; if the resource is not an IFile, then a text
-	 * description of the location must be returned.
-	 */
-	String getLocation(Object object);
-
-	/**
-	 * Return the name of the resource, without the project-specific information in front.
-	 * <p>
-	 * This method is used by ValidationOperation to calculate the non-environment specific names of
-	 * the files. Only the IWorkbenchContext implementation knows how much information to strip off
-	 * of the IResource name. For example, if there is an EJB Project named "MyEJBProject", and it
-	 * uses the default names for the source and output folders, "source" and "ejbModule",
-	 * respectively, then the current implementation of EJB Helper knows how much of that structure
-	 * is eclipse-specific.
-	 * </p><p>
-	 * Since the "source" folder contains Java source files, a portable name would be the
-	 * fully-qualified name of the Java class, without the eclipse-specific project and folder names
-	 * in front of the file name. The EJBHelper knows that everything up to the "source" folder, for
-	 * example, can be removed, because, according to the definition of the EJB Project, everything
-	 * contained in the source folder is java source code. So if there is an IResource in an EJB
-	 * Project named "/MyEJBProject/source/com/ibm/myclasses/MyJavaFile.java", this method would
-	 * make this name portable by stripping off the "/MyEJBProject/source", and returning
-	 * "com/ibm/myclasses/MyJavaFile.java".
-	 * </p><p>
-	 * The output of this method is used by the ValidationOperation, when it is calculating the list
-	 * of added/changed/deleted file names for incremental validation. If getPortableName(IResource)
-	 * returns null, that means that the IWorkbenchContext's implementation does not support that
-	 * particular type of resource, and the resource should not be included in the array of
-	 * IFileDelta objects in the IValidator's "validate" method.
-	 * </p>
-	 */
-	String getPortableName(IResource resource);
-
-	/**
-	 * Return the IProject which is about to be validated. Each IWorkbenchContext knows how to
-	 * traverse a certain type of IProject, for example, an EJB project or a web project.
-	 */
-	IProject getProject();
-
-	/**
-	 * When an IValidator associates a target object with an IMessage, the WorkbenchReporter
-	 * eventually resolves that target object with an IResource. Sometimes more than one target
-	 * object resolves to the same IResource (usually the IProject, which is the default IResource
-	 * when an IFile cannot be found). This method is called, by the WorkbenchReporter, so that the
-	 * WorkbenchReporter can distinguish between the IMessages which are on the same IResource, but
-	 * refer to different target objects. This is needed for the removeAllMessages(IValidator,
-	 * Object) method, so that when one target object removes all of its messages, that it doesn't
-	 * remove another target object's messages.
-	 * 
-	 * This method may return null only if object is null. Otherwise, an id which can uniquely
-	 * identify a particular object must be returned. The id needs to be unique only within one
-	 * particular IValidator.
-	 */
-	String getTargetObjectName(Object object);
-
-	/**
-	 * Whether full or incremental validation is running, this method will be called, by the
-	 * Validation Framework, for every IResource which is filtered in by the IValidator, so that the
-	 * IValidationContext can receive notification that one of the resources, which validation will run on, is
-	 * being filtered in.
-	 */
-	void registerResource(IResource resource);
-
-	/**
-	 * This method is called by the Validation Framework, to initialize the IWorkbenchContext so that
-	 * it can gather information from the current project.
-	 */
-	void setProject(IProject project);
-
-	/**
-	 * Notifies this IWorkbenchContext that the Validation Framework is shutting down. There will be
-	 * calls to closing(IProject) and possibly deleting(IProject) following this call, but the
-	 * resources may already be closed by the time that those methods are called, so EVERYTHING
-	 * should be cleaned up in this method. The parameter passed in is the project which is about to
-	 * shut down. This method will be called once for every IProject in the workbench. The IProject
-	 * may, or may not, be closed.
-	 */
-	void shutdown();
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/LocalizedMessage.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/LocalizedMessage.java
deleted file mode 100644
index 9b03057..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/LocalizedMessage.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import java.util.Locale;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.wst.validation.internal.core.Message;
-
-/**
- * This class is provided for validators which run only in UI and whose messages, because they
- * come from another tool, are already localized. LocalizedMessage cannot be used by any validator
- * which needs to run in both WebSphere and WSAD.
- */
-public class LocalizedMessage extends Message {
-	private String _message;
-
-	public LocalizedMessage(int severity, String messageText) {
-		this(severity, messageText, null);
-	}
-
-	public LocalizedMessage(int severity, String messageText, IResource targetObject) {
-		this(severity, messageText, (Object) targetObject);
-	}
-
-	public LocalizedMessage(int severity, String messageText, Object targetObject) {
-		super(null, severity, null);
-		setLocalizedMessage(messageText);
-		setTargetObject(targetObject);
-	}
-
-	public void setLocalizedMessage(String message) {
-		_message = message;
-	}
-
-	public String getLocalizedMessage() {
-		return _message;
-	}
-
-	public String getText() {
-		return getLocalizedMessage();
-	}
-
-	public String getText(ClassLoader cl) {
-		return getLocalizedMessage();
-	}
-
-	public String getText(Locale l) {
-		return getLocalizedMessage();
-	}
-
-	public String getText(Locale l, ClassLoader cl) {
-		return getLocalizedMessage();
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ManualIncrementalValidatorsOperation.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ManualIncrementalValidatorsOperation.java
deleted file mode 100644
index 59d5f0f..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ManualIncrementalValidatorsOperation.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.validation.internal.FilterUtil;
-
-
-/**
- * 
- * This operation is not intended to be subclassed outside of the validation framework.
- */
-public class ManualIncrementalValidatorsOperation extends ManualValidatorsOperation {
-
-	public ManualIncrementalValidatorsOperation(IProject project) {
-		super( project );
-	}	
-	public ManualIncrementalValidatorsOperation(IProject project, Object[] changedResources) {
-		super( project, changedResources );
-		setFileDeltas( FilterUtil.getFileDeltas(getEnabledValidators(), changedResources, false) );
-	}	
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ManualValidatorsOperation.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ManualValidatorsOperation.java
deleted file mode 100644
index 03a0bf2..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ManualValidatorsOperation.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.validation.internal.RegistryConstants;
-
-
-/**
- * Implemented Validators must not be called directly by anyone other than instances of
- * ValidationOperation, because some initialization of the validator, and handling of error
- * conditions, is done in the operation. The initialization is separated because some of the
- * information needed to initialize the validator (i.e., the project) isn't known until runtime.
- * <p>
- * Instances of this operation run every enabled validator (both full and incremental) on the
- * project.
- * </p>
- * <p>
- * This operation is not intended to be subclassed outside of the validation framework.
- * </p>
- */
-public class ManualValidatorsOperation extends ValidatorSubsetOperation {
-
-	public ManualValidatorsOperation(IProject project) {
-		super(project, DEFAULT_FORCE, RegistryConstants.ATT_RULE_GROUP_DEFAULT, true);
-		setEnabledValidators(ValidatorManager.getManager().getManualEnabledValidators(project));
-	}	
-	public ManualValidatorsOperation(IProject project, Object[] changedResources) {
-		super(project, shouldForce(changedResources), RegistryConstants.ATT_RULE_GROUP_DEFAULT, true);
-		setEnabledValidators(ValidatorManager.getManager().getManualEnabledValidators(project));
-	}	
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/MessageInfo.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/MessageInfo.java
deleted file mode 100644
index 16b93c0..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/MessageInfo.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.validation.internal.operations;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-
-public class MessageInfo {
-
-	private String		messageOwnerId;	
-	private IResource	resource;
-	private String		location;	
-	private String		text;
-	private String		targetObjectName;	
-	private String		markerId;	
-	private IMessage	msg;
-	
-	public MessageInfo(){		
-	}
-	
-	public MessageInfo(String messageOwnerId, IResource resource, String location, 
-		String text, String targetObjectName, String markerId, IMessage msg){
-		
-		this.messageOwnerId = messageOwnerId;	
-		this.resource = resource;
-		this.location = location;	
-		this.text = text;
-		this.targetObjectName = targetObjectName;	
-		this.markerId = markerId;	
-		this.msg = msg;
-	}	
-
-	public String getLocation() {
-		return location;
-	}
-
-	public void setLocation(String location) {
-		this.location = location;
-	}
-
-	public String getMarkerId() {
-		return markerId;
-	}
-
-	public void setMarkerId(String markerId) {
-		this.markerId = markerId;
-	}
-
-	public String getMessageOwnerId() {
-		return messageOwnerId;
-	}
-
-	public void setMessageOwnerId(String messageOwnerId) {
-		this.messageOwnerId = messageOwnerId;
-	}
-
-	public IMessage getMsg() {
-		return msg;
-	}
-
-	public void setMsg(IMessage msg) {
-		this.msg = msg;
-	}
-
-	public IResource getResource() {
-		return resource;
-	}
-
-	public void setResource(IResource resource) {
-		this.resource = resource;
-	}
-
-	public String getTargetObjectName() {
-		return targetObjectName;
-	}
-
-	public void setTargetObjectName(String targetObjectName) {
-		this.targetObjectName = targetObjectName;
-	}
-
-	public String getText() {
-		return text;
-	}
-
-	public void setText(String text) {
-		this.text = text;
-	}
-	
-	@Override
-	public String toString() {
-		if (text != null)return "MessageInfo: " + text; //$NON-NLS-1$
-		return super.toString();
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/OneValidatorOperation.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/OneValidatorOperation.java
deleted file mode 100644
index 99d359b..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/OneValidatorOperation.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.validation.internal.RegistryConstants;
-import org.eclipse.wst.validation.internal.ValidationRegistryReader;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-
-
-/**
- * Implemented Validators must not be called directly by anyone other than instances of
- * ValidationOperation, because some initialization of the validator, and handling of error
- * conditions, is done in the operation. The initialization is separated because some of the
- * information needed to initialize the validator (i.e., the project) isn't known until runtime.
- * 
- * This operation runs a single validator on a project.
- * 
- * This operation is not intended to be subclassed outside of the validation framework.
- */
-public class OneValidatorOperation extends ValidatorSubsetOperation {
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use OneValidatorOperation(project, validatorId,
-	 *             boolean, boolean)
-	 */
-	public OneValidatorOperation(IProject project, String validatorId) throws IllegalArgumentException {
-		this(project, validatorId, DEFAULT_FORCE, DEFAULT_ASYNC);
-	}
-
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use OneValidatorOperation(project, validatorId,
-	 *             boolean, boolean)
-	 */
-	public OneValidatorOperation(IProject project, String validatorId, boolean force) throws IllegalArgumentException {
-		this(project, validatorId, force, DEFAULT_ASYNC);
-	}
-
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use OneValidatorOperation(IProject, String,
-	 *             boolean, int, boolean)
-	 */
-	public OneValidatorOperation(IProject project, String validatorId, boolean force, int ruleGroup) throws IllegalArgumentException {
-		this(project, validatorId, force, ruleGroup, DEFAULT_ASYNC);
-	}
-
-	/**
-	 * @param validatorId
-	 *            The plugin id of the validator which you wish to run.
-	 * @param force
-	 *            If the value is "true", the validator should be run regardless of what the
-	 *            environment settings are; if the value is "false", this operation should be run
-	 *            only if the validation builder will not run the validator.
-	 * 
-	 * IllegalArgumentException will be thrown if the named validator is not configured on the
-	 * project.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all thread-safe validators in the background
-	 * validation thread, and all other validators in the main thread. If async is false, all
-	 * validators will run in in the main thread.
-	 */
-	public OneValidatorOperation(IProject project, String validatorId, boolean force, boolean async) throws IllegalArgumentException {
-		this(project, validatorId, force, RegistryConstants.ATT_RULE_GROUP_DEFAULT, async);
-	}
-
-	/**
-	 * OneValidatorOperation constructor comment.
-	 * 
-	 * @param project
-	 *            The project to be validated. It must exist and be open.
-	 * @param validatorId
-	 *            The plug-in id of the validator which you wish to run.
-	 * @param force
-	 *            If the value is "true", the validator should be run regardless
-	 *            of what the environment settings are; if the value is "false",
-	 *            this operation should be run only if the validation builder
-	 *            will not run the validator.
-	 * @param ruleGroup
-	 *            Whether a FULL or FAST pass should be invoked.
-	 * @param async
-	 *            If async is true, the validation will run all thread-safe
-	 *            validators in the background validation thread, and all other
-	 *            validators in the main thread. If async is false, all
-	 *            validators will run in in the main thread.
-	 * 
-	 * IllegalArgumentException will be thrown if the named validator is not
-	 * configured on the project.
-	 * 
-	 */
-	public OneValidatorOperation(IProject project, String validatorId, boolean force, int ruleGroup, boolean async) throws IllegalArgumentException {
-		super(project, force, ruleGroup, async);
-
-		ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validatorId);
-		if (vmd == null) {
-			// No validator, with that plug-in id, can be run on that project.
-			// Either the validator isn't installed, or the IProject passed in
-			// doesn't have the necessary nature.
-			throw new IllegalArgumentException(validatorId);
-		}
-
-		if (!vmd.isConfiguredOnProject(project)) {
-			// No validator, with that plug-in id, can be run on that project.
-			// Either the validator isn't installed, or the IProject passed in
-			// doesn't have the necessary nature.
-			throw new IllegalArgumentException(validatorId);
-		}
-
-		Set<ValidatorMetaData> enabled = new HashSet<ValidatorMetaData>();
-		enabled.add(vmd);
-		setEnabledValidators(enabled);
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ReferencialFileValidator.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ReferencialFileValidator.java
deleted file mode 100644
index c15609c..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ReferencialFileValidator.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on May 3, 2004
- *
- * To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.validation.internal.operations;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-
-/**
- * @author vijayb
- */
-public interface ReferencialFileValidator {
-	
-	/**
-	 * Answer the referenced files.
-	 * 
-	 * @param inputFiles
-	 * @return a list of IFile's.
-	 */
-	public List<IFile> getReferencedFile(List inputFiles);
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ReferencialFileValidatorHelper.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ReferencialFileValidatorHelper.java
deleted file mode 100644
index 99d66e1..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ReferencialFileValidatorHelper.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-/*
- * Created on May 4, 2004
- *
- * To change the template for this generated file go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-package org.eclipse.wst.validation.internal.operations;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * @author vijayb
- */
-public class ReferencialFileValidatorHelper {
-	public ReferencialFileValidatorHelper() {
-	}
-
-	/**
-	 * Return a list of all files contained in project to infinite depth
-	 */
-	public static List<IFile> getAllProjectFiles(IProject project) {
-		List<IFile> result = new ArrayList<IFile>();
-		if (project == null)return result;
-		
-		try {
-			result = collectFiles(project.members(), result);
-		} catch (CoreException e) {
-			//Ignore
-		}
-		return result;
-	}
-
-	private static List<IFile> collectFiles(IResource[] members, List<IFile> result) throws CoreException {
-		// recursively collect files for the given members
-		for (IResource res : members) {
-			if (res instanceof IFolder)collectFiles(((IFolder) res).members(), result);
-			else if (res instanceof IFile)result.add((IFile)res);
-		}
-		return result;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ResourceHandler.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ResourceHandler.java
deleted file mode 100644
index 8e942ea..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ResourceHandler.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-
-/**
- * @deprecated For use by the validation framework only. This class retrieves the Strings from the
- *             .properties file appropriate for the machine's Locale.
- */
-public final class ResourceHandler extends org.eclipse.wst.validation.internal.ResourceHandler {
-	//Default
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/TaskListHelper.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/TaskListHelper.java
deleted file mode 100644
index 8532dc1..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/TaskListHelper.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.internal.TaskListUtility;
-
-
-
-/**
- * @deprecated This class is intended to be used only by the validation framework. The
- *             TaskListHelper class will be removed in Milestone 4.
- */
-public class TaskListHelper {
-	private static TaskListHelper _taskListHelper = null;
-
-	public static TaskListHelper getTaskList() {
-		if (_taskListHelper == null) {
-			_taskListHelper = new TaskListHelper();
-		}
-		return _taskListHelper;
-	}
-
-	/**
-	 * This method adds a message to a resource in the task list.
-	 */
-	public void addTask(String pluginId, IResource resource, String location, String messageId, String message, int markerType, String targetObjectName, String groupName, int offset, int length) throws CoreException {
-		TaskListUtility.addTask(pluginId, resource, location, messageId, message, markerType, targetObjectName, groupName, offset, length);
-	}
-
-
-	public IMarker[] getValidationTasks(int severity, IProject project) {
-		return TaskListUtility.getValidationTasks(severity, project);
-	}
-
-	public IMarker[] getValidationTasks(IResource resource, int severity) {
-		return TaskListUtility.getValidationTasks(resource, severity);
-	}
-
-	public IMarker[] getValidationTasks(IResource resource, String messageOwner) {
-		return TaskListUtility.getValidationTasks(resource, messageOwner);
-	}
-
-	public IMarker[] getValidationTasks(IResource resource, String[] messageOwners) {
-		return TaskListUtility.getValidationTasks(resource, messageOwners);
-	}
-
-	/**
-	 * Remove all validation messages from the resource and its children.
-	 */
-	public void removeAllTasks(IResource resource) {
-		TaskListUtility.removeAllTasks(resource);
-	}
-
-	/**
-	 * This method removes all tasks from the resource. If the resource is an IProject, all tasks
-	 * are also removed from the project's children.
-	 */
-	public void removeAllTasks(IResource resource, String[] owners) throws CoreException {
-		TaskListUtility.removeAllTasks(resource, owners);
-	}
-
-	/**
-	 * This method removes all messages from a resource in the task list.
-	 */
-	public void removeAllTasks(IResource resource, String owner, String objectName) throws CoreException {
-		TaskListUtility.removeAllTasks(resource, owner, objectName);
-	}
-
-	public void removeAllTasks(IResource resource, String[] owners, String objectName) throws CoreException {
-		TaskListUtility.removeAllTasks(resource, owners, objectName);
-	}
-
-	/**
-	 * This method removes a subset of tasks from the project, including child tasks. Every task
-	 * which belongs to the group, identified by groupName, will be removed.
-	 */
-	public void removeTaskSubset(IResource resource, String[] owners, String objectName, String groupName) throws CoreException {
-		TaskListUtility.removeTaskSubset(resource, owners, objectName, groupName);
-	}
-
-	/**
-	 * This method changes all validator markers which are owned by "from" to make their owner "to".
-	 */
-	public void updateOwner(String from, String to) throws CoreException {
-		TaskListUtility.updateOwner(from, to);
-	}
-
-	/**
-	 * This method changes all validator markers on the IResource and its children. All markers
-	 * owned by "from" have their owner reassigned to "to".
-	 */
-	public void updateOwner(String from, String to, IResource resource) throws CoreException {
-		TaskListUtility.updateOwner(from, to, resource);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationBuilder.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationBuilder.java
deleted file mode 100644
index 5bb1c28..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationBuilder.java
+++ /dev/null
@@ -1,303 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.validation.ValidationFramework;
-import org.eclipse.wst.validation.internal.ConfigurationManager;
-import org.eclipse.wst.validation.internal.InternalValidatorManager;
-import org.eclipse.wst.validation.internal.ProjectConfiguration;
-import org.eclipse.wst.validation.internal.ResourceConstants;
-import org.eclipse.wst.validation.internal.ResourceHandler;
-import org.eclipse.wst.validation.internal.Tracing;
-import org.eclipse.wst.validation.internal.ValBuilderJob;
-import org.eclipse.wst.validation.internal.ValManager;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * Validation Framework Builder.
- * <p>
- * This builder is configured on J2EE IProjects automatically, and can be added to other types of
- * projects through the Properties page. It launches validation on the project if the project has
- * build validation enabled.
- * </p>
- * <p>
- * This launches a Job for the new V2 validators and also a Job for each of the Job based V1
- * validators. If there are any "in-line" V1 validations they are done as part of this builder.
- * Because of all the jobs that this builder spawns, the build will usually be finished long before
- * all the validation has finished.
- * </p>
- */
-public class ValidationBuilder extends IncrementalProjectBuilder {
-	/*
-	 * GRK - This class serves as a main entry point into the framework. There is one instance of this class for every
-	 * project that has a validation builder configured for it. Typically if you had ten projects in your workspace you would have
-	 * ten of these objects. They are created early in the life cycle of the workbench, and then are reused. 
-	 * 
-	 * My observation was that they are run serially by the same thread.
-	 */
-	public static final int NO_DELTA_CHANGE = -1;
-	protected List<IProject> referencedProjects;
-	protected IWorkbenchContext workbenchContext = null;
-	
-	/** 
-	 * All the jobs that the validation framework spawns will belong to this family. 
-	 */
-	public static final Object FAMILY_VALIDATION_JOB = new Object();
-	
-	public ValidationBuilder() {
-	}
-
-	private IProject[] getAllReferencedProjects(IProject project, Set<IProject> visitedProjects) {
-		if (visitedProjects == null)visitedProjects = new HashSet<IProject>();
-		else if (visitedProjects.contains(project))return getReferencedProjects();
-		else visitedProjects.add(project);
-		
-		if (referencedProjects == null)referencedProjects = new ArrayList<IProject>();
-		try {
-			if (project.isAccessible()) {
-				IProject[] refProjArray = project.getReferencedProjects();
-				collectReferecedProject(refProjArray);
-				for (IProject refProject : refProjArray) {
-					getAllReferencedProjects(refProject, visitedProjects);
-				}
-			}
-			return getReferencedProjects();
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		return null;
-	}
-	
-	public IWorkbenchContext getWorkbenchContext() {
-		if(workbenchContext == null) {
-			workbenchContext = new WorkbenchContext();
-			workbenchContext.setProject(getProject());
-		}
-		return workbenchContext;
-	}
-
-	/**
-	 * Add the projects from refProjArray to the list of referenced projects (if they are not
-	 * already in the list).
-	 * @param refProjArray
-	 */
-	private void collectReferecedProject(IProject[] refProjArray) {
-		for (IProject project : refProjArray) {
-			if (!referencedProjects.contains(project))referencedProjects.add(project);
-		}
-	}
-
-	protected void clean(IProgressMonitor monitor) throws CoreException {
-		IProject currentProject = getProject();
-		Tracing.log("ValidationBuilder-02 clean ", currentProject); //$NON-NLS-1$
-
-		newClean(monitor);
-		if (currentProject == null || !currentProject.isAccessible())return;
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(currentProject);
-			ValidatorMetaData[] vmds = prjp.getValidators();
-			for (int i = 0; i < vmds.length; i++) {
-				ValidatorMetaData vmd = vmds[i];
-				// For validators who aren't going to run, clear their messages from the task list.
-				// Don't need to check for duplicate entries because each Validator must be unique.
-				// The uniqueness of each Validator is checked by the plugin registry.
-				WorkbenchReporter.removeAllMessages(currentProject, vmd.getValidatorNames(), null);
-			}
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-		}
-
-	}
-
-	private IProject[] getReferencedProjects() {
-		IProject[] refProjArray = new IProject[referencedProjects.size()];
-		return referencedProjects.toArray(refProjArray);
-	}
-	
-	@SuppressWarnings("unchecked")
-	public IProject[] build(int kind, Map parameters, IProgressMonitor monitor) {
-		IResourceDelta delta = null;
-		IProject project = getProject();
-		Tracing.log("ValidationBuilder-01 build ", kind, project);  //$NON-NLS-1$
-		if (Tracing.isLogging(1)){
-			Tracing.logResourceDeltas(getDelta(project), 50);
-		}
-		
-		// GRK I wonder why this builder needs to know about all the other referenced projects?
-		// won't they have builders of their own.
-		IProject[] referenced = getAllReferencedProjects(project, null);
-		if (ValidationFramework.getDefault().isSuspended(project) || 
-			ValManager.getDefault().isDisabled(project))return referenced;
-
-		try {
-			newBuild(kind, monitor);
-
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			delta = getDelta(project);
-			boolean doFullBuild = (kind == FULL_BUILD);
-			
-			// It is possible for kind to == AUTO_BUILD while delta is null
-			// (saw this when creating a project by copying another project.)
-			// However, a "Rebuild Project" will invoke this builder with
-			// kind==FULL_BUILD and a null delta, and validation should run in that case.
-			if (!doFullBuild && delta == null) {
-				if (isReferencedProjectInDelta(referenced)) {
-					performFullBuildForReferencedProjectChanged(monitor, prjp);
-				} else {
-					String[] msgParms = new String[]{project.getName()};
-					monitor.subTask(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_NULL_DELTA, msgParms));
-					// A null delta means that a full build must be performed,
-					// but this builder was invoked with an incremental or automatic
-					// build kind. Return without doing anything so that the user
-					// doesn't have to wait forever.
-				}
-				return referenced;
-			}
-			if (doFullBuild) {
-				cleanupReferencedProjectsMarkers(prjp, referenced);
-				performFullBuild(monitor, prjp);
-			} else {
-				if (delta.getAffectedChildren().length == 0) {
-					if (isReferencedProjectInDelta(referenced)){
-						cleanupReferencedProjectsMarkers(prjp, referenced);
-						performFullBuildForReferencedProjectChanged(monitor, prjp);
-					}
-					return referenced;
-				}
-				EnabledIncrementalValidatorsOperation operation = new EnabledIncrementalValidatorsOperation(project, delta, true);
-				operation.run(monitor);
-			}
-			return referenced;
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return referenced;
-		} catch (Exception e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return referenced;
-		} finally {
-			referencedProjects = null;
-		}
-	}
-	
-	private void cleanupReferencedProjectsMarkers(final ProjectConfiguration prjp, IProject[] referenced){
-		//When a project references one or more project, performing a clean build on referenced
-		//causes delta to be invoked on referencee, aka, parent. This causes following code to
-		//be invoked.
-		//The following code is trying to fix a case where Ejb project references a utility project,
-		//and the clean build on utility project causes the code to come here, the ejb validator runs
-		//on the ejb  project due to performFullBuildForReferencedProjectChanged() below, but it also
-		//causes marker to be generated for the util project, but the markers for util project are not
-		//cleaned up.   
-		
-		if( referenced == null || referenced.length == 0 )return;
-		
-		try{
-			ValidatorMetaData[] enabledValidators = prjp.getEnabledFullBuildValidators(true, false);
- 
-			Set<ValidatorMetaData>  set = new HashSet<ValidatorMetaData>();
-			set.addAll( Arrays.asList( enabledValidators ) );
-			for (IProject p : referenced) {
-				if (!p.isAccessible())continue;
-				ProjectConfiguration refProjectCfg = ConfigurationManager.getManager().getProjectConfiguration(p);
-		
-				ValidatorMetaData[] refEnabledValidators = refProjectCfg.getEnabledFullBuildValidators(true, false);
-				
-				//remove from the set the validators which are also in child
-				for(ValidatorMetaData vmd : refEnabledValidators)set.remove(vmd);
-				
-				for(ValidatorMetaData vmd : set)WorkbenchReporter.removeAllMessages(p, vmd.getValidator());		
-			}	
-		}catch (Exception exc) {
-			ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, exc.toString());
-	}
-}
-
-	private boolean isReferencedProjectInDelta(IProject[] referenced) {
-		IProject p = null;
-		for (int i = 0; i < referenced.length; i++) {
-			p = referenced[i];
-			IResourceDelta delta = getDelta(p);
-			if (delta != null && delta.getAffectedChildren().length > 0)
-				return true;
-		}
-		return false;
-	}
-
-	private void performFullBuildForReferencedProjectChanged(IProgressMonitor monitor, ProjectConfiguration prjp) throws InvocationTargetException {
-		performFullBuild(monitor, prjp, true);
-	}
-
-	private void performFullBuild(IProgressMonitor monitor, ProjectConfiguration prjp) throws InvocationTargetException {
-		performFullBuild(monitor, prjp, false);
-	}
-
-	private void performFullBuild(IProgressMonitor monitor, ProjectConfiguration prjp, boolean onlyDependentValidators) throws InvocationTargetException {
-		ValidatorMetaData[] enabledValidators = prjp.getEnabledFullBuildValidators(true, onlyDependentValidators);
-		if ((enabledValidators != null) && (enabledValidators.length > 0)) {
-			Set<ValidatorMetaData> enabledValidatorsSet = InternalValidatorManager.wrapInSet(enabledValidators);
-			EnabledValidatorsOperation op = new EnabledValidatorsOperation(getProject(), enabledValidatorsSet, true);
-			op.run(monitor);
-		}
-	}
-	
-	/**
-	 * Run the new validation builder. This is a transition method, while we continue to have
-	 * the old and new validation builders.
-	 * 
-	 * @param kind the kind of build
-	 * 
-	 * @see IncrementalProjectBuilder#AUTO_BUILD
-	 * @see IncrementalProjectBuilder#CLEAN_BUILD
-	 * @see IncrementalProjectBuilder#FULL_BUILD
-	 * @see IncrementalProjectBuilder#INCREMENTAL_BUILD
-	 */
-	private void newBuild(int kind, IProgressMonitor monitor)	throws CoreException {
-
-		IResourceDelta delta = null;
-		IProject project = getProject();
-		
-		switch (kind){
-			case AUTO_BUILD:
-			case INCREMENTAL_BUILD:
-				delta = getDelta(project);
-				break;
-		}
-		
-		ValBuilderJob.validateProject(project, delta, kind);		
-	}
-	
-	
-	/**
-	 * Run the new clean method. This is a transition method, while we continue to have
-	 * the old and new validation builders.
-	 */
-	private void newClean(IProgressMonitor monitor) throws CoreException {
-		ValManager.getDefault().clean(getProject(), monitor);
-	}	
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationConstants.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationConstants.java
deleted file mode 100644
index 260fa72..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationConstants.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-
-import org.eclipse.wst.validation.internal.ResourceConstants;
-
-/**
- * @deprecated For use by the validation framework only.
- * 
- * Constants used to access the string resources associated with the plugin.
- * 
- * See the plugin.properties file, in the plugin's directory, for the contents of the strings.
- */
-public interface ValidationConstants extends ResourceConstants {
-	//Default
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationOperation.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationOperation.java
deleted file mode 100644
index c9f7b53..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationOperation.java
+++ /dev/null
@@ -1,1460 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Queue;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.IJobChangeEvent;
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.core.runtime.jobs.JobChangeAdapter;
-import org.eclipse.wst.common.frameworks.internal.operations.IHeadlessRunnableWithProgress;
-import org.eclipse.wst.validation.ValidationFramework;
-import org.eclipse.wst.validation.internal.FilterUtil;
-import org.eclipse.wst.validation.internal.IProjectValidationHelper;
-import org.eclipse.wst.validation.internal.InternalValidatorManager;
-import org.eclipse.wst.validation.internal.ReferencialFileValidatorRegistryReader;
-import org.eclipse.wst.validation.internal.RegistryConstants;
-import org.eclipse.wst.validation.internal.ResourceConstants;
-import org.eclipse.wst.validation.internal.ResourceHandler;
-import org.eclipse.wst.validation.internal.TaskListUtility;
-import org.eclipse.wst.validation.internal.Tracing;
-import org.eclipse.wst.validation.internal.ValManager;
-import org.eclipse.wst.validation.internal.ValidationRegistryReader;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-import org.eclipse.wst.validation.internal.core.IFileDelta;
-import org.eclipse.wst.validation.internal.core.ValidationException;
-import org.eclipse.wst.validation.internal.core.ValidatorLauncher;
-import org.eclipse.wst.validation.internal.plugin.ValidationHelperRegistryReader;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IValidationContext;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-import org.eclipse.wst.validation.internal.provisional.core.IValidatorJob;
-
-/**
- * Validators must not be called directly by anyone other than this class, since
- * some initialization of the validator is done here (via the getProject() method). The
- * initialization is separated because the IProject isn't known until runtime.
- * <p>
- * This operation is not intended to be subclassed outside of the validation framework.
- * </p>
- */
-public abstract class ValidationOperation implements IWorkspaceRunnable, IHeadlessRunnableWithProgress {
-	// Since IResourceConstants don't have a "no delta" flag, let this constant be the flag.
-	public static final int NO_DELTA_CHANGE = -1; 
-	private static final String DELTA_AS_STRING = "IFileDelta[{0}] '{'{1}'}'"; //$NON-NLS-1$
-	private static final String COMMA = ", "; //$NON-NLS-1$
-	
-	// For the depreciated constructors, by default the operation will not fork. 
-	protected static final boolean DEFAULT_ASYNC = true;
-	
-	protected static final boolean DEFAULT_FORCE = true;
-	
-	private static ValidationLauncherJob launcherJob = new ValidationLauncherJob();
-	
-	private static final int jobsPerProcessor = 3;
-	
-	private final static class ValidationLauncherJob extends Job {
-	    private Queue<Job> _validationJobs = new LinkedList<Job>();
-	    
-	    public ValidationLauncherJob() {
-            super(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_VALIDATION_JOB_MSG));
-            setSystem(true);
-            setRule(ResourcesPlugin.getWorkspace().getRoot());
-	    }
-	    
-	    protected IStatus run(IProgressMonitor monitor) {
-			int processors = Runtime.getRuntime().availableProcessors();
-			int totalInitialJobs = processors * jobsPerProcessor;
-    		synchronized (_validationJobs) {
-    			// never schedule more than 3 validation jobs per processor at a time
-    			for (int i=0; i< totalInitialJobs; i++) {
-    				Job validationJob = _validationJobs.poll();
-    				if (validationJob == null) break;
-    				addJobChangeAdapter(validationJob);
-    				validationJob.schedule();
-    			}
-    		}
-            return Status.OK_STATUS;
-	    }
-	    
-	    private void addJobChangeAdapter(Job job) {
-	    	job.addJobChangeListener(new JobChangeAdapter(){
-	    		// when done, see if there is another validation job to schedule
-				public void done(IJobChangeEvent event) {
-					synchronized (_validationJobs) {
-						Job validationJob = _validationJobs.poll();
-						if (validationJob != null) {
-							addJobChangeAdapter(validationJob);
-							validationJob.schedule();
-						}
-					}
-				}
-			});
-	    }
-	    
-	    @Override
-	    public boolean belongsTo(Object family) {
-			if (family == ResourcesPlugin.FAMILY_MANUAL_BUILD)return true;
-			if (family == ValidationBuilder.FAMILY_VALIDATION_JOB){
-				return true;
-			}
-			return super.belongsTo(family);
-	    }
-	    
-	    public void addValidationJob(Job validationJob) {
-	    	synchronized (_validationJobs) {
-	    		_validationJobs.add(validationJob);
-	    		// schedule the job if we were empty
-	    		if (_validationJobs.size() == 1) {
-	    			this.schedule();
-	    		}
-	    	}
-	    }
-	}
-	
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use DEFAULT_ASYNC
-	 */
-	protected static final boolean DEFAULT_FORK = false; // @deprecated
-	private IProject 		_project; // project to be validated
-	private int 			_ruleGroup = RegistryConstants.ATT_RULE_GROUP_DEFAULT;
-	private boolean _fork = DEFAULT_ASYNC; // do not fork the validation into a
-	// different thread by default
-	private Map<ValidatorMetaData, Set<IFileDelta>> _fileDeltas; // To reduce object creation,
-	private IResourceDelta _delta;
-	
-	// the resource delta tree to be processed, or null if a full build/menu
-	// option was triggered. This value is cached so that validation can be run
-	// either from a builder, or from a menu item. (The Operation interface
-	// doesn't allow any parameter on execute except the IProgressMonitor.)
-	private Set<ValidatorMetaData> _enabledValidators;
-	
-	private boolean _force = DEFAULT_FORCE; // force this operation to run even if it doesn't need to?
-	private boolean _isFullValidate; 	// Run a full validation or an incremental? (true = full)
-	private Boolean _isAutoBuild; 		// Is the global auto-build preference enabled?
-	private Set<ValidatorMetaData> _launchedValidators;
-	
-	protected IWorkbenchContext context;
-
-	// are enabled and were launched (i.e., that have input to validate). For internal
-	// validation framework use only;
-	// it's needed for the automatic tests.
-	/**
-	 * This method is used for FINEST logging, to report exactly what deltas were about to be
-	 * validated.
-	 */
-	private static final String getDeltaAsString(IFileDelta[] delta) {
-		String args = ""; //$NON-NLS-1$
-		int numArgs = 0;
-		if (delta != null) {
-			numArgs = delta.length;
-			StringBuffer buffer = new StringBuffer();
-			for (int i = 0; i < delta.length; i++) {
-				buffer.append(COMMA);
-				buffer.append(delta[i].toString());
-			}
-			buffer.replace(0, 1, ""); //$NON-NLS-1$ // magic numbers 0 and 1 => Remove first COMMA from the list (hence index 0); length of COMMA is 2, hence index 0, 1.
-			args = buffer.toString();
-		}
-		return MessageFormat.format(DELTA_AS_STRING, new Object[]{String.valueOf(numArgs), args});
-	}
-
-	protected static void checkCanceled(WorkbenchReporter reporter) throws OperationCanceledException {
-		if (reporter == null)return;
-		else if (reporter.getProgressMonitor().isCanceled()) {
-			throw new OperationCanceledException(""); //$NON-NLS-1$
-		}
-	}
-
-	protected static boolean shouldForce(IResourceDelta delta) {
-		return ((delta == null) ? DEFAULT_FORCE : false);
-	}
-
-	protected static boolean shouldForce(Object[] changedResources) {
-		return (((changedResources == null) || (changedResources.length == 0)) ? DEFAULT_FORCE : false);
-	}
-
-	/**
-	 * @deprecated. Will be removed in Milestone 3. Use ValidationOperation(project, boolean)
-	 */
-	public ValidationOperation(IProject project) {
-		this(project, DEFAULT_ASYNC, DEFAULT_FORCE);
-	}
-
-	/**
-	 * Internal.
-	 */
-	public ValidationOperation(IProject project, boolean force, boolean async) {
-		this(project, null, null, RegistryConstants.ATT_RULE_GROUP_DEFAULT, force, async);
-	}
-
-	/**
-	 * @deprecated. Will be removed in Milestone 3. Use ValidationOperation(project, int, boolean)
-	 */
-	public ValidationOperation(IProject project, int ruleGroup) {
-		this(project, null, null, ruleGroup, DEFAULT_FORCE, DEFAULT_ASYNC);
-	}
-
-	/**
-	 * @deprecated. Will be removed in Milestone 3. Use ValidationOperation(IProject,
-	 *              IResourceDelta, Boolean, int, boolean, boolean)
-	 */
-	public ValidationOperation(IProject project, IResourceDelta delta, boolean isAutoBuild, int ruleGroup, boolean force, boolean fork) {
-		this(project, delta, ((isAutoBuild) ? Boolean.TRUE : Boolean.FALSE), ruleGroup, fork, force);
-	}
-
-	/**
-	 * Internal.
-	 */
-	protected ValidationOperation(IProject project, IResourceDelta delta, Boolean isAutoBuild, int ruleGroup, boolean force, boolean fork) {
-		super();
-		_project = project;
-		_delta = delta;
-		_isAutoBuild = isAutoBuild;
-		_ruleGroup = ruleGroup;
-		_fork = fork;
-		_force = force;
-		_enabledValidators = new HashSet<ValidatorMetaData>();
-	}
-	
-	/**
-	 * Internal.
-	 */
-	protected ValidationOperation(IProject project, IWorkbenchContext aContext, IResourceDelta delta, Boolean isAutoBuild, int ruleGroup, boolean force, boolean fork) {
-		super();
-		_project = project;
-		_delta = delta;
-		_isAutoBuild = isAutoBuild;
-		_ruleGroup = ruleGroup;
-		_fork = fork;
-		_force = force;
-		_enabledValidators = new HashSet<ValidatorMetaData>();
-		context = aContext;
-	}
-
-	/**
-	 * @deprecated Will be removed in Milestone 3.
-	 */
-	protected void terminateCleanup(WorkbenchReporter reporter) {
-		for (ValidatorMetaData vmd : getEnabledValidators()) {
-			reporter.displaySubtask(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_VALIDATOR_CLEANUP, new String[]{vmd.getValidatorDisplayName()}));
-			try {
-				reporter.removeAllMessages(vmd.getValidator());
-			} catch (InstantiationException e) {
-				// Remove the vmd from the reader's list
-				ValidationRegistryReader.getReader().disableValidator(vmd);
-				ValidationPlugin.getPlugin().handleException(e);
-				continue;
-			}
-			addCancelTask(vmd);
-			reporter.displaySubtask(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_VALIDATOR_TERMINATED, new String[]{getProject().getName(), vmd.getValidatorDisplayName()}));
-		}
-	} 
-	
-
-	/**
-	 * @param vmd
-	 * @param delta
-	 * @param logger
-	 * @param start
-	 */
-//	private void logValidationInfo(ValidatorMetaData vmd, IFileDelta[] delta, Logger logger, long start) {
-//		long finish = System.currentTimeMillis();
-//		TimeEntry entry = ValidationPlugin.getTimeEntry();
-//		entry.setSourceID("ValidationOperation.launchValidator"); //$NON-NLS-1$
-//		entry.setProjectName(getProject().getName());
-//		entry.setToolName(vmd.getValidatorUniqueName());
-//		entry.setElapsedTime(finish - start);
-//		if (logger.isLoggingLevel(Level.FINE)) {
-//			StringBuffer buffer = new StringBuffer();
-//			if (isFullValidate()) {
-//				buffer.append("EVERYTHING"); //$NON-NLS-1$
-//			} else {
-//				if (delta.length == 0) {
-//					buffer.append("NOTHING"); //$NON-NLS-1$
-//				} else {
-//					buffer.append(getDeltaAsString(delta));
-//				}
-//			}
-//			entry.setDetails(buffer.toString());
-//		}
-//		logger.write(Level.INFO, entry);
-//	}
-
-	/**
-	 * @param reporter
-	 * @param vmd
-	 * @param logger
-	 * @param exc
-	 */
-//	private void handleThrowables(WorkbenchReporter reporter, ValidatorMetaData vmd, Logger logger, Throwable exc) {
-//		// If a runtime exception has occured, e.g. NullPointer or ClassCast,
-//		// display it with the "A runtime exception has occurred " messsage.
-//		// This will provide more information to the user when he/she calls IBM
-//		// Service.
-//		if (logger.isLoggingLevel(Level.SEVERE)) {
-//			LogEntry entry = ValidationPlugin.getLogEntry();
-//			entry.setSourceID("ValidationOperation::launchValidator"); //$NON-NLS-1$
-//			entry.setTargetException(exc);
-//			logger.write(Level.SEVERE, entry);
-//		}
-//		String[] msgParm = {exc.getClass().getName(), vmd.getValidatorDisplayName(), (exc.getMessage() == null ? "" : exc.getMessage())}; //$NON-NLS-1$
-//		Message message = ValidationPlugin.getMessage();
-//		message.setSeverity(IMessage.NORMAL_SEVERITY);
-//		message.setId(ResourceConstants.VBF_EXC_RUNTIME);
-//		message.setParams(msgParm);
-//		try {
-//			reporter.addMessage(vmd.getValidator(), message);
-//		} catch (InstantiationException exc2) {
-//			handleInstantiationException(vmd, logger, exc2);
-//		} catch (MessageLimitException e) {
-//			throw e;
-//		}
-//		return;
-//	}
-
-	/**
-	 * @param vmd
-	 * @param logger
-	 * @param exc2
-	 */
-//	private void handleInstantiationException(ValidatorMetaData vmd, Logger logger, InstantiationException exc2) {
-//		// Remove the vmd from the reader's list
-//		ValidationRegistryReader.getReader().disableValidator(vmd);
-//		// Log the reason for the disabled validator
-//		if (logger.isLoggingLevel(Level.SEVERE)) {
-//			LogEntry entry = ValidationPlugin.getLogEntry();
-//			entry.setSourceID("ValidationOperation::launchValidator (deprecated)"); //$NON-NLS-1$
-//			entry.setTargetException(exc2);
-//			logger.write(Level.SEVERE, entry);
-//		}
-//	}
-
-	/**
-	 * @param reporter
-	 * @param vmd
-	 * @param logger
-	 * @param exc
-	 */
-//	private void handleValidationExceptions(WorkbenchReporter reporter, ValidatorMetaData vmd, Logger logger, ValidationException exc) {
-//		// First, see if a validator just caught all Throwables and
-//		// accidentally wrapped a MessageLimitException instead of propagating
-//		// it.
-//		if (exc.getAssociatedException() != null) {
-//			if (exc.getAssociatedException() instanceof MessageLimitException) {
-//				MessageLimitException mssgExc = (MessageLimitException) exc.getAssociatedException();
-//				throw mssgExc;
-//			} else if (exc.getAssociatedException() instanceof ValidationException) {
-//				try {
-//					ValidationException vexc = (ValidationException) exc.getAssociatedException();
-//					vexc.setClassLoader(vmd.getValidator().getClass().getClassLoader()); // first,
-//					// set the class loader,so that the exception's getMessage() method can retrieve
-//					// the resource bundle
-//				} catch (InstantiationException exc2) {
-//					handleInstantiationException(vmd, logger, exc2);
-//				}
-//			}
-//		}
-//		// If there is a problem with this particular validator, log the error
-//		// and continue
-//		// with the next validator.
-//		try {
-//			exc.setClassLoader(vmd.getValidator().getClass().getClassLoader()); // first,
-//			// set the class loader,so that the exception's getMessage() method can retrieve the
-//			// resource bundle
-//		} catch (InstantiationException exc2) {
-//			handleInstantiationException(vmd, logger, exc2);
-//		}
-//		if (logger.isLoggingLevel(Level.SEVERE)) {
-//			LogEntry entry = ValidationPlugin.getLogEntry();
-//			entry.setSourceID("ValidationOperation.validate(WorkbenchMonitor)"); //$NON-NLS-1$
-//			entry.setTargetException(exc);
-//			logger.write(Level.SEVERE, entry);
-//			if (exc.getAssociatedException() != null) {
-//				entry.setTargetException(exc.getAssociatedException());
-//				logger.write(Level.SEVERE, entry);
-//			}
-//		}
-//		String message = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-//		reporter.displaySubtask(message);
-//		if (exc.getAssociatedMessage() != null) {
-//			try {
-//				reporter.addMessage(vmd.getValidator(), exc.getAssociatedMessage());
-//			} catch (InstantiationException exc2) {
-//				handleInstantiationException(vmd, logger, exc2);
-//			}
-//		}
-//	}
-
-	/**
-	 * @param reporter
-	 * @param vmd
-	 * @param logger
-	 * @param exc
-	 */
-//	private void handleHelperCleanupExceptions(WorkbenchReporter reporter, ValidatorMetaData vmd, Logger logger, Throwable exc) {
-//		// If a runtime exception has occured, e.g. NullPointer or ClassCast,
-//		// display it with the "A runtime exception has occurred " messsage.
-//		// This will provide more information to the user when he/she calls IBM
-//		// Service.
-//		if (logger.isLoggingLevel(Level.SEVERE)) {
-//			LogEntry entry = ValidationPlugin.getLogEntry();
-//			entry.setSourceID("ValidationOperation::launchValidator"); //$NON-NLS-1$
-//			entry.setTargetException(exc);
-//			logger.write(Level.SEVERE, entry);
-//		}
-//		String[] msgParm = {exc.getClass().getName(), vmd.getValidatorDisplayName(), (exc.getMessage() == null ? "" : exc.getMessage())}; //$NON-NLS-1$
-//		Message message = ValidationPlugin.getMessage();
-//		message.setSeverity(IMessage.NORMAL_SEVERITY);
-//		message.setId(ResourceConstants.VBF_EXC_RUNTIME);
-//		message.setParams(msgParm);
-//		try {
-//			reporter.addMessage(vmd.getValidator(), message);
-//		} catch (InstantiationException exc2) {
-//			handleInstantiationException(vmd, logger, exc2);
-//		} catch (MessageLimitException e) {
-//			throw e;
-//		}
-//		return;
-//	}
-
-	public boolean isFork() {
-		return _fork;
-	}
-
-	public boolean isForce() {
-		return _force;
-	}
-
-	public void setForce(boolean force) {
-		_force = force;
-	}
-
-	/**
-	 * If the code that invoked this operation suspended auto-build before invoking this operation,
-	 * the user's auto-build setting is stored in the following methods.
-	 */
-	public boolean isAutoBuild() {
-		if (_isAutoBuild == null) {
-			return ValidatorManager.getManager().isGlobalAutoBuildEnabled();
-		}
-		return _isAutoBuild.booleanValue();
-	}
-
-	protected void setAutoBuild(boolean autoOn) {
-		_isAutoBuild = ((autoOn) ? Boolean.TRUE : Boolean.FALSE);
-	}
-
-	protected boolean isFullValidate() {
-		return _isFullValidate;
-	}
-
-	private void setFullValidate(boolean b) {
-		_isFullValidate = b;
-	}
-
-	protected int getRuleGroup() {
-		return _ruleGroup;
-	}
-
-	/**
-	 * Return true if the given validator must run (i.e., it has changes to validate, and it was not
-	 * run automatically.)
-	 */
-	private boolean isValidationNecessary(ValidatorMetaData vmd, IFileDelta[] delta) {
-		// Validation is not necessary if there are no files for the validator to validate.
-		return isFullValidate() || (delta.length > 0);
-	}
-
-	/**
-	 * Return true if, given the enabled validators and file deltas, there is work for this
-	 * operation to do.
-	 */
-	public boolean isNecessary(IProgressMonitor monitor) throws CoreException, OperationCanceledException {
-		Set<ValidatorMetaData> enabledValidators = getEnabledValidators();
-		if ((enabledValidators == null) || (enabledValidators.size() == 0)) {
-			return false;
-		}
-		if (isFullValidate())return true;
-		
-		for (ValidatorMetaData vmd : enabledValidators) {
-			if (isValidationNecessary(vmd, getFileDeltas(monitor, vmd)))return true;
-		}
-		return false;
-	}
-
-	private Map<ValidatorMetaData, Set<IFileDelta>> getFileDeltas(IProgressMonitor monitor) throws CoreException {
-		if (_fileDeltas == null)loadFileDeltas(monitor);
-		return _fileDeltas;
-	}
-
-	private IFileDelta[] getFileDeltas(IProgressMonitor monitor, ValidatorMetaData vmd) throws CoreException {
-		Set<IFileDelta> result = getFileDeltas(monitor).get(vmd);
-		if (result == null)return new IFileDelta[0];
-		
-		IFileDelta[] temp = new IFileDelta[result.size()];
-		result.toArray(temp);
-		return temp;
-	}
-
-	/**
-	 * Store the file deltas (VMD <=>Set[IFileDelta]) if the file deltas haven't been loaded. If the
-	 * deltas have already been loaded, return without doing anything.
-	 */
-	private void loadFileDeltas(IProgressMonitor monitor) throws CoreException {
-		// Although, for a full build, we don't build up a list of changed
-		// files, we do need to notify each IWorkbenchContext that an
-		// IResource has been filtered in.
-		// It's a full validation if the IResourceDelta is null and the
-		// Object[] (or IResource[]) is also null.
-		// i.e., it's a full validation if no incremental input has been set.
-		setFullValidate((getDelta() == null) && (_fileDeltas == null));
-		if (isFullValidate()) {
-			_fileDeltas = FilterUtil.loadDeltas(monitor, getEnabledValidators(), getProject());
-		} else {
-			_fileDeltas = FilterUtil.loadDeltas(monitor, getEnabledValidators(), getDelta()); // traverse,
-			// and process, each resource in the delta tree
-		}
-	}
-
-	protected void setFileDeltas(Map<ValidatorMetaData, Set<IFileDelta>> deltas) {
-		_fileDeltas = deltas;
-	}
-
-	protected IResourceDelta getDelta() {
-		return _delta;
-	}
-
-	protected void setDelta(IResourceDelta delta) {
-		_delta = delta;
-	}
-
-	protected boolean areValidatorsEnabled() {
-		return (getEnabledValidators().size() != 0);
-	}
-
-	/**
-	 * Return the validators which are both configured on this type of project, (as stored in
-	 * getProject()), and enabled by the user on this project.
-	 */
-	public Set<ValidatorMetaData> getEnabledValidators() {
-		return _enabledValidators;
-	}
-
-	/**
-	 * This is an internal method, subject to change without notice. It is provided only for the
-	 * automated validation framework tests.
-	 */
-	public Set<ValidatorMetaData> getLaunchedValidators() {
-		if (_launchedValidators == null) {
-			_launchedValidators = new HashSet<ValidatorMetaData>();
-		}
-		return _launchedValidators;
-	}
-
-	protected void setEnabledValidators(Set<ValidatorMetaData> evmds) {
-		// Check that every VMD in the set is configured on this project.
-		// Necessary because the user can manually choose which validators
-		// to launch, and the validator may not be installed.
-		_enabledValidators.clear();
-		for (ValidatorMetaData vmd : evmds) {
-			if (ValidationRegistryReader.getReader().isConfiguredOnProject(vmd, getProject())) {
-				_enabledValidators.add(vmd);
-			}
-		}
-	}
-
-	/**
-	 * This method returns the IProject that this ValidationOperation was created with.
-	 */
-	public IProject getProject() {
-		return _project;
-	}
-
-	protected int getUnitsOfWork() {
-		/*
-		 * Let one unit of work equal one resource. number of enabled validators. i.e., each
-		 * enabled validator must process (at most) each resource in the project; count each process
-		 * as one unit of work. Note that this is a ceiling number, because if we're doing an
-		 * incremental validation, not all resources will be validated.
-		 * setNumResources(countResources(getProject())); getEnabledValidators().size();
-		 */
-		// Until the validators can report units-of-work complete,
-		// initialize the monitor with an unknown amount of work.
-		// (So the user will see movement in the progress bar, even
-		// if the movement doesn't indicate the amount of work done.)
-		return IProgressMonitor.UNKNOWN;
-	}
-
-	/**
-	 * If the user is cancelling validation on the current project/resource, Add an information task
-	 * to the task list informing the user that validation has not been run on the current project.
-	 */
-	protected void addCancelTask(ValidatorMetaData vmd) {
-		InternalValidatorManager.getManager().addOperationTask(getProject(), vmd, ResourceConstants.VBF_STATUS_VALIDATOR_TERMINATED, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-	}
-
-	/**
-	 * This method starts the validation of each configured enabled validator on the current
-	 * project.
-	 * 
-	 * The IProgressMonitor passed in must not be null.
-	 */
-	public void run(IProgressMonitor progressMonitor) throws OperationCanceledException {
-		try {
-			// In order to check whether or not the monitor has been canceled, the monitor must not be null.
-			if (progressMonitor == null)return;
-			IProject project = getProject();
-			if (ValidationFramework.getDefault().isSuspended(project))return;
-			if (ValManager.getDefault().isDisabled(project))return;
-			
-			if (!areValidatorsEnabled()) {
-				// save some processing time...
-				return;
-			}
-			
-			final WorkbenchReporter reporter = new WorkbenchReporter(getProject(), progressMonitor);
-
-			try {
-				// Periodically check if the user has canceled the operation
-				checkCanceled(reporter);
-				preValidate(reporter);
-				validate(reporter);
-				validateReferencialFiles(reporter);
-			} catch (CoreException e) {
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-		} finally {
-			//TODO GRK determine if timing info should be added here
-//			if (logger.isLoggingLevel(Level.FINE)) {
-//				long finish = System.currentTimeMillis();
-//				TimeEntry entry = ValidationPlugin.getTimeEntry();
-//				entry.setSourceID("ValidationOperation.run(WorkbenchMonitor)"); //$NON-NLS-1$
-//				entry.setProjectName(getProject().getName());
-//				entry.setToolName("ValidationOperation"); //$NON-NLS-1$
-//				entry.setElapsedTime(finish - start);
-//				logger.write(Level.FINE, entry);
-//			}
-		}
-	}
-
-	private void validateReferencialFiles(WorkbenchReporter reporter) {
-		ReferencialFileValidatorRegistryReader reader = ReferencialFileValidatorRegistryReader.getInstance();
-		if (reader != null) {
-			reader.readRegistry();
-			ReferencialFileValidator refFileValidator = reader.getReferencialFileValidator();
-			if (refFileValidator != null) {
-				if (_delta != null) {
-					refFileValidateFileDelta(reporter, refFileValidator);
-				} else if (_project != null) {
-					postValidateProject(reporter, refFileValidator);
-				}
-			}
-		}
-	}
-
-	private void refFileValidateFileDelta(WorkbenchReporter reporter, ReferencialFileValidator refFileValidator) {
-		IResourceDelta[] resourceDelta = _delta.getAffectedChildren(IResourceDelta.ADDED | IResourceDelta.CHANGED | IResourceDelta.REMOVED);
-		List<IResource> inputFiles = new ArrayList<IResource>();
-		
-		List<IFile> referencingFiles = new ArrayList<IFile>();
-		if (resourceDelta != null && resourceDelta.length > 0) {
-			for (int i = 0; i < resourceDelta.length; i++) {
-				IResource resource = resourceDelta[i].getResource();
-				if (resource instanceof IFolder) {
-					getFileResourceDeltaInFolder(resourceDelta[i], inputFiles);
-				} else if (resource instanceof IFile)
-					inputFiles.add(resource);
-			}
-			List<IFile> rFilesToValidate = refFileValidator.getReferencedFile(inputFiles);
-			if (rFilesToValidate != null && !rFilesToValidate.isEmpty())
-				referencingFiles.addAll(rFilesToValidate);
-			try {
-				if (!referencingFiles.isEmpty())
-					validateReferencingFiles(reporter, referencingFiles);
-			} catch (Exception e) {
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-		}
-	}
-
-	private void getFileResourceDeltaInFolder(IResourceDelta delta, List<IResource> inputFiles) {
-		IResourceDelta[] resourceDelta = delta.getAffectedChildren();
-		for (int i = 0; i < resourceDelta.length; i++) {
-			IResource resource = resourceDelta[i].getResource();
-			if (resource instanceof IFile)inputFiles.add(resource);
-			else if (resource instanceof IFolder)getFileResourceDeltaInFolder(resourceDelta[i], inputFiles);
-		}
-	}
-
-	private void postValidateProject(WorkbenchReporter reporter, ReferencialFileValidator refFileValidator) {
-		Set<ValidatorMetaData> set = ValidationRegistryReader.getReader().getValidatorMetaData(_project);
-		for (ValidatorMetaData data : set) {
-			List<String> filters = data.getNameFilters();
-			List<IFile> files = getAllFilesForFilter(filters);
-			if (!files.isEmpty()) {
-				List<IFile> fileForValidation = refFileValidator.getReferencedFile(files);
-				try {
-					validateReferencingFiles(reporter, fileForValidation);
-				} catch (Exception e) {
-					ValidationPlugin.getPlugin().handleException(e);
-				}
-			}
-		}
-	}
-
-	private List<IFile> getAllFilesForFilter(List<String> filters) {
-		if (!filters.isEmpty()) {
-			List<IFile> allProjectFiles = ReferencialFileValidatorHelper.getAllProjectFiles(_project);
-			List<IFile> filterFiles = new ArrayList<IFile>();
-			for (String fileName : filters) {
-				if (fileName == null)continue;
-				
-				for (IFile projectFile : allProjectFiles) {
-					if (fileName.charAt(0) == '*') {
-						String extName = fileName.substring(2, fileName.length());
-						String ext = projectFile.getFileExtension();
-						if (ext != null && ext.equals(extName))filterFiles.add(projectFile);
-					} else if (fileName.equals(projectFile.getName()))filterFiles.add(projectFile);
-				}
-			}
-			return filterFiles;
-		}
-		return new LinkedList<IFile>();
-	}
-
-	private void validateReferencingFiles(IReporter reporter, List<IFile> referencingFiles) throws Exception {
-		Set<IFile> validatedFiles = new HashSet<IFile>();
-		for (IFile refFile : referencingFiles) {
-			if (!validatedFiles.contains(refFile)) {
-				IResource resource = refFile.getParent();
-				IProject project = null;
-				if (resource != null && !(resource instanceof IProject))
-					project = getProjectContainer(resource);
-				else
-					project = (IProject) resource;
-				if (project != null) {
-					Set<ValidatorMetaData> set = ValidationRegistryReader.getReader().getValidatorMetaData(project);
-					for (ValidatorMetaData data : set) {
-						if (data.isApplicableTo(refFile)) {
-							IValidator validator = data.getValidator();
-							validator.validate(data.getHelper(project),reporter);
-							validatedFiles.add(refFile);
-						}
-					}
-				}
-			}
-		}
-	}
-
-	private IProject getProjectContainer(IResource resource) {
-		IResource pResource = resource.getParent();
-		if (!(pResource instanceof IProject))
-			return getProjectContainer(pResource);
-		return (IProject) pResource;
-	}
-
-	protected void preValidate(WorkbenchReporter reporter) throws CoreException, OperationCanceledException {
-		// Load the input.
-		getFileDeltas(reporter.getProgressMonitor());
-	}
-
-	/**
-	 * Iterate over all of the enabled validators and run the thread-safe validators in a background
-	 * thread, and the not-thread-safe validators in this thread.
-	 */
-	protected void validate(WorkbenchReporter reporter) throws OperationCanceledException {
-		if (reporter == null)return;
-		checkCanceled(reporter);
-		reporter.getProgressMonitor().beginTask(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_PROGRESSMONITOR_TITLE), getUnitsOfWork());
-		IValidator validator = null;
-		Iterator<ValidatorMetaData> iterator = null;
-		IFileDelta[] delta = null;
-		
-		Set<ValidatorMetaData> jobValidators = new HashSet<ValidatorMetaData>();
-		Set<ValidatorMetaData> validators = new HashSet<ValidatorMetaData>();
-				
-		for(ValidatorMetaData vmd : getEnabledValidators()){
-			IValidator valInstance = null;
-			try {
-				valInstance = vmd.getValidator();
-			} 
-			catch (InstantiationException e1) {
-				if(!ValidatorManager.getManager().getProblemValidators().contains(vmd)) {
-					ValidatorManager.getManager().getProblemValidators().add(vmd);
-					System.out.println(e1.getMessage());
-				}
-			}
-			
-			if( isFork() && (valInstance != null) && valInstance instanceof IValidatorJob ){
-				try {
-					delta = getFileDeltas(reporter.getProgressMonitor(), vmd);
-				} catch (CoreException e) {
-					e.printStackTrace();
-				}
-				boolean willRun = (isForce() || isValidationNecessary(vmd, delta));
-				if( willRun )jobValidators.add( vmd );
-			}
-			else if (valInstance != null){
-				validators.add( vmd );
-			}
-		}
-		if( jobValidators.size() > 0 ){
-			launchJobs( jobValidators, reporter );
-		}
-				
-		ValidatorMetaData currentVmd = null;
-		try {
-			for (ValidatorMetaData vmd : validators) {
-				currentVmd = vmd;
-				// Is validation about to be run on this validator?
-				// Validation will run either if this operation forces regardless
-				// of need, or if the validator was not run automatically.
-				// If validation is not about to be run, then don't activate
-				// the plug-in
-				try {
-					delta = getFileDeltas(reporter.getProgressMonitor(), vmd);
-					boolean willRun = (isForce() || isValidationNecessary(vmd, delta));
-					if (Tracing.isTraceV1()) {
-						StringBuffer buffer = new StringBuffer();
-						buffer.append("ValidationOperation-01: will run? "); //$NON-NLS-1$
-						buffer.append(willRun);
-						buffer.append("  "); //$NON-NLS-1$
-						buffer.append("is force? "); //$NON-NLS-1$
-						buffer.append(isForce());
-						buffer.append("  "); //$NON-NLS-1$
-						buffer.append("isAutoBuild? "); //$NON-NLS-1$
-						buffer.append(_isAutoBuild);
-						buffer.append("  "); //$NON-NLS-1$
-						buffer.append("isAutoValidate? "); //$NON-NLS-1$
-						buffer.append("  "); //$NON-NLS-1$
-						buffer.append("isIncremental? "); //$NON-NLS-1$
-						buffer.append(vmd.isIncremental());
-						buffer.append("  "); //$NON-NLS-1$
-						if (isFullValidate()) {
-							buffer.append("EVERYTHING"); //$NON-NLS-1$
-						} else {
-							if (delta.length == 0) {
-								buffer.append("NOTHING"); //$NON-NLS-1$
-							} else {
-								buffer.append(getDeltaAsString(delta));
-							}
-						}
-						Tracing.log(buffer);
-					}
-					if (!willRun) {
-						continue;
-					}
-				} catch (CoreException e) {
-					ValidationPlugin.getPlugin().handleException(e);
-					String mssg = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-					reporter.displaySubtask(mssg);
-					continue;
-				}
-				try {
-					context = vmd.getHelper(getProject());
-					initValidateContext(delta);
-					validator = vmd.getValidator();
-					
-					checkCanceled(reporter);
-					
-				} catch (InstantiationException e) {
-					// Remove the vmd from the reader's list
-					ValidationRegistryReader.getReader().disableValidator(vmd);
-					ValidationPlugin.getPlugin().handleException(e);
-					continue;
-				}
-				
-//				if (isFork() && vmd.isAsync()) {
-//					// Don't appear to run in the foreground by sending
-//					// progress to the IProgressMonitor in the
-//					// WorkbenchMonitor. Suppress the status messages by
-//					// changing the IProgressMonitor to a
-//					// NullProgressMonitor.
-//					VThreadManager.getManager().queue(wrapInRunnable(nullReporter, validator, vmd,(WorkbenchContext)getContext(),delta, iterator));
-//				} else {
-//					internalValidate(reporter, validator, vmd, context, delta);
-//				}
-				internalValidate(reporter, validator, vmd, context, delta);
-			}
-		} 
-		catch (OperationCanceledException exc) {
-			handleOperationCancelledValidateException(reporter, validator, currentVmd, iterator, exc);
-		} 
-		finally {
-			releaseCachedMaps();
-		}
-	}
-
-	private void releaseCachedMaps() {
-		ValidationRegistryReader.getReader().clearCachedMaps();
-		IProjectValidationHelper helper = ValidationHelperRegistryReader.getInstance().getValidationHelper();
-		if (helper != null)
-			helper.disposeInstance();
-	}
-
-	private void initValidateContext(IFileDelta[] delta) {
-		 if (context instanceof WorkbenchContext) {
-			 ((WorkbenchContext)context).setValidationFileURIs(new ArrayList<String>());
-			 for(IFileDelta file : delta) {
-				 if(file.getDeltaType() != IFileDelta.DELETED ) {
-					 ((WorkbenchContext)context).getValidationFileURIs().add(file.getFileName());
-				 }
-			 } 
-		}
-	}
-
-	/**
-	 * @param reporter
-	 * @param validator
-	 * @param vmd
-	 * @param iterator
-	 * @param logger
-	 * @param exc
-	 */
-	private void handleOperationCancelledValidateException(WorkbenchReporter reporter, IValidator validator, 
-		ValidatorMetaData vmd, Iterator<ValidatorMetaData> iterator, OperationCanceledException exc) {
-		/*
-		 * If the user terminates validation (i.e., presses "cancel" on the progress monitor) before
-		 * the validation completes, perform clean up on each configured enabled validator.
-		 * 
-		 * To clean up, several steps are performed: 1. call <code></code> on each configured
-		 * enabled validator, so that each validator can perform cleanup that it knows is necessary.
-		 * 2. remove all tasks that this validator has added to the task list 3. add another task to
-		 * the task list to say that validation, using this validator on this project, was
-		 * terminated.
-		 * 
-		 * Steps 2 and 3 are done so that it's clear what has, and has not, been validated. If these
-		 * steps weren't performed, validation could be done on some items in the project, but not
-		 * others; and the user could mistakenly believe that those are the only problems with the
-		 * project. Unless the user knows that a full verification needs to be done, he/she could
-		 * continue to rely on automatic verification, and never know that there are problems with a
-		 * resource which hasn't been validated.
-		 */
-		reporter.displaySubtask(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_VALIDATOR_CLEANUP, new String[]{vmd.getValidatorDisplayName()}));
-		reporter.removeAllMessages(validator);
-		addCancelTask(vmd);
-		reporter.displaySubtask(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_VALIDATOR_TERMINATED, new String[]{getProject().getName(), vmd.getValidatorDisplayName()}));
-		while (iterator.hasNext()) {
-			vmd = (ValidatorMetaData) iterator.next();
-			try {
-				validator = vmd.getValidator();
-			} catch (InstantiationException exc2) {
-				// Remove the vmd from the reader's list
-				ValidationRegistryReader.getReader().disableValidator(vmd);
-				ValidationPlugin.getPlugin().handleException(exc2);
-				continue;
-			}
-			reporter.displaySubtask(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_VALIDATOR_CLEANUP, new String[]{vmd.getValidatorDisplayName()}));
-			reporter.removeAllMessages(validator);
-			addCancelTask(vmd);
-			reporter.displaySubtask(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_VALIDATOR_TERMINATED, new String[]{getProject().getName(), vmd.getValidatorDisplayName()}));
-		}
-		throw exc; // propagate the exception up to the framework so that
-		// the framework can display the correct "canceled"
-		// message in the dialog
-
-	}
-
-	/* package */
-	void internalValidate(final WorkbenchReporter reporter, final IValidator validator, final ValidatorMetaData vmd,final IWorkbenchContext aContext, final IFileDelta[] delta) throws OperationCanceledException {
-		try {
-			checkCanceled(reporter);
-			removeOldMessages(reporter, validator, vmd, delta);
-			// Do NOT check if the message limit is exceeded before launching
-			// the validator.
-			// Even if the limit is exceeded when the messages are removed from
-			// the delta
-			// files, it could be that the validator itself will remove
-			// messages before
-			// proceeding. Let the validator run so that it can remove messages
-			// if it
-			// needs to, and if it tries to add a message when the limit is
-			// exceeded, let
-			// the WorkbenchReporter take care of it.
-			launchValidator(reporter, validator, vmd, aContext, delta);
-		} catch (OperationCanceledException exc) {
-			// This is handled in the validate(WorkbenchReporter) method.
-			throw exc;
-		}catch (Exception e) {
-			// If there is a problem with this particular validator, log the
-			// error and continue with the next validator.
-			// If a runtime exception has occurred, e.g. NullPointer or
-			// ClassCast, display it with the "A runtime exception has occurred" message.
-			// This will provide more information to the user when he/she calls Service.
-			ValidationPlugin.getPlugin().handleException(e);
-			String mssg = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-			reporter.displaySubtask(mssg);
-			
-			/*
-			 The code  below  causes bundle not found exception since, the  bundle here is
-			 validate_base and we  are  trying to load that bundle from the classloader of 
-			 the Validator. 
-			  
-			String[] msgParm = {exc.getClass().getName(), vmd.getValidatorDisplayName(), (exc.getMessage() == null ? "" : exc.getMessage())}; //$NON-NLS-1$
-			Message message = ValidationPlugin.getMessage();
-			message.setSeverity(IMessage.NORMAL_SEVERITY);
-			message.setId(ResourceConstants.VBF_EXC_RUNTIME);
-			message.setParams(msgParm);
-			reporter.addMessage(validator, message);
-			*/
-		} finally {
-			// If user fixes problem, and limit exceeded, add "exceeded"
-			// message, or
-			// if limit not exceeded any more, remove "exceeded" message.
-			//Message Limit is removed from the framework
-			//ValidatorManager.getManager().checkMessageLimit(getProject(), true);
-			reporter.getProgressMonitor().done();
-		}
-	}
-
-	/**
-	 * In order to allow validators to run, must first check if there's space for new markers. But
-	 * the old markers must not prevent validation from running again (limit exceeded), so delete
-	 * all of the old markers first, and then run validation.
-	 */
-	private final void removeOldMessages(WorkbenchReporter reporter, IValidator validator, ValidatorMetaData vmd, IFileDelta[] delta) {
-		if (reporter == null) {
-			return;
-		}
-		// If the validator has been enabled, remove the "cancel" task.
-		// If the validator, on the last run, threw a Throwable, remove the
-		// "internal error" task. (For the same reasons we remove the "cancel"
-		// task.
-		InternalValidatorManager.getManager().removeOperationTasks(getProject(), vmd);
-		checkCanceled(reporter);
-		try {
-			// Check to see if a full build must be performed, or if a delta
-			// build is to be performed, if there are files to verify for that
-			// validator. (If it's delta, but there are no files, calling
-			// validate on that validator starts a full build, instead of just
-			// returning.)
-			if (isFullValidate()) {
-				String message = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_START_REMOVING_OLD_MESSAGES, new String[]{vmd.getValidatorDisplayName(), getProject().getName()});
-				reporter.displaySubtask(message);
-				reporter.removeAllMessages(validator);
-				message = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_FINISH_REMOVING_OLD_MESSAGES, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-				reporter.displaySubtask(message);
-			} else {
-				// Don't need to check that there are deltas to validate
-				// because that's already checked in isValidationNecessary
-				String message = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_START_REMOVING_OLD_MESSAGES, new String[]{vmd.getValidatorDisplayName(), getProject().getName()});
-				reporter.displaySubtask(message);
-				for (int i = 0; i < delta.length; i++) {
-					WorkbenchFileDelta fd = (WorkbenchFileDelta) delta[i];
-					if (fd.getDeltaType() != IFileDelta.DELETED) {
-						// If the file has been deleted, eclipse erases all
-						// markers on the file.
-						// Also, when a resource doesn't exist,
-						// WorkbenchReporter's getMessageResource()
-						// returns the IProject, which means that removing the
-						// messages from this
-						// file removes all of this validator's messages on
-						// this IProject (aix defect 206157)
-						IResource resource = reporter.getMessageResource(validator, fd);
-						if (fd.getObject().equals(fd.getResource())) {
-							WorkbenchReporter.removeAllMessages(resource, validator); // remove
-						} else {
-							reporter.removeAllMessages(validator, fd.getObject());
-						}
-					}
-				}
-				message = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_FINISH_REMOVING_OLD_MESSAGES, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-				reporter.displaySubtask(message);
-			}
-		} catch (OperationCanceledException exc) {
-			throw exc;
-		} catch (Exception e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			String mssg = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-			reporter.displaySubtask(mssg);
-			return;
-		}
-	}
-
-	/**
-	 * Whether a full verification or a delta verification is in progress, both will call this
-	 * method to process the resource. This method calls the current Validator to filter the
-	 * resource (i.e., this method returns if the resource fails the filter test).
-	 * <code>process</code> also sends output to the <code>IProgressMonitor</code>, and calls
-	 * the current Validator to validate the resource.
-	 * 
-	 * <p>To process a resource, there are several steps:</p> 
-	 * <p>1. check if the resource is registered for
-	 * this validator (i.e., the validator has either specified it in a filter, or has not filtered
-	 * it out explicitly)</p>
-	 * 
-	 * <p>2. call <code>isValidationSource</code> on the current validator with
-	 * the current resource. This method performs further filtering by the Validator itself, in
-	 * addition to the static filtering done by the framework, based on the information in
-	 * plugin.xml.</p> 
-	 * 
-	 * <p>3. If the resource passes both filters, call <code>validate</code> on the
-	 * validator, with the resource.</p> 
-	 * 
-	 * <p>4. When complete (either by failing to pass a filter, or by the
-	 * completion of the <code>validate</code>), increment the IProgressMonitor's status by one
-	 * (i.e., one resource has been processed.)</p>
-	 */
-	private final void launchValidator(WorkbenchReporter reporter, IValidator validator, ValidatorMetaData vmd, IWorkbenchContext helper, IFileDelta[] delta) {
-		if (reporter == null)return;
-		checkCanceled(reporter);
-		// Check to see if a full build must be performed, or if a delta
-		// build is to be performed, if there are files to verify for that
-		// validator. (If it's delta, but there are no files, calling
-		// validate on that validator starts a full build, instead of just
-		// returning.)
-		try {
-			// Validate the resource; this step will add errors/warnings to the
-			// task list, and remove errors/warnings from the task list.
-			if (helper instanceof WorkbenchContext) {
-				// Initialize the "loadRuleGroup" method with the group of rules
-				// which the validator should validate.
-				((WorkbenchContext) helper).setRuleGroup(getRuleGroup());
-			}
-			String message = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_STARTING_VALIDATION, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-			reporter.displaySubtask(message);
-			if (Tracing.isLogging()) {
-				// This internal "launched validators" value is used only in tests.
-				getLaunchedValidators().add(vmd);
-			}
-			//initValidateContext(delta);
-			ValidatorLauncher.getLauncher().start(helper, validator, reporter);
-			//TODO GRK determine if timing info should be added here
-//			if (logger.isLoggingLevel(Level.INFO)) {
-//				TimeEntry entry = ValidationPlugin.getTimeEntry();
-//				entry.setSourceID("ValidationOperation.launchValidator"); //$NON-NLS-1$
-//				entry.setProjectName(getProject().getName());
-//				entry.setToolName(vmd.getValidatorUniqueName());
-//				entry.setElapsedTime(finish - start);
-//				if (logger.isLoggingLevel(Level.FINE)) {
-//					StringBuffer buffer = new StringBuffer();
-//					if (isFullValidate()) {
-//						buffer.append("EVERYTHING"); //$NON-NLS-1$
-//					} else {
-//						if (delta.length == 0) {
-//							buffer.append("NOTHING"); //$NON-NLS-1$
-//						} else {
-//							buffer.append(getDeltaAsString(delta));
-//						}
-//					}
-//					entry.setDetails(buffer.toString());
-//				}
-//				logger.write(Level.INFO, entry);
-//			}
-			message = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-			reporter.displaySubtask(message);
-		} catch (OperationCanceledException exc) {
-			throw exc;
-		} catch (ValidationException exc) {
-			// First, see if a validator just caught all Throwables and
-			// accidentally wrapped a MessageLimitException instead of
-			// propagating it.
-			if (exc.getAssociatedException() != null) {
-				if (exc.getAssociatedException() instanceof ValidationException) {
-					ValidationException vexc = (ValidationException) exc.getAssociatedException();
-					vexc.setClassLoader(validator.getClass().getClassLoader()); // first,
-					// set the class loader, so that the exception's getMessage() method
-					// can retrieve the resource bundle
-				}
-			}
-			// If there is a problem with this particular validator, log the
-			// error and continue with the next validator.
-			exc.setClassLoader(validator.getClass().getClassLoader()); // first,
-			ValidationPlugin.getPlugin().handleException(exc);
-			ValidationPlugin.getPlugin().handleException(exc.getAssociatedException());
-			String message = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-			reporter.displaySubtask(message);
-			if (exc.getAssociatedMessage() != null) {
-				reporter.addMessage(validator, exc.getAssociatedMessage());
-			}
-		} catch (Exception e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			String mssg = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-			reporter.displaySubtask(mssg);
-			
-			/*
-			 The code  below  causes bundle not found exception since, the  bundle here is
-			 validate_base and we  are  trying to load that bundle from the classloader of 
-			 the Validator. 
-			 
-			String[] msgParm = {exc.getClass().getName(), vmd.getValidatorDisplayName(), (exc.getMessage() == null ? "" : exc.getMessage())}; //$NON-NLS-1$
-			Message message = ValidationPlugin.getMessage();
-			message.setSeverity(IMessage.NORMAL_SEVERITY);
-			message.setId(ResourceConstants.VBF_EXC_RUNTIME);
-			message.setParams(msgParm);
-			reporter.addMessage(validator, message);
-			*/
-			
-		} finally {
-			try {
-				validator.cleanup(reporter);
-			} catch (OperationCanceledException e) {
-				throw e;
-			} catch (Exception e) {
-				ValidationPlugin.getPlugin().handleException(e);
-				return;
-			}
-			try {
-				helper.cleanup(reporter);
-			} catch (OperationCanceledException e) {
-				throw e;
-			} catch (Exception e) {
-				ValidationPlugin.getPlugin().handleException(e);
-				return;
-			} finally {
-				// Now that cleanup has been called, set the project to null.
-				// This project's
-				// resources have been freed so this project should also be
-				// cleared on the helper.
-				// If it isn't set to null, then the next time that the helper
-				// is retrieved from
-				// the ValidatorMetaData, the resources allocated for this
-				// project, in the
-				// helper's initialize method, will not be reallocated if the
-				// project is the same.
-				helper.setProject(null);
-			}
-			// Tell the progress monitor that we've completed n units of work
-			// (i.e., n resources validated by one validator).
-			reporter.getProgressMonitor().worked(((delta == null) ? 1 : delta.length));
-		}
-	}
-
-//	private Runnable wrapInRunnable(final WorkbenchReporter reporter, final IValidator validator, final ValidatorMetaData vmd, final IWorkbenchContext helper, final IFileDelta[] delta, final Iterator iterator) {
-//		// Need to create a new Runnable each time because several Runnable
-//		// instances may exist at the same time.
-//		Runnable runnable = new ProjectRunnable(reporter, validator, vmd, helper, delta, iterator);
-//		return runnable;
-//	}
-
-	/*
-	 * // For convenience, keep this method in the class but commented out. // When async needs to
-	 * be tested, this method may be needed again. private static void debug(String prefix,
-	 * IWorkbenchContext helper) { IProject hProject = helper.getProject(); System.err.println(prefix +
-	 * "Start ValidationOperation "+Thread.currentThread().getName() + "::" + hProject.getName());
-	 * if( Thread.currentThread().getName().equals("ValidationThread") &&
-	 * (hProject.getName().indexOf("noFork") > -1)) { Thread.dumpStack(); } else
-	 * if((!Thread.currentThread().getName().equals("ValidationThread")) &&
-	 * (hProject.getName().indexOf("fork") > -1)) { Thread.dumpStack(); } System.err.println(prefix +
-	 * "End ValidationOperation"); }
-	 */
-	
-	/**
-	 * @deprecated This class is no longer used by the framework.
-	 */
-	public class ProjectRunnable implements Runnable {
-		private WorkbenchReporter _reporter;
-		private IValidator _validator;
-		private ValidatorMetaData _vmd;
-		private IFileDelta[] _delta;
-
-		@SuppressWarnings("unchecked")
-		public ProjectRunnable(WorkbenchReporter reporter, IValidator validator, 
-			ValidatorMetaData vmd, IWorkbenchContext helper, IFileDelta[] delta, Iterator iterator) {
-			_reporter = reporter;
-			_validator = validator;
-			_vmd = vmd;
-			_delta = delta;
-		}
-
-		public void run() {
-			try {
-				internalValidate(_reporter, _validator, _vmd, context,_delta);
-			} catch (OperationCanceledException exc) {
-				// User can't cancel a job in a background thread, so ignore this exception.
-			}
-		}
-
-		public IProject getProject() {
-			return _reporter.getProject();
-		}
-	}
-
-	/**
-	 * @return Returns the context.
-	 */
-	public IValidationContext getContext() {
-		return context;
-	}
-
-	/**
-	 * @param context The context to set.
-	 */
-	public void setContext(IWorkbenchContext context) {
-		this.context = context;
-	}
-	
-	void launchJobs(Set<ValidatorMetaData> validators, final WorkbenchReporter reporter) throws OperationCanceledException{
-		
-		IValidator validator = null;
-		IFileDelta[] delta = null;
-		IWorkbenchContext workbenchcontext = null;
-		
-		for (ValidatorMetaData vmd : validators) {
-			checkCanceled(reporter);
-			
-			try {
-				delta = getFileDeltas(reporter.getProgressMonitor(), vmd);
-				boolean willRun = (isForce() || isValidationNecessary(vmd, delta));
-				if (!willRun)continue;
-
-			} catch (CoreException e) {
-				ValidationPlugin.getPlugin().handleException(e);
-				String mssg = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-				reporter.displaySubtask(mssg);
-				continue;
-			}
-			
-			try {
-				validator = vmd.createValidator();
-				workbenchcontext = vmd.createHelper( getProject() );
-				initValidateContext( delta, workbenchcontext );
-				vmd.addHelper((IValidatorJob)validator, workbenchcontext);				
-				checkCanceled(reporter);
-				
-			} catch (InstantiationException e) {
-				// Remove the vmd from the reader's list
-				ValidationRegistryReader.getReader().disableValidator(vmd);
-				ValidationPlugin.getPlugin().handleException(e);
-				continue;
-			}
-			
-			try {
-				checkCanceled(reporter);
-				removeOldMessages(reporter, validator, vmd, delta);
-				
-				if( validator instanceof IValidatorJob ){
-					launchValidatorJob( reporter, (IValidatorJob)validator, vmd, workbenchcontext, delta);
-				}
-
-				
-			} catch (OperationCanceledException exc) {
-				throw exc;
-
-			} catch (Exception e) {
-				ValidationPlugin.getPlugin().handleException(e);
-				String mssg = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-				reporter.displaySubtask(mssg);
-			} catch (Error e) {
-				ValidationPlugin.getPlugin().handleException(e);
-				String mssg = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY, new String[]{getProject().getName(), vmd.getValidatorDisplayName()});
-				reporter.displaySubtask(mssg);
-				throw e;
-			} finally {
-				// If user fixes problem, and limit exceeded, add "exceeded"
-				// message, or if limit not exceeded any more, remove "exceeded" message.
-				reporter.getProgressMonitor().done();
-			}
-		}
-	}
-		
-	private void initValidateContext(IFileDelta[] delta, IWorkbenchContext context ) {
-		 if (context instanceof WorkbenchContext) {
-			 ((WorkbenchContext)context).setValidationFileURIs(new ArrayList<String>());
-			 for(IFileDelta file : delta) {
-				 if(file.getDeltaType() != IFileDelta.DELETED ) {
-					 ((WorkbenchContext)context).getValidationFileURIs().add(file.getFileName());
-				 }
-			 } 
-		}
-	}
-						
-	private final void launchValidatorJob(WorkbenchReporter reporter,
-		IValidatorJob validator, ValidatorMetaData vmd, IWorkbenchContext helper, IFileDelta[] delta) {
-		
-		if (reporter == null)return;
-		checkCanceled(reporter);
-
-		if (helper instanceof WorkbenchContext) {
-			((WorkbenchContext) helper).setRuleGroup(getRuleGroup());
-		}
-		if (Tracing.isLogging()) {
-			// This internal "launched validators" value is used only in tests.
-			getLaunchedValidators().add(vmd);
-		}
-		
-		ValidatorJob validatorjob = new ValidatorJob( validator, vmd.getValidatorDisplayName(), 
-			vmd.getValidatorUniqueName(), helper.getProject(), helper );
-
-		ISchedulingRule schedulingRule = validator.getSchedulingRule(helper);
-		validatorjob.setRule( schedulingRule );		
-		QualifiedName validatorKey = new QualifiedName(null, "Validator"); //$NON-NLS-1$
-		validatorjob.setProperty( validatorKey, validator );
-		validatorjob.addJobChangeListener(
-			new JobChangeAdapter(){
-				
-				public void done(IJobChangeEvent event){
-					Job job = event.getJob();
-					QualifiedName validatorKey = new QualifiedName(null, "Validator"); //$NON-NLS-1$
-					IValidatorJob validator = (IValidatorJob)job.getProperty( validatorKey );
-					ValidatorManager mgr = ValidatorManager.getManager();
-					final List<MessageInfo> list = mgr.getMessages(validator);							
-					
-					IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-					    public void run(IProgressMonitor monitor) throws CoreException {
-
-							for(MessageInfo info : list){
-								try {								
-									TaskListUtility.addTask( info.getMessageOwnerId(), info.getResource(),
-										info.getLocation(), info.getMsg().getId(), info.getText(),
-										info.getMsg().getSeverity(),
-										info.getMarkerId(),
-										info.getTargetObjectName(),
-										info.getMsg().getGroupName(),
-										info.getMsg().getOffset(),
-										info.getMsg().getLength());								
-								} catch (CoreException e) {
-									ValidationPlugin.getPlugin().handleException(e);
-								}										
-							}
-					    }
-					};
-					try {
-						
-						ResourcesPlugin.getWorkspace().run(runnable, null, IWorkspace.AVOID_UPDATE, null);
-					} catch (CoreException e) {
-					   e.printStackTrace();
-					}
-					mgr.clearMessages( validator );
-					validator = null;
-				}
-			}
-		);
-		validatorjob.setPriority(Job.DECORATE);
-		launcherJob.addValidationJob(validatorjob);
-	}
-		
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationUtility.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationUtility.java
deleted file mode 100644
index 4e53471..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationUtility.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.internal.ConfigurationConstants;
-import org.eclipse.wst.validation.internal.ConfigurationManager;
-import org.eclipse.wst.validation.internal.ProjectConfiguration;
-import org.eclipse.wst.validation.internal.TaskListUtility;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * This class contains utility methods that are intended to be used by validators and code outside
- * of the validation framework.
- */
-public final class ValidationUtility {
-	//TODO Make the ValidationUtility constructor private in Milestone 4.
-
-	/**
-	 * Given an IResource and one of the org.eclipse.wst.validation.internal.core.core.SevertyEnum constants,
-	 * return an array containing the fully-qualified class names of the validators which have
-	 * reported messages, of the given severity, against the resource and the resource's children.
-	 */
-	public static String[] listValidatorClasses(IResource resource, int severity) {
-		IMarker[] markers = TaskListUtility.getValidationTasks(resource, severity);
-		if ((markers == null) || (markers.length == 0)) {
-			return new String[0];
-		}
-
-		Set<String> tempSet = new HashSet<String>();
-		for (int i = 0; i < markers.length; i++) {
-			IMarker marker = markers[i];
-			try {
-				Object owner = marker.getAttribute(ConfigurationConstants.VALIDATION_MARKER_OWNER);
-				if ((owner == null) || !(owner instanceof String)) {
-					// The ValidationMigrator will remove any "unowned" validation markers.
-					continue;
-				}
-				tempSet.add((String)owner);
-			} catch (CoreException e) {
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-		}
-
-
-		if (tempSet.size() > 0) {
-			String[] result = new String[tempSet.size()];
-			tempSet.toArray(result);
-			tempSet.clear();
-			return result;
-		}
-		return new String[0];
-	}
-
-	/**
-	 * @deprecated This instance method will be made static in Milestone 4.
-	 */
-	public boolean isEnabled(IProject project, String validatorClassName) {
-		return isEnabled(project, new String[]{validatorClassName});
-	}
-
-	/**
-	 * Return true if all of the validators, identified by their fully-qualified class names, are
-	 * enabled on the project. If a validator isn't enabled, or if there's an internal error while
-	 * retrieving the user's configuration, return false.
-	 */
-	public static boolean isEnabled(IProject project, String[] validatorClassNames) {
-		if ((validatorClassNames == null) || (validatorClassNames.length == 0)) {
-			return false;
-		}
-
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			for (int i = 0; i < validatorClassNames.length; i++) {
-				if (!prjp.isEnabled(validatorClassNames[i])) {
-					return false;
-				}
-			}
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return false;
-		}
-
-		return true;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidatorJob.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidatorJob.java
deleted file mode 100644
index 048dd39..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidatorJob.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.wst.common.frameworks.internal.plugin.WTPCommonPlugin;
-import org.eclipse.wst.validation.IPerformanceMonitor;
-import org.eclipse.wst.validation.PerformanceCounters;
-import org.eclipse.wst.validation.ValidationFramework;
-import org.eclipse.wst.validation.internal.Misc;
-import org.eclipse.wst.validation.internal.ResourceConstants;
-import org.eclipse.wst.validation.internal.ResourceHandler;
-import org.eclipse.wst.validation.internal.ValidationRegistryReader;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-import org.eclipse.wst.validation.internal.core.Message;
-import org.eclipse.wst.validation.internal.core.ValidationException;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IValidatorJob;
-
-public class ValidatorJob extends Job {
-
-
-	private IProject			project;
-	private IWorkbenchContext 	helper;
-	private IValidatorJob		validator;
-	
-	public ValidatorJob(String name) {
-		super(name);
-	}
-	   
-	public ValidatorJob( IValidatorJob validator, String displayName, String name, IProject project, IWorkbenchContext aHelper  ){
-		super(displayName);
-		this.project = project;
-		this.helper = aHelper;
-		this.validator = validator;
-	}
-	
-	//revisit reporter in the code  below
-	//subtask information is displayed in the monitor created by the Job
-	//error information is reported by the IReporter
-	
-	protected IStatus run(IProgressMonitor monitor) {
-		
-		IPerformanceMonitor pm = ValidationFramework.getDefault().getPerformanceMonitor();
-		long elapsed = -1;
-		long cpuTime = -1;
-		if (pm.isCollecting()){
-			elapsed = System.currentTimeMillis();
-			cpuTime = Misc.getCPUTime();
-		}
-
-		monitor.beginTask("Validating", IProgressMonitor.UNKNOWN); //$NON-NLS-1$
-		IStatus status = IValidatorJob.OK_STATUS;
-		WorkbenchReporter	reporter = new WorkbenchReporter( project, monitor );
-
-		ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validator);
-		
-		try {
-
-			String message = ResourceHandler.getExternalizedMessage(
-				ResourceConstants.VBF_STATUS_STARTING_VALIDATION,
-				new String[]{helper.getProject().getName(), vmd.getValidatorDisplayName()});
-			
-			monitor.subTask(message);		
-			status = validator.validateInJob(helper, reporter);
-		
-			message = ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_STATUS_ENDING_VALIDATION,
-				new String[]{helper.getProject().getName(), vmd.getValidatorDisplayName()});
-			monitor.subTask(message);
- 
-		} catch (OperationCanceledException exc) {
-			throw exc;
-		} catch (ValidationException exc) {
-			// First, see if a validator just caught all Throwables and
-			// accidentally wrapped a MessageLimitException instead of
-			// propagating it.
-			if (exc.getAssociatedException() != null) {
-				if (exc.getAssociatedException() instanceof ValidationException) {
-					ValidationException vexc = (ValidationException) exc.getAssociatedException();
-					vexc.setClassLoader(validator.getClass().getClassLoader()); 
-				}
-			}
-			// If there is a problem with this particular validator, log the
-			// error and continue with the next validator.
-			exc.setClassLoader(validator.getClass().getClassLoader());
-
-			ValidationPlugin.getPlugin().handleException(exc);
-			ValidationPlugin.getPlugin().handleException(exc.getAssociatedException());
-			String message = ResourceHandler.getExternalizedMessage(
-					ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY,
-					new String[]{helper.getProject().getName(), vmd.getValidatorDisplayName()});
-			
-			monitor.subTask(message);
-			if (exc.getAssociatedMessage() != null) {
-				reporter.addMessage(validator, exc.getAssociatedMessage());
-			}
-		} catch (Exception e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			String mssg = ResourceHandler.getExternalizedMessage(
-				ResourceConstants.VBF_STATUS_ENDING_VALIDATION_ABNORMALLY,
-				new String[]{helper.getProject().getName(), vmd.getValidatorDisplayName() });
-			
-			monitor.subTask(mssg);
-			
-		} finally {
-			try {
-				validator.cleanup(reporter);
-			} catch (OperationCanceledException e) {
-				throw e;
-			} catch (Exception exc) {
-				ValidationPlugin.getPlugin().handleException(exc);
-				
-				String[] msgParm = {exc.getClass().getName(), vmd.getValidatorDisplayName(), (exc.getMessage() == null ? "" : exc.getMessage())}; //$NON-NLS-1$				
-				Message message = ValidationPlugin.getMessage();
-				message.setSeverity(IMessage.NORMAL_SEVERITY);
-				message.setId(ResourceConstants.VBF_EXC_RUNTIME);
-				message.setParams(msgParm);				
-				status = WTPCommonPlugin.createErrorStatus(message.getText());
-				return status;
-			} finally {
-				try {
-					helper.cleanup(reporter);
-					vmd.removeHelper( validator );
-				}catch (OperationCanceledException e) {
-					throw e;
-				} catch (Exception exc) {
-					ValidationPlugin.getPlugin().handleException(exc);
-					String[] msgParm = {exc.getClass().getName(), vmd.getValidatorDisplayName(), (exc.getMessage() == null ? "" : exc.getMessage())}; //$NON-NLS-1$
-					Message message = ValidationPlugin.getMessage();
-					message.setSeverity(IMessage.NORMAL_SEVERITY);
-					message.setId(ResourceConstants.VBF_EXC_RUNTIME);
-					message.setParams(msgParm);
-					reporter.addMessage(validator, message);
-	
-					status = WTPCommonPlugin.createErrorStatus(message.getText());	
-					return status;
-				} finally {
-					helper.setProject(null);
-					vmd.removeHelper( validator );
-					helper = null;
-					reporter = null;
-				}
-			}
-			//reporter.getProgressMonitor().worked(((delta == null) ? 1 : delta.length)); // One
-			//monitor.worked(((delta == null) ? 1 : delta.length)); // One
-			monitor.done();
-		}
-		if (pm.isCollecting()){
-			if (cpuTime != -1){
-				cpuTime = Misc.getCPUTime() - cpuTime;
-			}
-			String projectName = null;
-			if (project != null)projectName = project.getName();
-			pm.add(new PerformanceCounters(vmd.getValidatorUniqueName(), 
-				vmd.getValidatorDisplayName(),projectName, -1, 
-				System.currentTimeMillis()-elapsed, cpuTime));
-		}
-		return status;
-	}
-
-	public boolean belongsTo(Object family) {
-		return (project.getName() + ValidatorManager.VALIDATOR_JOB_FAMILY).equals(family);
-	}	
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidatorManager.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidatorManager.java
deleted file mode 100644
index 7cf398b..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidatorManager.java
+++ /dev/null
@@ -1,1001 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.ICommand;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.validation.ValidationFramework;
-import org.eclipse.wst.validation.internal.ConfigurationManager;
-import org.eclipse.wst.validation.internal.GlobalConfiguration;
-import org.eclipse.wst.validation.internal.InternalValidatorManager;
-import org.eclipse.wst.validation.internal.ProjectConfiguration;
-import org.eclipse.wst.validation.internal.TaskListUtility;
-import org.eclipse.wst.validation.internal.ValidationRegistryReader;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-import org.eclipse.wst.validation.internal.provisional.core.IValidatorJob;
-
-/**
- * A centralized class for accessing validation metadata.
- * 
- * This class is not intended to be subclassed outside of the validation framework.
- */
-public final class ValidatorManager {
-	public static final String VALIDATOR_JOB_FAMILY = "validators";	 //$NON-NLS-1$	
-	private static ValidatorManager inst;
-	private static IResourceUtil _resourceUtil; // a common utility, different whether or not
-	// WSAD is running in headless or UI mode, which can retrieve the line number of some MOF objects.
-	private static final Class RESOURCEUTIL_DEFAULTCLASS = org.eclipse.wst.validation.internal.operations.DefaultResourceUtil.class;
-	private static Class _resourceUtilClass = RESOURCEUTIL_DEFAULTCLASS;
-		
-	// an empty set, provided for convenience, so that we only construct one empty set once.
-	private static final Set<ValidatorMetaData> EMPTY_SET = new HashSet<ValidatorMetaData>();
-	
-	private static Class 	_messageLimitOwner;
-	private String[] 		_internalOwners;
-	private Map<IValidatorJob, List<MessageInfo>> _validatorMsgs = 
-		Collections.synchronizedMap( new HashMap<IValidatorJob, List<MessageInfo>>() );	
-	private Set<ValidatorMetaData> _problemValidators = new HashSet<ValidatorMetaData>();	
-	
-	private ValidatorManager() {
-		super();
-		_internalOwners = new String[0];
-
-		addInternalOwner(getMessageLimitOwner());
-	}
-
-	/**
-	 * Disable all validators for the current project, and does not touch the auto-validate setting.
-	 */
-	public void disableAllValidators(IProject currentProject, IProgressMonitor monitor) {
-		// Disable the individual validators
-		setEnabledValidators(currentProject, EMPTY_SET, monitor);
-	}
-
-	public void enableValidator(String validatorId) {
-
-		try {
-			ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validatorId);
-			GlobalConfiguration gf = ConfigurationManager.getManager().getGlobalConfiguration();
-			gf.enableSingleValidator(vmd);
-		} catch (InvocationTargetException e) {
-			e.printStackTrace();
-		}
-	}
-	
-	
-	public void disableValidator(String validatorId){
-
-		try {
-			ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validatorId);
-			GlobalConfiguration gf = ConfigurationManager.getManager().getGlobalConfiguration();
-			gf.disableSingleValidator(vmd);
-		} catch (InvocationTargetException e) {
-			e.printStackTrace();
-		}
-	}
-	
-	
-	public void enableValidator(String validatorId, IProject project, boolean manualValidation, boolean buildValidation) {		
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			prjp.setDoesProjectOverride(true);
-			ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validatorId);
-			
-			if(manualValidation)prjp.enableSingleManualValidator(vmd);
-			if (buildValidation)prjp.enableSingleBuildValidator(vmd);
-			prjp.store();		
-		} catch (InvocationTargetException e) {
-			e.printStackTrace();
-		}
-	}
-	
-	public void disableValidator(String validatorId, IProject project, boolean manualValidation, boolean buildValidation){
-
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			prjp.setDoesProjectOverride(true);
-			ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validatorId);
-			
-			if(manualValidation)prjp.disableSingleManualValidator(vmd);
-			if (buildValidation)prjp.disableSingleBuildValidator(vmd);
-			prjp.store();
-			
-		} catch (InvocationTargetException e) {
-			e.printStackTrace();
-		}
-
-	}
-	
-	
-	
-	/**
-	 * Given an IProject, if the IProject does not support build validation, add the validation
-	 * builder to the project description so that the project can support build validation.
-	 */
-	public static void addProjectBuildValidationSupport(IProject project) {
-		/*
-		 * I'm working my way through the code to see where this gets called. One place was in ModuleCoreNature
-		 * which had hard coded the builder id.
-		 */
-		if (project == null)return;
-
-		boolean isBuilderAdded = false;
-		try {
-			IProjectDescription description = project.getDescription();
-			ICommand[] commands = description.getBuildSpec();
-			if (commands != null) {
-				for (ICommand command : commands) {
-					String builderName = command.getBuilderName();
-					if (builderName == null) {
-						// builder name will be null if it has not been set
-						continue;
-					}
-
-					if (builderName.equals(ValidationPlugin.VALIDATION_BUILDER_ID)) {
-						isBuilderAdded = true;
-						break;
-					}
-				}
-			}
-
-			if (!isBuilderAdded) {
-				ICommand newCommand = description.newCommand();
-				newCommand.setBuilderName(ValidationPlugin.VALIDATION_BUILDER_ID);
-
-				ICommand[] newCommands = null;
-				if (commands != null) {
-					newCommands = new ICommand[commands.length + 1];
-					System.arraycopy(commands, 0, newCommands, 0, commands.length);
-					newCommands[commands.length] = newCommand;
-				} else {
-					newCommands = new ICommand[1];
-					newCommands[0] = newCommand;
-				}
-				description.setBuildSpec(newCommands);
-
-				project.setDescription(description, null);
-			}
-		} catch (CoreException exc) {
-			// if we can't read the information, the project isn't open, so it can't run
-			// auto-validate
-			return;
-		}
-	}
-
-
-	/**
-	 * Given an IProject, this method returns true if the project can run build validation (i.e.,
-	 * incremental validation), and false otherwise. The test, to find out if the project supports
-	 * build validation or not, is to see if the ValidationBuilder is configured on that type of
-	 * project.
-	 * <p>
-	 * This is a long-running process - is there any way that I can shorten the amount of time this
-	 * takes?
-	 */
-	public static boolean doesProjectSupportBuildValidation(IProject project) {
-		boolean canRunAV = false;
-		if (project == null) {
-			return canRunAV;
-		}
-
-		try {
-			IProjectDescription description = project.getDescription();
-			ICommand[] commands = description.getBuildSpec(); // don't need to check if description
-			// is null, because it's never null
-			if (commands == null) {
-				return canRunAV;
-			}
-
-			for (int i = 0; i < commands.length; i++) {
-				String builderName = commands[i].getBuilderName();
-				if (builderName == null) {
-					// builder name will be null if it has not been set
-					continue;
-				}
-
-				if (builderName.equals(ValidationPlugin.VALIDATION_BUILDER_ID)) {
-					canRunAV = true;
-					break;
-				}
-			}
-		} catch (CoreException exc) {
-			// if we can't read the information, the project isn't open, so it can't run
-			// auto-validate
-			return false;
-		}
-
-		return canRunAV;
-	}
-
-	/**
-	 * Enable all validators for the current project, and does not touch the auto-validate setting.
-	 */
-	public void enableAllValidators(IProject project, IProgressMonitor monitor) {
-		// Turn auto-validate off
-		//	setAutoValidate(currentProject, false);
-
-		// Enable the individual validators
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			prjp.setEnabledValidators(prjp.getValidators());
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-		}
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 * 
-	 * Return a collection of incremental ValidatorMetaData configured on a certain type of IProject
-	 * (e.g. EJB Project vs. Web Project).
-	 */
-	public Set getProjectConfiguredIncrementalValidators(IProject project) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			return InternalValidatorManager.wrapInSet(prjp.getIncrementalValidators());
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return Collections.EMPTY_SET;
-		}
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 * 
-	 * Return a collection of ValidatorMetaData configured on a certain type of IProject (e.g. EJB
-	 * Project vs. Web Project).
-	 * 
-	 * If the collection has not been calculated before, calculate it now, and cache the result.
-	 */
-	public Set getProjectConfiguredValidatorMetaData(IProject project) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			return InternalValidatorManager.wrapInSet(prjp.getValidators());
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return Collections.EMPTY_SET;
-		}
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 * 
-	 * Return a collection of ValidatorMetaData enabled on a certain type of IProject (e.g. EJB
-	 * Project vs. Web Project). The second parameter, isIncremental, identifies whether it's the
-	 * incremental, or non-incremental, validators which should be returned. If the parameter is
-	 * true, return incremental validators. If the parameter is false, return nonincremental
-	 * validators.
-	 */
-	public Set getProjectEnabledIncrementalValidators(IProject project) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			return InternalValidatorManager.wrapInSet(prjp.getEnabledIncrementalValidators(true));
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return Collections.EMPTY_SET;
-		}
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 * 
-	 * Return a collection of ValidatorMetaData enabled on a certain type of IProject (e.g. EJB
-	 * Project vs. Web Project). The second parameter, isIncremental, identifies whether it's the
-	 * incremental, or non-incremental, validators which should be returned. If the parameter is
-	 * true, return incremental validators. If the parameter is false, return nonincremental
-	 * validators.
-	 */
-	public Collection getProjectEnabledNonIncrementalValidators(IProject project) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			return InternalValidatorManager.wrapInSet(prjp.getEnabledIncrementalValidators(false));
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return Collections.EMPTY_SET;
-		}
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 * 
-	 * Returns a Vector of all ValidatorMetaData who are both configured on this type of project,
-	 * and who are also enabled by this project. If the list of enabled validators hasn't been
-	 * loaded into the cache, load it now. Otherwise, just return it.
-	 */
-	public Set getProjectEnabledValidators(IProject project) {
-		return getEnabledValidators(project);
-	}
-
-	public static ValidatorManager getManager() {
-		if (inst == null) {
-			inst = new ValidatorManager();
-		}
-		return inst;
-	}
-
-	public static IResourceUtil getResourceUtil() {
-		if (_resourceUtil == null) {
-			if (_resourceUtilClass == null) {
-				// Since the value returned from this method must never be null,
-				// default the resource util to the headless resource util.
-				_resourceUtilClass = RESOURCEUTIL_DEFAULTCLASS;
-			}
-
-			try {
-				_resourceUtil = (IResourceUtil) _resourceUtilClass.newInstance();
-			} catch (ClassCastException e) {
-				_resourceUtil = null;
-			} catch (InstantiationException e) {
-				_resourceUtil = null;
-			} catch (IllegalAccessException e) {
-				_resourceUtil = null;
-			}
-		}
-		return _resourceUtil;
-	}
-
-	/**
-	 * @deprecated This method is intended for use only by the validation framework. It will be
-	 *             moved to a class in the "internal" package at some time.
-	 */
-	public IMarker[] getValidationTasks(int severity, IProject project) {
-		return getValidationTasks(project, severity);
-	}
-
-	/**
-	 * @deprecated This method is intended for use only by the validation framework. It will be
-	 *             moved to a class in the "internal" package at some time.
-	 */
-	public IMarker[] getValidationTasks(IResource resource, int severity) {
-		return TaskListUtility.getValidationTasks(resource, severity);
-	}
-
-	/**
-	 * @deprecated This method is intended for use only by the validation framework. It will be
-	 *             moved to a class in the "internal" package at some time.
-	 */
-	public IMarker[] getValidationTasks(IResource resource, String[] validatorNames) {
-		return TaskListUtility.getValidationTasks(resource, validatorNames);
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 */
-	public ValidatorMetaData getValidatorMetaData(IValidator validator) {
-		return ValidationRegistryReader.getReader().getValidatorMetaData(validator);
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 */
-	public Set<ValidatorMetaData> getIncrementalValidators(Collection vmds) {
-		if (vmds == null)return new HashSet<ValidatorMetaData>();
-
-		Set<ValidatorMetaData> result = new HashSet<ValidatorMetaData>();
-		Iterator iterator = vmds.iterator();
-		while (iterator.hasNext()) {
-			ValidatorMetaData vmd = (ValidatorMetaData) iterator.next();
-			if (vmd.isIncremental()) {
-				result.add(vmd);
-			}
-		}
-		return result;
-	}
-
-
-	/**
-	 * Return true if the validator identified by validatorId will validate the given resource. If
-	 * either parameter is null, false is returned. If the validator is not registered with the
-	 * validation framework (i.e., either no validator in the activated plugins is identified by
-	 * that plugin id, or the given IResource's project does not run that particular validator),
-	 * then this method will return false.
-	 */
-	public boolean isApplicableTo(String validatorId, IResource res) {
-		if ((validatorId == null) || (res == null)) {
-			return false;
-		}
-
-		ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validatorId);
-		if (vmd == null) {
-			// validator not registered with the framework
-			return false;
-		}
-
-		if (!ValidationRegistryReader.getReader().isConfiguredOnProject(vmd, res.getProject())) {
-			return false;
-		}
-
-		return vmd.isApplicableTo(res);
-	}
-
-
-	public boolean isAutoValidate(IProject project) {
-		return isAutoValidate(project, isGlobalAutoBuildEnabled());
-	}
-
-	/**
-	 * Keeping this API around so as not to break existing code.
-	 * 
-	 * @deprecated use isAutoValidate
-	 */
-	public boolean isAutoValidateChecked(IProject project) {
-		return isAutoValidate(project);
-	}
-
-	/**
-	 * Keeping this API around so as not to break existing code.
-	 * 
-	 * @deprecated use isAutoValidate
-	 */
-	public boolean isAutoValidateChecked(IProject project, boolean isGlobalAutoBuildOn) {
-		return isAutoValidate(project, isGlobalAutoBuildOn);
-	}
-
-	/**
-	 * This method returns true if validate will run when there is a resource change. The following
-	 * attributes are checked: 1. does this project have auto-validate on or off? 2. if this project
-	 * does not have an auto-validate value set, is the global auto-validate preference on? 3. if 1
-	 * or 2 is true, does the project support auto-validate? 4. if 1/2, & 3, is auto-build on? 5. if
-	 * 1/2, 3, and 4, is there at least one incremental validator enabled on the project?
-	 * 
-	 * @deprecated auto validate is not used any more
-	 */
-	public boolean isAutoValidate(IProject project, boolean isGlobalAutoBuildOn) {
-		/*try {
-			// 1. does the project have auto-validate on or off?
-			boolean isAutoValidate = ConfigurationManager.getManager().getProjectConfiguration(project).isAutoValidate();
-			if (!isAutoValidate) {
-				return false;
-			}
-
-			// 3. does the project support auto-validate?
-			// 4. is auto-build on?
-			// 5. is there at least one incremental validator enabled on the project?
-			
-			 * Auto-validation, on the properties page, can be enabled under these conditions: 1.
-			 * the project supports auto-validation, AND 2. fhe platform's global "automatically
-			 * build" is selected, AND 3. at least one of the project's validators supports
-			 * incremental validation. Without #1, the ValidationBuilder is never called because
-			 * it's not configured on the project. Without #2, the ValidationBuilder will not be
-			 * called because auto-building is turned off. Without #3, the ValidationBuilder will be
-			 * called, but there's no point because no validators can run.
-			 
-			return canAutoValidateButtonBeEnabled(project, isGlobalAutoBuildOn);
-		} catch (InvocationTargetException exc) {
-			Logger logger = ValidationPlugin.getPlugin().getMsgLogger();
-			if (logger.isLoggingLevel(Level.SEVERE)) {
-				LogEntry entry = ValidationPlugin.getLogEntry();
-				entry.setSourceIdentifier("ValidatorManager.canAutoValidateButtonBeEnabled(" + project.getName() + ")"); //$NON-NLS-1$  //$NON-NLS-2$
-				entry.setTargetException(exc);
-				logger.write(Level.SEVERE, entry);
-
-				if (exc.getTargetException() != null) {
-					entry.setTargetException(exc);
-					logger.write(Level.SEVERE, entry);
-				}
-			}
-
-			// If the user's setting can't be retrieved, return the default
-			return ValidationConfiguration.getAutoValidateDefault();
-		}*/
-		return false;
-	}
-
-	public boolean canAutoValidateButtonBeEnabled(IProject project) {
-		return canAutoValidateButtonBeEnabled(project, isGlobalAutoBuildEnabled());
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 */
-	public Set getEnabledIncrementalValidators(IProject project) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			ValidatorMetaData[] vmds = prjp.getEnabledIncrementalValidators(true);
-			return InternalValidatorManager.wrapInSet(vmds);
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return Collections.EMPTY_SET;
-		}
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 * 
-	 * Given a checked list of enabled validators, return a set of the ones which are configured on
-	 * the project and, if getIncremental is true, which also run incrementally.
-	 */
-	public Set<ValidatorMetaData> getProjectConfiguredValidators(IProject project, Object[] enabledVal, 
-			boolean getIncremental) {
-		if ((project == null) || (enabledVal == null) || (enabledVal.length == 0)) {
-			return new HashSet<ValidatorMetaData>();
-		}
-
-		Set<ValidatorMetaData> val = new HashSet<ValidatorMetaData>();
-		for (int i = 0; i < enabledVal.length; i++) {
-			ValidatorMetaData vmd = (ValidatorMetaData) enabledVal[i];
-			if (!vmd.isConfiguredOnProject(project))continue;
-
-			if (!getIncremental || vmd.isIncremental())val.add(vmd);
-		}
-		return val;
-	}
-
-	public boolean containsIncrementalValidators(Object[] enabledVal) {
-		if ((enabledVal == null) || (enabledVal.length == 0)) {
-			return false;
-		}
-
-		for (int i = 0; i < enabledVal.length; i++) {
-			ValidatorMetaData vmd = (ValidatorMetaData) enabledVal[i];
-
-			if (vmd.isIncremental()) {
-				return true;
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	 * For use by the validation framework only.
-	 */
-	protected Set<ValidatorMetaData> getEnabledValidators(IProject project) {
-		try {
-			ValidatorMetaData[] vmds = null;
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			if(!prjp.useGlobalPreference()) 
-			   vmds = prjp.getEnabledValidators();
-			else
-			   vmds = getStateOfProjectLevelValidatorsFromGlobal(prjp);
-			return InternalValidatorManager.wrapInSet(vmds);
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return Collections.EMPTY_SET;
-		}
-	}
-
-	private ValidatorMetaData[] getStateOfProjectLevelValidatorsFromGlobal(ProjectConfiguration prjp) throws InvocationTargetException {
-		List<ValidatorMetaData> enabledGlobalValidatorsForProject = new ArrayList<ValidatorMetaData>();
-		GlobalConfiguration gf = ConfigurationManager.getManager().getGlobalConfiguration();
-		List allProjectValidator = getAllValidatorUniqueNames(prjp.getValidators());
-		for(ValidatorMetaData vmd : gf.getBuildEnabledValidators()) {
-			if(allProjectValidator.contains(vmd.getValidatorUniqueName())) {
-				enabledGlobalValidatorsForProject.add(vmd);
-			}
-	   }
-		return (ValidatorMetaData[]) enabledGlobalValidatorsForProject.toArray(new ValidatorMetaData[enabledGlobalValidatorsForProject.size()]);
-	}
-	
-	private List<String> getAllValidatorUniqueNames(ValidatorMetaData[] metaData) {
-		List<String> names = new ArrayList<String>();
-		for(ValidatorMetaData vmd : metaData) {
-			names.add(vmd.getValidatorUniqueName());
-		}
-		return names;
-	}
-	
-	
-
-	protected Set<ValidatorMetaData> getManualEnabledValidators(IProject project) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			ValidatorMetaData[] vmds = prjp.getManualEnabledValidators();
-			return InternalValidatorManager.wrapInSet(vmds);
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return Collections.EMPTY_SET;
-		}
-	}	
-	
-	protected Set<ValidatorMetaData> getBuildEnabledValidators(IProject project) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			ValidatorMetaData[] vmds = prjp.getBuildEnabledValidators();
-			return InternalValidatorManager.wrapInSet(vmds);
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return Collections.EMPTY_SET;
-		}
-	}	
-	
-	/**
-	 * This method is for use only by the validation framework. Update the task list based on which
-	 * validators are enabled or disabled. This method should be called only by the validation
-	 * framework UI classes. Remove the messages belonging to disabled validators.
-	 */
-	public void updateTaskList(IProject project) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			ValidatorMetaData[] vmds = prjp.getDisabledValidators();
-			for (int i = 0; i < vmds.length; i++) {
-				ValidatorMetaData vmd = vmds[i];
-				// For validators who aren't going to run, clear their messages from the task list.
-				// Don't need to check for duplicate entries because each Validator must be unique.
-				// The uniqueness of each Validator is checked by the plugin registry.
-				WorkbenchReporter.removeAllMessages(project, vmd.getValidatorNames(), null);
-			}
-			 //Message Limit is removed from the framework - WTP1.5M5
-			/*if (prjp.numberOfEnabledValidators() > 0) {
-				ValidatorManager.getManager().checkMessageLimit(project, false); // Do not remove
-				// the exceeded
-				// message; only
-				// ValidationOperation
-				// should do that
-				// because it's
-				// about to run
-				// validation. If
-				// the limit is
-				// increased,
-				// messages may
-				// still be
-				// missing, so
-				// don't remove the
-				// "messages may be
-				// missing"
-				// message.
-			} else {
-				// Can't run validation, so remove the "exceeded" message
-				ValidatorManager.getManager().removeMessageLimitExceeded(project);
-			}*/
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-		}
-	}
-
-
-	public boolean canAutoValidateButtonBeEnabled(IProject project, boolean isGlobalAutoBuildOn) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			boolean incrementalValEnabled = (prjp.numberOfEnabledIncrementalValidators() > 0);
-			return canAutoValidateButtonBeEnabled(project, isGlobalAutoBuildOn, incrementalValEnabled);
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return false;
-		}
-	}
-
-	public boolean canAutoValidateButtonBeEnabled(IProject project, boolean isGlobalAutoBuildOn, boolean incrementalValEnabled) {
-		boolean doesProjectSupportAutoValidate = doesProjectSupportBuildValidation(project);
-		return (doesProjectSupportAutoValidate && isGlobalAutoBuildOn && incrementalValEnabled);
-	}
-
-	/**
-	 * Return true if the validator identified by the String is configured on the IProject and
-	 * enabled on the IProject. Otherwise return false;
-	 */
-	public boolean isEnabled(IProject project, String validatorName) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			return prjp.isEnabled(validatorName);
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return false;
-		}
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only. Return true if the ValidatorMetaData is
-	 *             enabled for the given project
-	 */
-	public boolean isEnabled(IProject project, ValidatorMetaData vmd) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			return prjp.isEnabled(vmd);
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return false;
-		}
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 */
-	public boolean isConfigured(IProject project, ValidatorMetaData vmd) {
-		return ValidationRegistryReader.getReader().isConfiguredOnProject(vmd, project);
-	}
-
-	/**
-	 * This method returns true if the global auto-build setting is turned on.
-	 */
-	public boolean isGlobalAutoBuildEnabled() {
-		return ResourcesPlugin.getWorkspace().isAutoBuilding();
-	}
-
-	/**
-	 * Returns the number of enabled validators on the given project.
-	 */
-	public int numberProjectEnabledValidators(IProject project) {
-		if (project == null) {
-			return 0;
-		}
-
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			return prjp.numberOfEnabledValidators();
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return 0;
-		}
-	}
-
-
-	/**
-	 * @deprecated Use ValidationFramework.suspendValidation(project, suspend) directly.
-	 * @see ValidationFramework#suspendValidation(IProject, boolean)
-	 */
-	public void suspendValidation(IProject project, boolean suspend) {
-		ValidationFramework.getDefault().suspendValidation(project, suspend);
-	}
-
-	/**
-	 * @deprecated Use ValidationFramework.getDefault().suspendAllValidation(suspend) directly.
-	 * @see ValidationFramework#suspendAllValidation(boolean)
-	 */
-	public void suspendAllValidation(boolean suspend) {
-		ValidationFramework.getDefault().suspendAllValidation(suspend);
-	}
-
-	/**
-	 * @deprecated Use ValidationFramework.getDefault().isSuspended() directly.
-	 * @see ValidationFramework#isSuspended()
-	 */
-	public boolean isSuspended() {
-		return ValidationFramework.getDefault().isSuspended();
-	}
-
-	/**
-	 * @deprecated Use ValidationFramework.getDefault().isSuspended(project) directly.
-	 * @see ValidationFramework#isSuspended(IProject)
-	 */
-	public boolean isSuspended(IProject project) {
-		return ValidationFramework.getDefault().isSuspended(project);
-	}
-
-	/**
-	 * @deprecated Use ValidationFramework.getDefault().isProjectSuspended(project) directly.
-	 * @see ValidationFramework#isProjectSuspended(IProject)
-	 */
-	public boolean isProjectSuspended(IProject project) {
-		return ValidationFramework.getDefault().isProjectSuspended(project);
-	}
-
-	/**
-	 * @deprecated For use by the validation framework only.
-	 * 
-	 * Given a list of validators' plugin ids, make those validators enabled for this project. All
-	 * others, disable for this project.
-	 */
-	public void setEnabledValidators(IProject project, Set<ValidatorMetaData> vmdsSet, IProgressMonitor monitor) {
-		try {
-			ProjectConfiguration prjp = ConfigurationManager.getManager().getProjectConfiguration(project);
-			ValidatorMetaData[] vmds = null;
-			if (vmdsSet == null) {
-				vmds = new ValidatorMetaData[0];
-			} else {
-				vmds = new ValidatorMetaData[vmdsSet.size()];
-				vmdsSet.toArray(vmds);
-			}
-
-			prjp.setEnabledValidators(vmds);
-
-			updateTaskList(project);
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-		}
-	}
-
-	public static void setResourceUtilClass(Class clazz) {
-		_resourceUtilClass = clazz;
-	}
-
-	/**
-	 * This method is for use by batch EJB deploy only. Only in batch mode is an infinite number of
-	 * messages allowed.
-	 * 
-	 * Enable a project to have an infinite number of messages.
-	 * @deprecated
-	 */
-	public void setNoMessageLimit(IProject project) {/*
-		setMessageLimit(project, WorkbenchReporter.NO_MESSAGE_LIMIT);
-	*/}
-
-	/**
-	 * This message is for use only by the validation framework. If the "max messages were reported"
-	 * IMarker exists, return it. Otherwise return null.
-	 */
-	private IMarker[] getLimitMessage(IProject project) {
-		IMarker[] exceededMessage = TaskListUtility.getValidationTasks(project, WorkbenchReporter.getUniqueId(getMessageLimitOwner()));
-		if ((exceededMessage != null) && (exceededMessage.length != 0)) {
-			return exceededMessage;
-		}
-
-		return null;
-	}
-
-//	/**
-//	 * Return true if the given IMarker is a "limit was exceeded" message, false otherwise.
-//	 */
-//	private boolean isLimitMessage(IMarker marker) {
-//		if (marker == null) {
-//			return false;
-//		}
-//
-//		return TaskListUtility.isOwner(marker, WorkbenchReporter.getUniqueId(getMessageLimitOwner()));
-//	}
-
-//	/**
-//	 * Return all of the IMarkers on the IProject excluding the "limit was exceeded" message. If
-//	 * there are no markers, return null.
-//	 */
-//	private IMarker[] getValidationTasksWithoutLimitMessage(IProject project) {
-//		IMarker[] allTasks = TaskListUtility.getValidationTasks(project, IMessage.ALL_MESSAGES);
-//		if ((allTasks == null) || (allTasks.length == 0)) {
-//			return null;
-//		}
-//
-//		// Don't check if the limit message exists because
-//		// any interaction with markers is costly. Since the
-//		// interaction has to be done at least once, make that
-//		// single occasion in the for loop below.
-//		IMarker[] validatorMessages = new IMarker[allTasks.length];
-//		int count = 0; // how many markers have been added to the result array?
-//		for (int i = 0; i < allTasks.length; i++) {
-//			IMarker marker = allTasks[i];
-//			if (isLimitMessage(marker)) {
-//				continue;
-//			}
-//			validatorMessages[count++] = marker;
-//		}
-//
-//		IMarker[] result = new IMarker[count];
-//		System.arraycopy(validatorMessages, 0, result, 0, count);
-//		return result;
-//	}
-
-	/**
-	 * This method should be called only by the validation framework. Return true if the message was
-	 * removed, false if the message didn't exist.
-	 * @deprecated This method should be not be used anymore as Message Limit is removed from
-	 * the framework - WTP1.5M5
-	 */
-	public boolean removeMessageLimitExceeded(IProject project) {
-		IMarker[] exceededMessage = getLimitMessage(project);
-		if (exceededMessage != null) {
-			try {
-				ResourcesPlugin.getWorkspace().deleteMarkers(exceededMessage);
-				return true;
-			} catch (CoreException e) {
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Return true if the last validation operation terminated due to the maximum number of messages
-	 * having already been reported.
-	 */
-	public boolean wasValidationTerminated(IProject project) {
-		IMarker[] exceededMessage = getLimitMessage(project);
-		return (exceededMessage != null); // Validation was terminated if the message exists.
-	}
-
-	private Class getMessageLimitOwner() {
-		if (_messageLimitOwner == null) {
-			_messageLimitOwner = getClass();
-		}
-		return _messageLimitOwner;
-	}
-
-	/**
-	 * Return true if owner is the name of the class which owns validation framework status
-	 * messages.
-	 * 
-	 * ONLY the validation framework should use this method.
-	 */
-	public boolean isInternalOwner(String owner) {
-		if (owner == null) {
-			return false;
-		}
-
-		for (int i = 0; i < _internalOwners.length; i++) {
-			String internalOwner = _internalOwners[i];
-			if (owner.equals(internalOwner)) {
-				return true;
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	 * Add a class to the list of owners of validation messages. ONLY by the validation framework
-	 * should use this method (it is used for messages owned by framework classes or classes used by
-	 * the TVT plugin.)
-	 */
-	public void addInternalOwner(Class clazz) {
-		if (clazz == null) {
-			return;
-		}
-
-		String[] tempInternalOwners = new String[_internalOwners.length + 1];
-		if (_internalOwners.length > 0) {
-			System.arraycopy(_internalOwners, 0, tempInternalOwners, 0, _internalOwners.length);
-		}
-		tempInternalOwners[_internalOwners.length] = WorkbenchReporter.getUniqueId(clazz);
-
-		_internalOwners = tempInternalOwners;
-	}
-	
-	public void cacheMessage(IValidatorJob validator, MessageInfo info){
-		List<MessageInfo> list = _validatorMsgs.get(validator);
-		if( list == null ){
-			list = new ArrayList<MessageInfo>();
-			_validatorMsgs.put(validator, list);
-		}
-		list.add(info);
-	}
-	
-	public List<MessageInfo> getMessages(IValidatorJob validator){
-		List<MessageInfo> list = _validatorMsgs.get(validator);
-		if( list == null )list = new ArrayList<MessageInfo>();		
-		return list;
-	}
-	
-	public void clearMessages(IValidatorJob validator){
-		List<MessageInfo> list = _validatorMsgs.get(validator);
-		if( list != null ){
-			list.clear();
-		}
-		_validatorMsgs.remove( validator );
-	}
-
-	
-	public Set<ValidatorMetaData> getProblemValidators() {
-		return _problemValidators;
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidatorSubsetOperation.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidatorSubsetOperation.java
deleted file mode 100644
index 274ddec..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidatorSubsetOperation.java
+++ /dev/null
@@ -1,277 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.wst.validation.internal.FilterUtil;
-import org.eclipse.wst.validation.internal.InternalValidatorManager;
-import org.eclipse.wst.validation.internal.RegistryConstants;
-import org.eclipse.wst.validation.internal.ResourceConstants;
-import org.eclipse.wst.validation.internal.ResourceHandler;
-import org.eclipse.wst.validation.internal.ValidationRegistryReader;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-
-
-/**
- * Run some validators on a given IProject. Any validators which cannot be loaded or which are not
- * registered against this type of project will be ignored.
- * 
- * This operation is not intended to be subclassed outside of the validation framework.
- */
-public class ValidatorSubsetOperation extends ValidationOperation {
-	// By default, assume that there is no default fallback extension
-	protected static final String DEFAULT_DEFAULTEXTENSION = null; 
-
-	/**
-	 * Create an operation that runs a full validation on the named validators either if validation
-	 * needs to (@see ValidatorSubsetOperation(IProject)) or if <code>force</code> is true.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all thread-safe validators in the background
-	 * validation thread, and all other validators in the main thread. If async is false, all
-	 * validators will run in in the main thread.
-	 */
-	public ValidatorSubsetOperation(IProject project, boolean force, boolean async) {
-		this(project, force, RegistryConstants.ATT_RULE_GROUP_DEFAULT, async);
-	}
-
-	/**
-	 * Create an operation that runs a full validation on the named validators using the
-	 * <code>ruleGroup</code> pass. Use this constructor only if you want to run a validator that
-	 * supports the two passes: FAST and FULL.
-	 * 
-	 * If force is true, validation is run whether or not it needs to.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all thread-safe validators in the background
-	 * validation thread, and all other validators in the main thread. If async is false, all
-	 * validators will run in in the main thread.
-	 */
-	public ValidatorSubsetOperation(IProject project, IWorkbenchContext aWorkenchContext, boolean force, int ruleGroup, boolean async) {
-		super(project, aWorkenchContext, null, null, ruleGroup, force, async);
-	}
-	
-
-	/**
-	 * Create an operation that runs a full validation on the named validators using the
-	 * <code>ruleGroup</code> pass. Use this constructor only if you want to run a validator that
-	 * supports the two passes: FAST and FULL.
-	 * 
-	 * If force is true, validation is run whether or not it needs to.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all thread-safe validators in the background
-	 * validation thread, and all other validators in the main thread. If async is false, all
-	 * validators will run in in the main thread.
-	 */
-	public ValidatorSubsetOperation(IProject project, boolean force, int ruleGroup, Object[] changedResources, boolean async) {
-		super(project, null, null, ruleGroup, force, async);
-		setEnabledValidators(ValidatorManager.getManager().getManualEnabledValidators(project));
-		setFileDeltas(FilterUtil.getFileDeltas(getEnabledValidators(), changedResources, false));
-	}
-	
-	/**
-	 * Create an operation that runs a full validation on the named validators using the
-	 * <code>ruleGroup</code> pass. Use this constructor only if you want to run a validator that
-	 * supports the two passes: FAST and FULL.
-	 * 
-	 * If force is true, validation is run whether or not it needs to.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all thread-safe validators in the background
-	 * validation thread, and all other validators in the main thread. If async is false, all
-	 * validators will run in in the main thread.
-	 */
-	public ValidatorSubsetOperation(IProject project, boolean force, int ruleGroup, boolean async) {
-		super(project, null, null, ruleGroup, force, async);
-	}
-
-	/**
-	 * The fileExtension parameter must be ".X", where X is the extension. Do not type "*.X" or "X"
-	 * (i.e., without the dot). The parameter could also be the file name, e.g. "foo.X".
-	 * 
-	 * This constructor should be used when the invoker wishes to force validation on certain
-	 * resources, without waiting for the user to save their changes.
-	 * 
-	 * An IllegalArgumentException is thrown if there are no validators registered for the
-	 * fileExtension on the given IProject.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all thread-safe validators in the background
-	 * validation thread, and all other validators in the main thread. If async is false, all
-	 * validators will run in in the main thread.
-	 */
-	public ValidatorSubsetOperation(IProject project, String fileExtension, Object[] changedResources, boolean async) throws IllegalArgumentException {
-		this(project, fileExtension, DEFAULT_DEFAULTEXTENSION, changedResources, async);
-	}
-
-	/**
-	 * The fileExtension parameter must be ".X", where X is the extension. Do not type "*.X" or "X"
-	 * (i.e., without the dot). The parameter could also be the file name, e.g. "foo.X".
-	 * 
-	 * This constructor should be used when the invoker wishes to force validation on certain
-	 * resources, without waiting for the user to save their changes.
-	 * 
-	 * If there are no validators configured on files named ".X", then use the validators configured
-	 * on validators named ".Y", where defaultExtension identifies the fallback extension to use.
-	 * defaultExtension follows the same syntax as fileExtension.
-	 * 
-	 * An IllegalArgumentException is thrown if there are no validators registered for the
-	 * fileExtension or defaultExtension on the given IProject.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all thread-safe validators in the background
-	 * validation thread, and all other validators in the main thread. If async is false, all
-	 * validators will run in in the main thread.
-	 */
-	public ValidatorSubsetOperation(IProject project, String fileExtension, String defaultExtension, Object[] changedResources, boolean async) throws IllegalArgumentException {
-		super(project, shouldForce(changedResources), async);
-
-		// force the resources to be filtered in even if the validator doesn't normally take them?
-		boolean filterIn = false; 
-		
-		// a list of validators which are configured to run on files with that extension.
-		// A validator will be in the list whether it has been enabled or disabled by the user.
-		ValidatorMetaData[] vmds = InternalValidatorManager.getManager().getValidatorsForExtension(project, fileExtension);
-		if ((defaultExtension != null) && ((vmds == null) || (vmds.length == 0))) {
-			filterIn = true;
-			vmds = InternalValidatorManager.getManager().getValidatorsForExtension(project, defaultExtension);
-		}
-
-		if ((vmds == null) || (vmds.length == 0)) {
-			throw new IllegalArgumentException();
-		}
-
-		setEnabledValidators(InternalValidatorManager.wrapInSet(vmds));
-
-		// construct an array of IFileDelta[] to wrap the Object[];
-		// one IFileDelta for each Object in the array
-		setFileDeltas(FilterUtil.getFileDeltas(getEnabledValidators(), changedResources, filterIn));
-	}
-
-	/**
-	 * This constructor is provided for the validation async testing, and is not intended to be
-	 * called outside the validation framework.
-	 * 
-	 * Run validation on the changed resources with the given validators. All resources must be from
-	 * the same project; if they're not, an IllegalArgumentException will be thrown. All validators
-	 * must be able to run on the resources' project; if not, an IllegalArgumentException will be
-	 * thrown. If the vmds are either empty or null, an IllegalArgumentExeption will be thrown. If
-	 * the project is closed or doesn't exist then an IllegalArgumentException will be thrown.
-	 * 
-	 * The ifileDeltaType is one of the IFileDelta constants: ADDED, CHANGED, or DELETED.
-	 * 
-	 * IProject must exist and be open.
-	 * 
-	 * If async is true, the validation will run all thread-safe validators in the background
-	 * validation thread, and all other validators in the main thread. If async is false, all
-	 * validators will run in in the main thread.
-	 */
-	public ValidatorSubsetOperation(IProject project, ValidatorMetaData[] vmds, IResource[] changedResources, int ifileDeltaType, boolean force, boolean async) throws IllegalArgumentException {
-		// Have to have the IProject as a parameter because ValidationOperation needs the IProject,
-		// and the super(..)
-		// must be called before anything else in this constructor is called.
-		super(project, force, async);
-
-		if ((vmds == null) || (vmds.length == 0)) {
-			throw new IllegalArgumentException(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_BADVMD));
-		}
-
-		if (!project.isOpen()) {
-			throw new IllegalArgumentException(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_OPENPRJ, new String[]{project.getName()}));
-		}
-		if (!project.exists()) {
-			throw new IllegalArgumentException(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_EXISTPRJ, new String[]{project.getName()}));
-		}
-
-		if ((changedResources != null) && (changedResources.length > 0)) {
-			Set<IProject> tempSet = new HashSet<IProject>();
-			for (int i = 0; i < changedResources.length; i++) {
-				IProject p = changedResources[i].getProject();
-				if (!p.isOpen()) {
-					throw new IllegalArgumentException(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_OPENPRJ, new String[]{p.getName()}));
-				}
-				if (!p.exists()) {
-					throw new IllegalArgumentException(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_EXISTPRJ, new String[]{p.getName()}));
-				}
-				tempSet.add(project);
-			}
-
-			if (!tempSet.contains(project)) {
-				throw new IllegalArgumentException(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_BADPRJ, new String[]{project.getName()}));
-			}
-			if (tempSet.size() != 1) {
-				StringBuffer buffer = new StringBuffer("\n"); //$NON-NLS-1$
-				Iterator<IProject> iterator = tempSet.iterator();
-				while (iterator.hasNext()) {
-					IProject p = iterator.next();
-					buffer.append("\t"); //$NON-NLS-1$
-					buffer.append(p.getName());
-					if (iterator.hasNext()) {
-						buffer.append(", "); //$NON-NLS-1$
-					}
-				}
-				throw new IllegalArgumentException(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_MULTIPRJ, new String[]{buffer.toString()}));
-			}
-		}
-
-		for (int i = 0; i < vmds.length; i++) {
-			ValidatorMetaData vmd = vmds[i];
-			if (!ValidationRegistryReader.getReader().isConfiguredOnProject(vmd, project)) {
-				throw new IllegalArgumentException(ResourceHandler.getExternalizedMessage(ResourceConstants.VBF_EXC_BADVAL, new String[]{vmd.getValidatorDisplayName(), project.getName()}));
-			}
-		}
-
-		setEnabledValidators(InternalValidatorManager.wrapInSet(vmds));
-		setFileDeltas(FilterUtil.getFileDeltas(getEnabledValidators(), changedResources, ifileDeltaType)); // construct
-		// an array of IFileDelta[] to wrap the IResource[]; one IFileDelta for each IResource in the array
-	}
-
-	/**
-	 * Given an array of fully-qualified class names of validators, create the list of validators to
-	 * be run. The array is not checked for duplicates or for invalid validators (i.e., a validator
-	 * of that class type is not loaded, or the validator is loaded but cannot run against this type
-	 * of IProject.)
-	 */
-	public void setValidators(String[] validatorNames) throws IllegalArgumentException {
-		Set<ValidatorMetaData> enabled = new HashSet<ValidatorMetaData>();
-		for (String name : validatorNames) {
-			ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(name);
-			if (vmd == null) {
-				// No validator, with that plug-in id, can be run on that project.
-				// Either the validator isn't installed, or the IProject passed in
-				// doesn't have the necessary nature.
-				throw new IllegalArgumentException(name);
-			}
-			enabled.add(vmd);
-		}
-		setEnabledValidators(enabled);
-	}
-
-	/**
-	 * @deprecated Will be removed in Milestone 3. Use setForce(boolean)
-	 */
-	public void setAlwaysRun(boolean force) {
-		setForce(force);
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/WorkbenchContext.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/WorkbenchContext.java
deleted file mode 100644
index eea36c1..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/WorkbenchContext.java
+++ /dev/null
@@ -1,729 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Hashtable;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.validation.internal.RegistryConstants;
-import org.eclipse.wst.validation.internal.Tracing;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-
-/**
- * Abstract base class for registration of symbolic model names, and also provides the mechanism for
- * registering the load model method which loads a specific type of MOF model, as identified by the
- * symbolic model name.
- */
-public class WorkbenchContext implements IWorkbenchContext {
-	private IProject 	_project;
-	private Hashtable<String,Method> 	_modelRegistry;
-	private int 		_ruleGroup = RegistryConstants.ATT_RULE_GROUP_DEFAULT;
-	public List<String> validationFileURIs; 
-	public static final String GET_PROJECT_FILES = "getAllFiles"; //$NON-NLS-1$
-	public static final String GET_FILE = "getFile"; //$NON-NLS-1$
-	public static final String VALIDATION_MARKER = "com.ibm.etools.validation.problemmarker"; //$NON-NLS-1$
-	public static final String VALIDATION_MARKER_OWNER = "owner";  //$NON-NLS-1$
-
-	public WorkbenchContext() {
-		super();
-		_modelRegistry = new Hashtable<String, Method>();
-
-		registerModel(IRuleGroup.PASS_LEVEL, "loadRuleGroup"); //$NON-NLS-1$
-		
-		//the following will register the helper's symbolic methods
-	    Class [] args = new Class[1] ;
-	    args[0] = String.class ;  // a string argument denoting a specific JSP.
-		registerModel(GET_FILE, "getFile", args);//$NON-NLS-1$
-		registerModel(GET_PROJECT_FILES, "getFiles", args);//$NON-NLS-1$
-	}
-
-	/**
-	 * When the validation is complete, this method will be called so that the IWorkbenchContext can
-	 * clean up any resources it allocated during the validation.
-	 * 
-	 * If the cleanup is a long-running operation, subtask messages should be sent to the IReporter.
-	 */
-	public void cleanup(WorkbenchReporter reporter) {
-		// Default: nothing to clean up
-	}
-
-	/**
-	 * When the IProject is closing, perform any cleanup that needs to be done. When this method is
-	 * called, if the helper has cached any resources from the IProject, it should release those
-	 * resources. If you do not allocate resources in your helper, then this method should be a
-	 * no-op.
-	 */
-	public void closing() {
-		closing(getProject());
-	}
-
-	/**
-	 * When the IProject is closing, perform any cleanup that needs to be done. When this method is
-	 * called, if the helper has cached any resources from the IProject, it should release those
-	 * resources. If you do not allocate resources in your helper, then this method should be a
-	 * no-op.
-	 * 
-	 * @deprecated Override closing() instead, and use getProject()
-	 */
-	public void closing(IProject project) {
-		//do nothing
-	}
-
-	/**
-	 * When the IProject is being deleted, perform any cleanup that needs to be done. When this
-	 * method is called, if the helper has cached any resources from the IProject, it should release
-	 * those resources. If you do not allocate resources in your helper, then this method should be
-	 * a no-op.
-	 */
-	public void deleting() {
-		deleting(getProject());
-	}
-
-	/**
-	 * When the IProject is being deleted, perform any cleanup that needs to be done. When this
-	 * method is called, if the helper has cached any resources from the IProject, it should release
-	 * those resources. If you do not allocate resources in your helper, then this method should be
-	 * a no-op.
-	 * 
-	 * @deprecated Override deleting() instead, and use getProject()
-	 */
-	public void deleting(IProject project) {
-		//do nothing
-	}
-
-	/**
-	 * Returns the IPath of a resource, relative to the container. If the IResource is not a member
-	 * of the container, return null. This method should be useful for implementors of this class;
-	 * specifically, in their getPortableName method.
-	 */
-	public static String getContainerRelativePath(String fullPath, IContainer container) {
-		if ((fullPath == null) || (container == null))
-			return null;
-		IPath relPath = getContainerRelativePath(new Path(fullPath), container);
-		if (relPath != null)
-			return relPath.toString();
-		return null;
-	}
-
-	/**
-	 * Returns the IPath of a resource, relative to the container. If the IResource is not a member
-	 * of the container, return null. This method should be useful for implementors of this class;
-	 * specifically, in their getPortableName method.
-	 */
-	public static IPath getContainerRelativePath(IResource resource, IContainer container) {
-		if ((resource == null) || (container == null)) {
-			return null;
-		}
-
-		IResource foundResource = null;
-		IPath relPath = getContainerRelativePath(resource.getFullPath(), container);
-		if (relPath != null) {
-			// if relPath is null, the resource is not a direct member of the container
-			try {
-				if (!resource.exists()) { // findMember won't work
-					if (resource instanceof IFile) {
-						foundResource = container.getFile(relPath);
-					} else if (resource instanceof IFolder) {
-						foundResource = container.getFolder(relPath);
-					}
-				} else {
-					foundResource = container.findMember(relPath, true); // true means include
-					// phantom resources
-					if ((foundResource != null) && !foundResource.exists()) {
-						foundResource = null;
-					}
-				}
-			} catch (IllegalArgumentException e) {
-				foundResource = null;
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-		}
-
-		if (foundResource == null) {
-			return null;
-		}
-
-		// file has been found
-		int matchingFirstSegments = container.getProjectRelativePath().matchingFirstSegments(resource.getProjectRelativePath());
-		return resource.getProjectRelativePath().removeFirstSegments(matchingFirstSegments);
-	}
-
-	/**
-	 * Given an IPath, if the IPath is absolute, and is a part of the IContainer, return an IPath
-	 * which is relative to the container. If the IPath is not part of the IContainer, return null.
-	 */
-	public static IPath getContainerRelativePath(IPath path, IContainer container) {
-		if ((path == null) || (container == null)) {
-			return null;
-		}
-
-		if (path.isAbsolute()) {
-			// Is the path part of the IContainer?
-			int matchingFirstSegments = path.matchingFirstSegments(container.getFullPath());
-			if ((matchingFirstSegments > 0) && (matchingFirstSegments == container.getFullPath().segmentCount())) {
-				// part of the IContainer
-				return path.removeFirstSegments(matchingFirstSegments);
-			}
-			// not part of the IContainer
-			return null;
-		}
-		// path is relative
-		// Is the path part of the IContainer?
-		//TODO don't have time to implement this now, but should in future. - Ruth
-		return null;
-	}
-
-	/**
-	 * Given an IMessage's target object, return a string which identifies the object, so that the
-	 * user can locate it.
-	 */
-	public String getDescription(Object object) {
-		if (object == null) {
-			return ""; //$NON-NLS-1$
-		}
-
-		if (object instanceof WorkbenchFileDelta) {
-			WorkbenchFileDelta wfd = (WorkbenchFileDelta) object;
-			if (wfd.getResource() != null) {
-				// resource will be null if WorkbenchFileDelta was constructed from an Object
-				// instead of an IResource
-				return wfd.getResource().getFullPath().toString();
-			}
-		}
-
-		return object.toString();
-	}
-
-	/**
-	 * Given an Object, if the object has a corresponding IFile in the workbench, return the IFile.
-	 * Otherwise return null.
-	 * 
-	 * This method is used by the WorkbenchReporter. In eclipse, in order to add or remove a task
-	 * list entry, the IResource, to which the entry applies, must be identified. The IReporter
-	 * interface passes in an Object in these methods:
-	 * 
-	 * addValidationMessage(IValidator, IMessage) // Object is a part of IMessage
-	 * 
-	 * removeAllMessages(IValidator, Object),
-	 * 
-	 * Thus, the WorkbenchReporter needs to know how, given the Object, which IFile that the Object
-	 * represents in the workbench, in order to be able to add the task list entry.
-	 * 
-	 * If this method returns null, then the WorkbenchReporter will add the message to the IProject
-	 * instead of an IFile.
-	 *  
-	 */
-	public IFile getFile(Object obj) {
-		return null;
-	}
-
-	public IResource getResource(Object obj) {
-		if (obj == null) {
-			return null;
-		}
-
-		IResource res = null;
-		if (obj instanceof WorkbenchFileDelta) {
-			// resource may be null if WorkbenchFileDelta was constructed from an Object instead of
-			// an IResource
-			res = ((WorkbenchFileDelta) obj).getResource();
-		} else if (obj instanceof IResource) {
-			res = (IResource) obj;
-		}
-
-		if ((res == null) || (!res.exists())) {
-			return getFile(obj);
-		}
-
-		return res;
-	}
-
-	/**
-	 * If the IProject is associated with an EJBNatureRuntime, return the IJavaProject which
-	 * represents it.
-	 */
-//	public static IJavaProject getJavaProject(IProject project) {
-//		if (project == null) {
-//			return null;
-//		}
-//		return JavaCore.create(project);
-//	}
-
-	/**
-	 * Given an IMessage's target object, return the line number, of the IFile, which the target
-	 * object represents. If the object is null, or if access to line numbers is not possible,
-	 * return "0".
-	 */
-	public int getLineNo(Object object) {
-		IResourceUtil util = ValidatorManager.getResourceUtil();
-		if (util == null) {
-			return IMessage.LINENO_UNSET;
-		}
-		try {
-			return util.getLineNo(object);
-		} catch (Exception e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return IMessage.LINENO_UNSET;
-		}
-
-	}
-	
-	/**
-	 * Given an IMessage's target object, return the line number, of the IFile, which the target
-	 * object represents, if possible. If the object is null, or if access to line numbers is not
-	 * possible, return a text description of the location.
-	 * 
-	 * This method will be called whether or not the IResource is an IFile, IFolder, or IProject.
-	 * Line numbers are valid only for IFile types; if the resource is not an IFile, then a text
-	 * description of the location must be returned.
-	 */
-	public String getLocation(Object object) {
-		IResource res = getResource(object);
-		if ((res == null) || !(res instanceof IFile))
-			// return a text description
-			return getDescription(object);
-		// default to a line number, if it's available. Else, use a text description.
-		int lineNumber = getLineNo(object);
-		if (lineNumber == IMessage.LINENO_UNSET) {
-			return getDescription(object);
-		}
-		// return the line number
-		return String.valueOf(lineNumber);
-	}
-
-	/**
-	 * Given a name of a load method, and the types of parameters it takes (this method is always
-	 * called with null as the second parameter), return the java.lang.reflect.Method which
-	 * represents the load method.
-	 */
-	private final Method getMethod(String methodName, Class[] parmTypes) {
-		Method m = null;
-		try {
-			m = getClass().getMethod(methodName, parmTypes);
-		} catch (NoSuchMethodException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return null;
-		}
-
-		return m;
-	}
-
-	/**
-	 * @see IWorkbenchContext.getPortableName(IResource)
-	 */
-	public String getPortableName(IResource resource) {
-		return resource.getFullPath().toString();
-	}
-
-	/**
-	 * Return the IProject which is about to be validated. Each IWorkbenchContext knows how to
-	 * traverse a certain type of IProject, for example, an EJB project or a web project.
-	 */
-	public final IProject getProject() {
-		return _project;
-	}
-	
-	  /**
-	   * Get the IFile for the given filename.
-	   * 
-	   * @param filename The name of the file to retrieve.
-	   * @return An IFile representing the file specified or null if it can't be resolved.
-	   */
-	  public IFile getFile(String filename)
-	  {
-	    //    System.out.println("file name = " + filename);
-	    IResource res = getProject().findMember(filename, true); // true means include phantom resources
-	    if (res instanceof IFile) 
-	    {
-	      return (IFile) res;
-	    }
-	    return null;
-	  }
-	  
-	  /**
-	   * Get the collection of files from the project that are relevant for the
-	   * validator with the given class name.
-	   * 
-	   * @param validatorClassName The name of the validator class.
-	   * @return The collection of files relevant for the validator class specified.
-	   */
-	  public Collection<IFile> getFiles(String validatorClassName)
-	  {
-	    IProject project = getProject();
-	    List<IFile> files = new ArrayList<IFile>();
-	    getFiles(files, project, validatorClassName);
-	    return files;
-	  }
-
-	  /**
-	   * Get the collection of files from the project that are relevant for the
-	   * validator with the given class name.
-	   * 
-	   * @param files The files relevant for the class name.
-	   * @param resource The resource to look for files in.
-	   * @param validatorClassName The name of the validator class.
-	   */
-	  protected void getFiles(Collection<IFile> files, IContainer resource, String validatorClassName)
-	  {
-	    try
-	    {
-	      IResource [] resourceArray = resource.members(false);
-	      for (int i=0; i<resourceArray.length; i++)
-	      {       
-	        if (ValidatorManager.getManager().isApplicableTo(validatorClassName, resourceArray[i])) 
-	        {
-	          if (resourceArray[i] instanceof IFile) 
-				  files.add((IFile)resourceArray[i]);
-	        }
-	        if (resourceArray[i].getType() == IResource.FOLDER)
-	         getFiles(files,(IContainer)resourceArray[i], validatorClassName) ;
-	      }
-	    }
-	    catch (Exception e) {}
-	  }
-	  
-
-//	/**
-//	 * Return the folders (or project) which contain the .java source files.
-//	 */
-//	public static IContainer[] getProjectSourceContainers(IProject project) {
-//		if (project == null) {
-//			return NO_CONTAINERS;
-//		}
-//
-//		IJavaProject jp = getJavaProject(project);
-//		if (jp == null) {
-//			return NO_CONTAINERS;
-//		}
-//
-//		return getProjectSourceContainers(jp);
-//	}
-
-	/**
-	 * Return the folders (or project) which contain the .java source files.
-	 */
-//	public static IContainer[] getProjectSourceContainers(IJavaProject javaProject) {
-//		if (javaProject == null) {
-//			return NO_CONTAINERS;
-//		}
-//		IProject project = javaProject.getProject();
-//
-//		IClasspathEntry[] classpath = null;
-//		try {
-//			classpath = javaProject.getResolvedClasspath(true); // true means ignore unresolved
-//			// (missing) variables, instead of
-//			// throwing an exception
-//		} catch (JavaModelException exc) {
-//			Logger logger = ValidationPlugin.getPlugin().getMsgLogger();
-//			if (logger.isLoggingLevel(Level.SEVERE)) {
-//				LogEntry entry = ValidationPlugin.getLogEntry();
-//				entry.setSourceID("WorkbenchContext::getProjectSourceContainers(IJavaProject)"); //$NON-NLS-1$
-//				entry.setTargetException(exc);
-//				logger.write(Level.SEVERE, entry);
-//			}
-//			return NO_CONTAINERS;
-//		}
-//
-//		if (classpath == null) {
-//			return NO_CONTAINERS;
-//		}
-//
-//		// Traverse the classpath, and calculate a list of just the
-//		// IFolders and IProjects (i.e., IContainers) which contain source
-//		IContainer[] icontainers = new IContainer[classpath.length];
-//		int validCount = 0;
-//		for (int i = 0; i < classpath.length; i++) {
-//			IClasspathEntry entry = classpath[i];
-//			if (entry.getEntryKind() == IClasspathEntry.CPE_SOURCE) {
-//				IPath entryPath = entry.getPath();
-//				IPath relEntryPath = getContainerRelativePath(entryPath, project);
-//				if (relEntryPath == null) {
-//					// classpath entry refers to something which doesn't exist
-//					continue;
-//				}
-//
-//				IResource outputResource = project.findMember(relEntryPath);
-//				if (outputResource == null) {
-//					// classpath entry refers to something which doesn't exist
-//					continue;
-//				}
-//
-//				if (outputResource instanceof IContainer) {
-//					icontainers[validCount++] = (IContainer) outputResource;
-//				}
-//			}
-//		}
-//
-//		//  following line causes a ClassCastException, so construct an array of IContainers
-//		// explicitly
-//		//	return (IContainer[])icontainers.toArray();
-//		IContainer[] containers = new IContainer[validCount];
-//		System.arraycopy(icontainers, 0, containers, 0, validCount);
-//		return containers;
-//	}
-
-	public int getRuleGroup() {
-		return _ruleGroup;
-	}
-
-	/**
-	 * This method can be overriden by AWorkbenchHelpers, if they wish to perform some
-	 * initialization once the IProject is set. Default is to do nothing.
-	 * 
-	 * For example, if this IWorkbenchContext delegates to another IWorkbenchContext, then that
-	 * IWorkbenchContext's setProject() method should be called here.
-	 */
-	public void initialize() {
-		//do nothing
-	}
-
-	/**
-	 * Return true if the given resource is in an IJavaProject, and if it is in one of the source
-	 * folders in the IJavaProject. If the project's source folder happens to be the project's
-	 * output folder too, this method will return true. If res is null, or is not found in one of
-	 * the source containers, this method will return false.
-	 */
-//	public boolean isInJavaSourcePath(IResource res) {
-//		if (res == null) {
-//			return false;
-//		}
-//
-//		IContainer[] containers = getProjectSourceContainers(res.getProject());
-//		for (int c = 0; c < containers.length; c++) {
-//			IPath resourcePath = getContainerRelativePath(res, containers[c]);
-//			if (resourcePath != null) {
-//				// file has been found
-//				return true;
-//			}
-//		}
-//
-//		return false;
-//	}
-
-	/**
-	 * Return true if the given symbolic name is registered, and can be loaded by WorkbenchContext's
-	 * "loadModel" method. For further information, see the comment above WorkbenchContext's
-	 * "registerModel" method.
-	 */
-	public final boolean isRegistered(String symbolicName) {
-		if (symbolicName == null)return false;
-		return _modelRegistry.containsKey(symbolicName);
-	}
-
-	/**
-	 * Given a symbolic name, load the MOF model which is identified by that name.
-	 * 
-	 * For support of dynamic symbolic names, such as file names, read the comment above the
-	 * registerModel method.
-	 * 
-	 * @see registerModel
-	 */
-	public Object loadModel(String symbolicName) {
-		return loadModel(symbolicName, null);
-	}
-
-	/**
-	 * Given a symbolic name, load the MOF model which is identified by that name.
-	 * 
-	 * For support of dynamic symbolic names, such as file names, read the comment above the
-	 * registerModel method.
-	 * 
-	 * @see registerModel
-	 */
-	public Object loadModel(String symbolicName, Object[] parms) {
-		try {
-			Method loader = _modelRegistry.get(symbolicName);
-			if (loader == null)return null;
-
-			return loader.invoke(this, parms);
-		} catch (IllegalAccessException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return null;
-		} catch (InvocationTargetException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			ValidationPlugin.getPlugin().handleException(e.getTargetException());
-			return null;
-		} catch (NullPointerException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return null;
-		} catch (ExceptionInInitializerError e) {
-			ValidationPlugin.getPlugin().handleException(e);
-			return null;
-		}
-	}
-
-	public Object loadRuleGroup() {
-		return new Integer(getRuleGroup()); // have to wrap the int in an Integer because can't cast
-		// an int to an Object
-	}
-
-	/**
-	 * This method should be used only by the validation framework. This method will be called by
-	 * ValidationOperation, before the IValidator's validate method is called, to set the group of
-	 * rules which the IValidator should check.
-	 */
-	public void setRuleGroup(int rg) {
-		_ruleGroup = rg;
-	}
-
-	/**
-	 * Register a load method for a symbolic name. A load method is defined as a method which takes
-	 * no parameters and returns a RefObject.
-	 * 
-	 * Every subclass of WorkbenchContext, for every static type of symbolic name which it supports,
-	 * should call registerModel. For IWorkbenchHelpers which support dynamic symbolic names, such
-	 * as file names, each IWorkbenchContext should override the "loadModel" method. Their
-	 * "loadModel" should first call this class' "isRegistered" method to see if they're dealing
-	 * with a static symbolic name, or a dynamic one. If the symbolic name is registered, the
-	 * child's "loadModel" method should just return the result of WorkbenchContext's "loadModel"
-	 * method. Otherwise, it should return the result based on its own processing.
-	 * 
-	 * When this method is called, the load method identified by loadMethodName is located & stored
-	 * for future retrieval by the "loadModel" method. When the IValidator calls "loadModel" with a
-	 * symbolic name, the java.lang.reflect.Method which was loaded by this method is invoked, and
-	 * the result (RefObject) returned by that method is returned by "loadModel".
-	 * 
-	 * symbolicName must not be null or the empty string. loadMethodName must not be null or the
-	 * empty string.
-	 */
-	protected final void registerModel(String symbolicName, String loadMethodName) {
-		registerModel(symbolicName, loadMethodName, null);
-	}
-
-	/**
-	 * Register a load method for a symbolic name. A load method is defined as a method which takes
-	 * no parameters and returns a RefObject.
-	 * 
-	 * Every subclass of WorkbenchContext, for every static type of symbolic name which it supports,
-	 * should call registerModel. For IWorkbenchHelpers which support dynamic symbolic names, such
-	 * as file names, each IWorkbenchContext should override the "loadModel" method. Their
-	 * "loadModel" should first call this class' "isRegistered" method to see if they're dealing
-	 * with a static symbolic name, or a dynamic one. If the symbolic name is registered, the
-	 * child's "loadModel" method should just return the result of WorkbenchContext's "loadModel"
-	 * method. Otherwise, it should return the result based on its own processing.
-	 * 
-	 * When this method is called, the load method identified by loadMethodName is located & stored
-	 * for future retrieval by the "loadModel" method. When the IValidator calls "loadModel" with a
-	 * symbolic name, the java.lang.reflect.Method which was loaded by this method is invoked, and
-	 * the result (RefObject) returned by that method is returned by "loadModel".
-	 * 
-	 * symbolicName must not be null or the empty string. loadMethodName must not be null or the
-	 * empty string.
-	 */
-	protected final void registerModel(String symbolicName, String loadMethodName, Class[] parms) {
-		Method method = getMethod(loadMethodName, parms);
-		if (method == null) {
-			if (Tracing.isLogging()) {
-				StringBuffer buffer = new StringBuffer("WorkbenchContext-01: load method "); //$NON-NLS-1$
-				buffer.append(loadMethodName);
-				buffer.append("("); //$NON-NLS-1$
-				for (int i = 0; (parms != null) && (i < parms.length); i++) {
-					buffer.append(parms[i]);
-				}
-				buffer.append(") must exist. " + getClass().getName() + " cannot support model " + symbolicName); //$NON-NLS-1$ //$NON-NLS-2$
-
-				Tracing.log(buffer);
-			}
-		} else {
-			_modelRegistry.put(symbolicName, method);
-		}
-	}
-
-	/**
-	 * Whether full or incremental validation is running, this method will be called, for every
-	 * IResource which is filtered in by the IValidator, so that the IValidationContext can receive
-	 * notification that one of the resources, which validation will run on, is being filtered in.
-	 */
-	public void registerResource(IResource resource) {
-		// default: do nothing
-	}
-
-	/**
-	 * This method is called by the Validation Framework, to initialize the IWorkbenchContext so that
-	 * it can gather information from the current project.
-	 * 
-	 * If an IWorkbenchContext delegates some model loading to another IWorkbenchContext, this method
-	 * should be overriden so that the delegatee IWorkbenchContext is initialized with the IProject.
-	 */
-	public final void setProject(IProject project) {
-		_project = project;
-
-		if (project != null) {
-			// Project will be set back to null once the validation of the project is complete.
-			initialize();
-		}
-	}
-
-	/**
-	 * Notifies this IWorkbenchContext that the Validation Framework is shutting down. There will be
-	 * calls to closing(IProject) and possibly deleting(IProject) following this call, but the
-	 * resources may already be closed by the time that those methods are called, so EVERYTHING
-	 * should be cleaned up in this method. The parameter passed in is the project which is about to
-	 * shut down. This method will be called once for every IProject in the workbench. The IProject
-	 * may, or may not, be closed.
-	 */
-	public void shutdown() {
-		// Default is to assume that no resources were allocated; therefore,
-		// no cleanup needs to be done.
-		shutdown(getProject());
-	}
-
-	/**
-	 * Notifies this IWorkbenchContext that the Validation Framework is shutting down. There will be
-	 * calls to closing(IProject) and possibly deleting(IProject) following this call, but the
-	 * resources may already be closed by the time that those methods are called, so EVERYTHING
-	 * should be cleaned up in this method. The parameter passed in is the project which is about to
-	 * shut down. This method will be called once for every IProject in the workbench. The IProject
-	 * may, or may not, be closed.
-	 * 
-	 * @deprecated Override shutdown() instead, and use getProject()
-	 */
-	public void shutdown(IProject project) {
-		// Default is to assume that no resources were allocated; therefore,
-		// no cleanup needs to be done.
-	}
-
-	public String getTargetObjectName(Object object) {
-		return null;
-	}
-
-	public String[] getURIs() {
-		String[] uris = new String[validationFileURIs.size()];
-		validationFileURIs.toArray(uris);
-		return uris;
-	}
-
-	/**
-	 * @return Returns the validationFileURIs.
-	 */
-	public List<String> getValidationFileURIs() {
-		return validationFileURIs;
-	}
-
-	/**
-	 * @param validationFileURIs The validationFileURIs to set.
-	 */
-	public void setValidationFileURIs(List<String> validationFileURIs) {
-		this.validationFileURIs = validationFileURIs;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/WorkbenchFileDelta.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/WorkbenchFileDelta.java
deleted file mode 100644
index 0953e0a..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/WorkbenchFileDelta.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.wst.validation.internal.core.FileDelta;
-import org.eclipse.wst.validation.internal.core.IFileDelta;
-
-
-/**
- * Eclipse-specific implementation of FileDelta which also caches the IResource which is associated
- * with the FileDelta.
- */
-public class WorkbenchFileDelta extends FileDelta {
-	private IResource _resource;
-	private Object _changedResource;
-
-	private static final String FILE_NAME = "FILE NAME:"; //$NON-NLS-1$
-	private static final String DELTA = "  DELTA: "; //$NON-NLS-1$
-	private static final String RESOURCE = "  RESOURCE: "; //$NON-NLS-1$
-	private static final String OBJECT = "  OBJECT: "; //$NON-NLS-1$
-
-	public WorkbenchFileDelta(String aFileName, int aFileDelta, IResource resource) {
-		super(aFileName, aFileDelta);
-		setResource(resource);
-		setObject(resource);
-	}
-
-	public WorkbenchFileDelta(Object changedResource) {
-		super(null, IFileDelta.CHANGED);
-		setObject(changedResource);
-	}
-
-	public IResource getResource() {
-		return _resource;
-	}
-
-	public void setResource(IResource resource) {
-		_resource = resource;
-	}
-
-	/**
-	 * If the changed resource is not an IResource (e.g., a RefObject), then the getFileName method
-	 * will return null, getResource will return null, and this method will return the object. If
-	 * the changedResource is an IResource, then both this method and the getResource method will
-	 * return the resource.
-	 */
-	public Object getObject() {
-		return _changedResource;
-	}
-
-	/**
-	 * @see getObject()
-	 */
-	public void setObject(Object o) {
-		_changedResource = o;
-	}
-
-	public String toString() {
-		StringBuffer buffer = new StringBuffer(FILE_NAME);
-		buffer.append(String.valueOf(getFileName()));
-		buffer.append(DELTA);
-		buffer.append(getDeltaType());
-		buffer.append(RESOURCE);
-		buffer.append(String.valueOf(getResource()));
-		buffer.append(OBJECT);
-		buffer.append(String.valueOf(getObject()));
-		return buffer.toString();
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/WorkbenchReporter.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/WorkbenchReporter.java
deleted file mode 100644
index f9162f3..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/WorkbenchReporter.java
+++ /dev/null
@@ -1,597 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.operations;
-
-import java.text.MessageFormat;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.validation.internal.ResourceConstants;
-import org.eclipse.wst.validation.internal.ResourceHandler;
-import org.eclipse.wst.validation.internal.TaskListUtility;
-import org.eclipse.wst.validation.internal.Tracing;
-import org.eclipse.wst.validation.internal.ValidationRegistryReader;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-import org.eclipse.wst.validation.internal.provisional.core.IValidatorJob;
-
-/**
- * IValidator instances will interact with an instance of this class, but should never cast that
- * IReporter instance to WorkbenchReporter.
- * <p>
- * This class handles interaction between the user and the IValidator in the eclipse workbench
- * environment.
- * <p>
- * This class must not be called outside of an IWorkspaceRunnable or IRunnableWithProgress. Many
- * resource deltas can be generated by the methods in this class.
- * <p>
- * Only the validation framework may instantiate or alter instances of this class.
- */
-
-public class WorkbenchReporter implements IReporter {
-	public static final String DEFAULT_LOCATION = ""; //$NON-NLS-1$
-	public static final int NO_MESSAGE_LIMIT = -1;
-
-	private IProject _project;
-	private IProgressMonitor _monitor;
-
-	public static void addMessage(IResource resource, Class messageOwner, IMessage message) {
-		addMessage(resource, messageOwner, null, message);
-	}
-	
-	public static void addMessage(IResource resource, Class messageOwner, ClassLoader cl, IMessage message) {
-		addMessage(resource, messageOwner, cl, message, null, ""); //$NON-NLS-1$
-	}
-	
-	public static void addMessage(IResource resource, Class clazz, IMessage message, 
-		String targetObjectName, String location) {
-		addMessage(resource, clazz, null, message, targetObjectName, location);
-	}
-	
-	public static void addMessage(IResource resource, Class clazz, IMessage message, 
-		String targetObjectName, String location,String markerId) {
-		addMessage(resource, clazz, null, message, targetObjectName, location,markerId);
-	}
-	
-	public static void addMessage(IResource resource, Class clazz, ClassLoader cl, IMessage message, 
-		String targetObjectName, String location) {
-		if ((clazz == null) || (message == null) || (resource == null))return;
-
-		if (cl == null)cl = clazz.getClassLoader();
-
-		addMessage(resource, getUniqueId(clazz), cl, message, targetObjectName, location);
-	}
-	
-	public static void addMessage(IResource resource, Class clazz, ClassLoader cl, IMessage message, 
-		String targetObjectName, String location, String markerId) {
-		if ((clazz == null) || (message == null) || (resource == null))return;
-
-		if (cl == null)cl = clazz.getClassLoader();
-
-		addMessage(resource, getUniqueId(clazz), cl, message, targetObjectName, location, markerId);
-	}
-
-	public static void addMessage(IResource resource, String messageOwnerId, ClassLoader cl, IMessage message) {
-		addMessage(resource, messageOwnerId, cl, message, null, ""); //$NON-NLS-1$
-	}
-
-	public static void addMessage(IResource resource, String messageOwnerId, ClassLoader cl, 
-		IMessage message, String targetObjectName, String location) {
-		int severity = message.getSeverity();
-		try {
-			TaskListUtility.addTask(messageOwnerId, resource, location, message.getId(), 
-				message.getText(cl), severity,targetObjectName, message.getGroupName(), 
-				message.getOffset(), message.getLength());
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-	
-	public static void addMessage(IResource resource, String messageOwnerId, ClassLoader cl, 
-		IMessage message, String targetObjectName, String location, String markerId) {
-		int severity = message.getSeverity();
-		try {
-			TaskListUtility.addTask(messageOwnerId, resource, location, message.getId(), 
-				message.getText(cl), severity,markerId,targetObjectName, message.getGroupName(), 
-				message.getOffset(), message.getLength());
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-	
-	public static void removeAllMessages(IResource resource, IValidator validator) {
-		if (resource == null)return;
-
-		ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validator);
-		if (vmd == null) {
-			// log
-			return;
-		}
-
-		String[] validatorNames = vmd.getValidatorNames();
-		try {
-			TaskListUtility.removeAllTasks(resource, validatorNames);
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-
-	/**
-	 * @deprecated Will be removed in Milestone 3. Should not be called outside of the validation
-	 *             framework.
-	 */
-	public static void removeAllMessages(IResource resource, IValidator validator, Object object) {
-		if (resource == null) {
-			return;
-		}
-
-		ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validator);
-		if (vmd == null) {
-			// log
-			return;
-		}
-
-		String[] validatorNames = vmd.getValidatorNames();
-		try {
-			//String targetObjectName = getTargetObjectName(vmd.getHelper(resource.getProject()), object);
-			String targetObjectName = getTargetObjectName( getHelper( resource.getProject(), validator), object);			
-			removeAllMessages(resource, validatorNames, targetObjectName);
-		} catch (InstantiationException e) {
-			// Remove the vmd from the reader's list
-			ValidationRegistryReader.getReader().disableValidator(vmd);
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-
-	public static void removeAllMessages(IResource resource, String[] validatorNames, String targetObjectName) {
-		try {
-			TaskListUtility.removeAllTasks(resource, validatorNames, targetObjectName);
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-
-	public static void removeMessageSubset(IResource resource, Class messageOwner, String groupName) {
-		// Since the addMessage(Class, IMessage) is defaulted to the IProject,
-		// remove the message subsets from the IProject
-		removeMessageSubset(resource, new String[]{getUniqueId(messageOwner)}, null, groupName);
-	}
-
-	public static void removeMessageSubset(IResource resource, String messageOwnerId, String groupName) {
-		// Since the addMessage(Class, IMessage) is defaulted to the IProject,
-		// remove the message subsets from the IProject
-		removeMessageSubset(resource, new String[]{messageOwnerId}, null, groupName);
-	}
-
-	public static void removeMessageSubset(IResource resource, String[] ownerId, String targetObjectName, String groupName) {
-		try {
-			TaskListUtility.removeTaskSubset(resource, ownerId, targetObjectName, groupName);
-		} catch (CoreException e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-
-	/**
-	 * Given a Class instance, return the id that uniquely identifies this instance. (Used as the
-	 * value for the message owner.)
-	 */
-	public static String getUniqueId(Class clazz) {
-		if (clazz == null) {
-			return ""; //$NON-NLS-1$
-		}
-
-		// It is safe to load this String into the constants space because
-		// the Class name will not change during WSAD's session.
-		return clazz.getName().intern();
-	}
-
-	public static String getUniqueId(IValidator validator) {
-		if (validator == null) {
-			return ""; //$NON-NLS-1$
-		}
-		return getUniqueId(validator.getClass());
-	}
-
-	public static String getLocation(IWorkbenchContext helper, IMessage message) {
-		if (message == null) {
-			return getLocationText(helper, null);
-		}
-		int lineNo = message.getLineNumber();
-		if (lineNo == IMessage.LINENO_UNSET) {
-			return getLocationText(helper, message.getTargetObject());
-		}
-		return String.valueOf(lineNo);
-	}
-
-	public static String getLocationText(IWorkbenchContext helper, Object targetObject) {
-		String location = null;
-		try {
-			location = helper.getLocation(targetObject);
-		} catch (Exception e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		if ((location == null) || (location.trim().equals(""))) { //$NON-NLS-1$
-			location = DEFAULT_LOCATION;
-		}
-		return location;
-	}
-
-	// TODO This method was made protected for the SaberReporter. Make this method private again
-	// once the framework supports IMarker.PRIORITY.
-	protected static String getTargetObjectName(IWorkbenchContext helper, IMessage message) {
-		if (message == null) {
-			return getTargetObjectName(helper, null);
-		}
-		return getTargetObjectName(helper, message.getTargetObject());
-	}
-
-	private static String getTargetObjectName(IWorkbenchContext helper, Object targetObject) {
-		String targetObjectName = null;
-		try {
-			targetObjectName = helper.getTargetObjectName(targetObject);
-		} catch (Exception e) {
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		return targetObjectName;
-	}
-
-	// TODO This method was made "protected" for the SaberReporter. Do not call this method! This
-	// method will be made private once support for marker PRIORITY attributes is in the framework.
-	protected static ValidatorMetaData getVMD(IValidator validator) throws IllegalArgumentException {
-		ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validator);
-		if (vmd == null) {
-			throw new IllegalArgumentException(); // already logged in the ValidationRegistryReader
-		}
-		return vmd;
-	}
-
-	/**
-	 * @deprecated. The IValidationContext will be ignored.
-	 */
-	public WorkbenchReporter(IWorkbenchContext helper, IProgressMonitor monitor, IProject project) {
-		this(project, monitor);
-	}
-
-	/**
-	 * An IReporter instance must exist for each Runnable in order for the validator to report
-	 * status messages. IProject and IProgressMonitor must not be null.
-	 */
-	public WorkbenchReporter(IProject project, IProgressMonitor monitor) {
-		super();
-		_project = project;
-		_monitor = monitor;
-	}
-
-	// TODO This method was made protected for the SaberReporter. Make it private again once the
-	// framework support IMarker.PRIORITY.
-	protected IWorkbenchContext getHelper(IValidator validator) throws InstantiationException, IllegalArgumentException {
-		ValidatorMetaData vmd = getVMD(validator);
-		IWorkbenchContext helper = vmd.getHelper( getProject(), validator );
-		return helper;
-	}
-	
-	protected static IWorkbenchContext getHelper(IProject project, IValidator validator) throws InstantiationException, IllegalArgumentException {
-		ValidatorMetaData vmd = getVMD(validator);
-		IWorkbenchContext helper = vmd.getHelper( project, validator );
-		return helper;
-	}
-	
-	public IProject getProject() {
-		return _project;
-	}
-
-	public IProgressMonitor getProgressMonitor() {
-		return _monitor;
-	}
-
-	/**
-	 * This method will never return null.
-	 */
-	private IResource getDefaultResource() {
-		IResource prj = getProject();
-		if (prj != null) {
-			return prj;
-		}
-		// return the workspace root
-		return ResourcesPlugin.getWorkspace().getRoot();
-	}
-
-	/**
-	 * When an IMessage is created, the user has the option of creating it with a target object.
-	 * That target object is used to identify which object has the problem identified by the
-	 * IMessage. This method, given the target object, returns the IResource which represents that
-	 * object in the workbench.
-	 */
-	public IResource getMessageResource(IValidator validator, Object object) {
-		if (validator == null) {
-			return null;
-		}
-
-		IResource resource = null;
-		if (object != null) {
-			if (object instanceof IResource) {
-				resource = (IResource) object;
-			} else if (object instanceof WorkbenchFileDelta) {
-				// resource may be null if the WorkbenchFileDelta was constructed from an Object
-				// instead of an IResource
-				resource = ((WorkbenchFileDelta) object).getResource();
-			}
-
-			if (resource == null) {
-				try {
-					IWorkbenchContext helper = getHelper(validator);
-					resource = helper.getResource(object);
-				} catch (InstantiationException e) {
-					try {
-						// Unlikely that an exception will be thrown, because this method is
-						// invoked by the validator, and if the validator is invoked, it's likely
-						// that the helper has been loaded too.
-						ValidatorMetaData vmd = getVMD(validator);
-
-						// Remove the vmd from the reader's list
-						ValidationRegistryReader.getReader().disableValidator(vmd);
-
-						ValidationPlugin.getPlugin().handleException(e);
-					} catch (IllegalArgumentException e2) {
-						// Even the IValidator is invalid. Unfortunately, can't disable the
-						// validator because it can't be found by the registry reader.
-						// Log the reason for the disabled validator
-						ValidationPlugin.getPlugin().handleException(e2);
-					}
-				} catch (IllegalArgumentException e) {
-					// Even the IValidator is invalid. Unfortunately, can't disable the
-					// validator because it can't be found by the registry reader.
-					// Log the reason for the disabled validator
-					ValidationPlugin.getPlugin().handleException(e);
-				} catch (Exception e) {
-					ValidationPlugin.getPlugin().handleException(e);
-				}
-			}
-		}
-
-		if (resource == null) {
-			resource = getDefaultResource();
-		}
-
-		if (!resource.exists()) {
-			resource = getDefaultResource();
-		}
-
-		return resource;
-	}
-
-	/**
-	 * Show a message to the user indicating which subtask is currently being processed. <br>
-	 * <br>
-	 * <code>message</code> may not be null or the empty string (""). <br>
-	 */
-	public void displaySubtask(String message) {
-		if ((message == null) || (message.equals(""))) { //$NON-NLS-1$
-			return;
-		}
-
-		if (getProgressMonitor() != null) {
-			getProgressMonitor().subTask(message);
-		} else {
-			System.out.println(message);
-		}
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.provisional.core.core.IReporter#getMessages()
-	 */
-	public List getMessages() {
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.provisional.core.core.IReporter#isCancelled()
-	 */
-	public boolean isCancelled() {
-		if (getProgressMonitor() != null) {
-			return getProgressMonitor().isCanceled();
-		}
-		return false;
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.provisional.core.core.IReporter#addMessage(IValidator, IMessage)
-	 */
-	public void addMessage(IValidator validator, IMessage message)  {
-		IResource resource = getMessageResource(validator, message.getTargetObject());
-		IWorkbenchContext helper = null;
-		ValidatorMetaData vmd = getVMD(validator);
-		try {
-			helper = getHelper(validator);
-		} catch (InstantiationException e) {
-			try {
-				// Unlikely that an exception will be thrown, because this method is
-				// invoked by the validator, and if the validator is invoked, it's likely
-				// that the helper has been loaded too
-								
-				// Remove the vmd from the reader's list
-				ValidationRegistryReader.getReader().disableValidator(vmd);
-				ValidationPlugin.getPlugin().handleException(e);
-				return;
-			} catch (IllegalArgumentException exc2) {
-				logDisabledValidator(exc2);
-				return;
-			}
-		} catch (IllegalArgumentException exc) {
-			logDisabledValidator(exc);
-			return;
-		}
-
-		if (resource == null) {
-			if (Tracing.isLogging()) {
-				String result = MessageFormat.format(ResourceHandler.getExternalizedMessage(
-					ResourceConstants.VBF_EXC_INVALID_RESOURCE), 
-					new Object[]{message.getText(), getTargetObjectName(helper, message)});
-				Tracing.log("WorkbenchReporter-01: ", result); //$NON-NLS-1$
-			}
-			return;
-		}
-
-		if( validator instanceof IValidatorJob ){
-			cacheMessage( (IValidatorJob)validator, resource, validator.getClass(), message, 
-				getTargetObjectName(helper, message), getLocation(helper, message), getMarkerId(vmd, message) );
-		}else
-			addMessage(resource, validator.getClass(), message, getTargetObjectName(helper, message), 
-				getLocation(helper, message),getMarkerId(vmd,message));
-	}
-
-	private String getMarkerId(ValidatorMetaData vmd, IMessage message) {
-		if (vmd.getMarkerIds() != null) {
-			if (vmd.getMarkerIds().length == 1)
-				return vmd.getMarkerIds()[0];
-			else if (vmd.getMarkerIds().length > 1) {
-				String messageMarkerId = message.getMarkerId();
-				if (messageMarkerId != null && messageMarkerId.length() > 0) {
-					String firstMarkerId = vmd.getMarkerIds()[0];
-					String pluginQualifier = firstMarkerId.substring(0, firstMarkerId.lastIndexOf(".")); //$NON-NLS-1$
-					String qualifiedMessageMarkerId = null;
-					if (messageMarkerId.indexOf(pluginQualifier) == -1)
-						qualifiedMessageMarkerId = pluginQualifier + "." + messageMarkerId; //$NON-NLS-1$
-					else
-						qualifiedMessageMarkerId = messageMarkerId;
-					if (Arrays.asList(vmd.getMarkerIds()).contains(qualifiedMessageMarkerId))
-						return qualifiedMessageMarkerId;
-				}
-			}
-		}
-		return null;
-	}
-
-	private void logDisabledValidator(IllegalArgumentException e) {
-		// Even the IValidator is invalid. Unfortunately, can't disable the
-		// validator because it can't be found by the registry reader.
-		// Log the reason for the disabled validator
-		ValidationPlugin.getPlugin().handleException(e);
-		return;
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.provisional.core.core.IReporter#displaySubtask(IValidator, IMessage)
-	 */
-	public void displaySubtask(IValidator validator, IMessage message) {
-		if ((message == null) || (message.equals(""))) { //$NON-NLS-1$
-			return;
-		}
-
-		displaySubtask(message.getText(validator.getClass().getClassLoader()));
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.provisional.core.core.IReporter#removeAllMessages(IValidator)
-	 */
-	public void removeAllMessages(IValidator validator) {
-		if (validator == null) { // getHelper could be null if the user cancelled before something
-			// was fully initialized
-			return;
-		}
-
-		removeAllMessages(validator, null);
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.provisional.core.core.IReporter#removeAllMessages(IValidator, Object)
-	 */
-	public void removeAllMessages(IValidator validator, Object object) {
-		IResource resource = getMessageResource(validator, object);
-		if (resource == null) {
-			return;
-		}
-
-		ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validator);
-		if (vmd == null) {
-			return;
-		}
-
-		IWorkbenchContext helper = null;
-		try {
-			//helper = vmd.getHelper(resource.getProject());
-			helper = getHelper(validator);
-		} catch (InstantiationException e) {
-			// Unlikely that an exception will be thrown, because this method is
-			// invoked by the validator, and if the validator is invoked, it's likely
-			// that the helper has been loaded too.
-
-			// Remove the vmd from the reader's list
-			ValidationRegistryReader.getReader().disableValidator(vmd);
-			ValidationPlugin.getPlugin().handleException(e);
-
-			return;
-		}
-
-		String[] validatorNames = vmd.getValidatorNames();
-		String targetObjectName = getTargetObjectName(helper, object);
-		removeAllMessages(resource, validatorNames, targetObjectName);
-	}
-
-	/**
-	 * @see org.eclipse.wst.validation.internal.provisional.core.core.IReporter#removeMessageSubset(IValidator, Object, String)
-	 */
-	public void removeMessageSubset(IValidator validator, Object obj, String groupName) {
-		IResource resource = getMessageResource(validator, obj);
-		if (resource == null) {
-			return;
-		}
-
-		ValidatorMetaData vmd = ValidationRegistryReader.getReader().getValidatorMetaData(validator);
-		if (vmd == null) {
-			return;
-		}
-
-
-		IWorkbenchContext helper = null;
-		try {
-			//helper = vmd.getHelper(resource.getProject());
-			helper = getHelper( resource.getProject(), validator );
-		} 
-		catch (InstantiationException e) {
-			// Unlikely that an exception will be thrown, because this method is
-			// invoked by the validator, and if the validator is invoked, it's likely
-			// that the helper has been loaded too.
-
-			// Remove the vmd from the reader's list
-			ValidationRegistryReader.getReader().disableValidator(vmd);
-			ValidationPlugin.getPlugin().handleException(e);
-
-			return;
-		}
-
-		String[] validatorNames = vmd.getValidatorNames();
-		String targetObjectName = getTargetObjectName(helper, obj);
-		removeMessageSubset(resource, validatorNames, targetObjectName, groupName);
-	}
-	
-	private static void cacheMessage( IValidatorJob validator,
-		IResource resource,	Class clazz, IMessage message,
-		String targetObjectName, String location, String markerId ){
-		
-		if ((clazz == null) || (message == null) || (resource == null))return;
-		
-		ClassLoader cl = clazz.getClassLoader();
-		String text = message.getText(cl);
-		MessageInfo msgInfo = new MessageInfo(getUniqueId(clazz), resource, location,
-				text, targetObjectName, markerId, message );
-
-		ValidatorManager.getManager().cacheMessage( validator, msgInfo );
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/plugin/ValidationHelperRegistryReader.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/plugin/ValidationHelperRegistryReader.java
deleted file mode 100644
index 887f7cd..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/plugin/ValidationHelperRegistryReader.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.plugin;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.validation.internal.IProjectValidationHelper;
-
-public class ValidationHelperRegistryReader {
-
-	/** validationHelper - extension point name. */
-	public static final String VALIDATION_HELPER = "validationHelper"; //$NON-NLS-1$
-	
-	static final String ATT_ID = "id"; //$NON-NLS-1$ 
-	
-	/** helperClass - class that implements the extension. */
-	static final String ATT_HELPER_CLASS = "helperClass"; //$NON-NLS-1$
-	
-	private static ValidationHelperRegistryReader INSTANCE = null;
-	private List<IProjectValidationHelper> _validationHelpers;
-	
-	public ValidationHelperRegistryReader() {
-	}
-	
-	public static ValidationHelperRegistryReader getInstance() {
-		if (INSTANCE == null) {
-			INSTANCE = new ValidationHelperRegistryReader();
-			INSTANCE.readRegistry();
-		}
-		return INSTANCE;
-	}
-
-	/**
-	 * Read the extension point and parse it.
-	 */
-	public void readRegistry() {
-		IExtensionPoint point = Platform.getExtensionRegistry()
-			.getExtensionPoint(ValidationPlugin.PLUGIN_ID, VALIDATION_HELPER);
-		if (point == null)return;
-		IConfigurationElement[] elements = point.getConfigurationElements();
-		for (int i = 0; i < elements.length; i++) {
-			internalReadElement(elements[i]);
-		}
-	}
-	
-	private void internalReadElement(IConfigurationElement element) {
-		boolean recognized = this.readElement(element);
-		if (!recognized) {
-			logError(element, "Error processing extension: " + element); //$NON-NLS-1$
-		}
-	}
-
-	/*
-	 * Logs the error in the desktop log using the provided text and the information in the configuration element.
-	 */
-	protected void logError(IConfigurationElement element, String text) {
-		IExtension extension = element.getDeclaringExtension();
-		StringBuffer buf = new StringBuffer();
-		buf.append("Plugin " + extension.getContributor().getName() + ", extension " + extension.getExtensionPointUniqueIdentifier()); //$NON-NLS-1$ //$NON-NLS-2$
-		buf.append("\n" + text); //$NON-NLS-1$
-		ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, buf.toString());
-	}
-
-	private List<IProjectValidationHelper> getValidationHelpers() {
-		if (_validationHelpers == null)
-			_validationHelpers = new ArrayList<IProjectValidationHelper>();
-		return _validationHelpers;
-	}
-
-	public boolean readElement(IConfigurationElement element) {
-		if (!element.getName().equals(VALIDATION_HELPER))
-			return false;
-		IProjectValidationHelper helper = null;
-		try {
-			helper = (IProjectValidationHelper) element.createExecutableExtension(ATT_HELPER_CLASS);
-			getValidationHelpers().add(helper);
-			return true;
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		return false;
-	}
-	
-	public IProjectValidationHelper getValidationHelper() {
-		if (getValidationHelpers().isEmpty())return null;
-		return getValidationHelpers().get(0);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/plugin/ValidationPlugin.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/plugin/ValidationPlugin.java
deleted file mode 100644
index 2b8b8dd..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/plugin/ValidationPlugin.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.plugin;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ProjectScope;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.core.runtime.preferences.IScopeContext;
-import org.eclipse.wst.validation.ValidationFramework;
-import org.eclipse.wst.validation.internal.DependencyIndex;
-import org.eclipse.wst.validation.internal.EventManager;
-import org.eclipse.wst.validation.internal.ProjectUnavailableError;
-import org.eclipse.wst.validation.internal.ResourceUnavailableError;
-import org.eclipse.wst.validation.internal.Tracing;
-import org.eclipse.wst.validation.internal.core.Message;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-
-/**
- * How does this plug-in get activated? There are many other plug-ins that depend on this plug-in, so there are
- * many paths that will activate it. One common path is the J2EE perspective. If the J2EE plug-in start method, they
- * reference a class in this plug-in, which activates the plug-in. For that case this plug-in will be active even before
- * the workbench is up.
- */
-public class ValidationPlugin extends Plugin {
-	public static final String 	VALIDATION_PROP_FILE_NAME = "validate_base"; //$NON-NLS-1$
-	
-	/** org.eclipse.wst.validation - the plug-in id */
-	public static final String 	PLUGIN_ID = "org.eclipse.wst.validation"; //$NON-NLS-1$
-	private static ValidationPlugin _plugin;
-	private static Message 		_message;
-	public static final String VALIDATION_BUILDER_ID = PLUGIN_ID + ".validationbuilder"; //$NON-NLS-1$// plugin id of the validation builder
-	public static final String VALIDATOR_EXT_PT_ID = "validator"; //$NON-NLS-1$// extension point declaration of the validator 
-
-	public ValidationPlugin() {
-		super();
-		if (_plugin == null)_plugin = this;
-	}
-	
-	/**
-	 * Answer the name of the bundle's property file.
-	 * 
-	 * @deprecated Use getBundlePropertyFileName() instead.
-	 */
-	public static String getBundleName() {
-		return getBundlePropertyFileName();
-	}
-
-	/**
-	 * Answer the name of the bundle's property file.
-	 */
-	public static String getBundlePropertyFileName() {
-		return VALIDATION_PROP_FILE_NAME;
-	}
-
-	public static Message getMessage() {
-		if (_message == null) {
-			_message = new Message();
-			_message.setBundleName(getBundlePropertyFileName());
-		}
-		// clear the message for reuse
-		_message.setId(null);
-		_message.setParams(null);
-		_message.setTargetObject(null);
-		_message.setGroupName(null);
-		_message.setSeverity(IMessage.LOW_SEVERITY);
-		return _message;
-	}
-
-	public static ValidationPlugin getPlugin() {
-		return _plugin;
-	}
-
-	public static boolean isActivated() {
-		Bundle bundle = Platform.getBundle(PLUGIN_ID);
-		if (bundle != null)
-			return bundle.getState() == Bundle.ACTIVE;
-		return false;
-	}
-
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		ResourcesPlugin.getWorkspace().addResourceChangeListener(EventManager.getManager(), 
-			IResourceChangeEvent.PRE_CLOSE | IResourceChangeEvent.PRE_DELETE | 
-			IResourceChangeEvent.POST_BUILD | IResourceChangeEvent.PRE_BUILD | IResourceChangeEvent.POST_CHANGE);
-
-		DependencyIndex di = (DependencyIndex)ValidationFramework.getDefault().getDependencyIndex();
-		IWorkspace ws = ResourcesPlugin.getWorkspace();
-		ws.addSaveParticipant(this, di);
-//		ws.addResourceChangeListener(ValOperationManager.getDefault(), 
-//			IResourceChangeEvent.POST_BUILD | IResourceChangeEvent.PRE_BUILD);
-
-	}
-
-	public void stop(BundleContext context) throws Exception {
-		super.stop(context);
-		ResourcesPlugin.getWorkspace().removeResourceChangeListener( EventManager.getManager() );		
-//		ResourcesPlugin.getWorkspace().removeResourceChangeListener( ValOperationManager.getDefault() );		
-		EventManager.getManager().shutdown();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.common.frameworks.internal.WTPPlugin#getPluginID()
-	 */
-	public String getPluginID() {
-		return PLUGIN_ID;
-	}
-	
-	public static IEclipsePreferences getPreferences(IProject project){
-		IScopeContext projectContext = new ProjectScope(project);
-		return projectContext.getNode(PLUGIN_ID);
-	}
-	
-	/**
-	 * Write this exception to the log.
-	 * <p>
-	 * We are in the transition of moving to a new approach for localized messages. This is the new 
-	 * approach for exceptions.
-	 * 
-	 * @param e the throwable, this can be null in which case it is a nop.
-	 */
-	public void handleException(Throwable e){
-		handleException(e, IStatus.ERROR);
-	}
-	
-	/**
-	 * Write this exception to the log.
-	 * <p>
-	 * We are in the transition of moving to a new approach for localized messages. This is the new 
-	 * approach for exceptions.
-	 * 
-	 * @param e the throwable, this can be null in which case it is a nop.
-	 * @param severity the severity of the message. This must be one of the IStatus severities. 
-	 */
-	public void handleException(Throwable e, int severity){
-		if (e == null)return;
-		Status status = new Status(severity, PLUGIN_ID, e.getLocalizedMessage(), e);
-		getLog().log(status);
-	}
-	
-	public void handleProjectUnavailableError(ProjectUnavailableError e){
-		if (Tracing.isLogging())handleException(e);
-	}
-	
-	public void handleResourceUnavailableError(ResourceUnavailableError e){
-		if (Tracing.isLogging())handleException(e);
-	}
-	
-	/** 
-	 * Write a message into the log. 
-	 * 
-	 * We are in the transition of moving to a new approach for localized messages. This is the new 
-	 * approach for exceptions.
-	 * 
-	 * @param severity message severity, see IStaus
-	 * @param message a localized message
-	 */
-	public void logMessage(int severity, String message){
-		Status status = new Status(severity, PLUGIN_ID, message);
-		getLog().log(status);
-		
-	}	
-}
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/provisional/ValidationFactory.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/provisional/ValidationFactory.java
deleted file mode 100644
index caa4614..0000000
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/provisional/ValidationFactory.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.provisional;
-
-import org.eclipse.wst.validation.internal.ValidationFactoryImpl;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-
-/**
- * This interface provides a way to access an instance of the ValidationFactoryImpl
- * instance, an internal implementation that provides access to some of the internal state
- * of validators.
- * 
- * @plannedfor 1.0
- * 
- * [issue: LM - 2 issues.
- *  1. I don't think the name 'factory' provides a good description of 
- *     this interface. Unless I'm mistaken the ValidationFactory doesn't
- *     actually create validators but simply returns existing validators.
- *     Looking at the implementation this is currently the case. I suggest
- *     renaming this to ValidatorRegistry or something similar.
- *  2. I think the common way for creating a factory is to create a class
- *     with a static method such as getFactory. If this is to be a factory
- *     it should probably be structured as per the convention.]
- */
-public interface ValidationFactory {
-	
-	ValidationFactory instance = ValidationFactoryImpl.getInstance();
-	/**
-	 * This api returns the IValidator given the validatorUniqueName id. The unique
-	 * id name is the class name that is defined in the class name element in the 
-	 * plugin extension of the validator.
-	 * @param validatorUniqueId
-	 * @return IValidator
-	 * @plannedfor WTP 1.0
-	 */
-	public IValidator getValidator(String validatorUniqueId) throws InstantiationException;
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/EmptySchedulingRule.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/EmptySchedulingRule.java
deleted file mode 100644
index dacb599..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/EmptySchedulingRule.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.core;
-
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-
-public class EmptySchedulingRule implements ISchedulingRule {
-		
-    public boolean contains(ISchedulingRule rule) 
-    {
-         return rule == this;
-    }
-
-    public boolean isConflicting(ISchedulingRule rule) {
-         return rule == this;
-    }
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/FileDelta.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/FileDelta.java
deleted file mode 100644
index 04e6ba7..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/FileDelta.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.core;
-
-
-
-/**
- * <p>
- * Default implementation of the IFileDelta
- * </p>
- * 
- * @see org.eclipse.wst.validation.internal.core.IFileDelta
- * 
- *  [issue: CS - is there a reason that we need to expose this impl class as an API?
- *   It would seem better to only expose IFileDelta.  I can't think of a reason where 
- *   a typical client would need to create one of these.]
- */
-public class FileDelta implements IFileDelta {
-	private int fileDelta;
-	private String fileName;
-
-	/**
-	 * <p>
-	 * Creates a default instance of the FileDelta
-	 * </p>
-	 */
-	public FileDelta() {
-		super();
-	}
-	
-	/**
-	 * <p>
-	 * Constructor is used to initialize the fields. 
-	 * </p>
-	 * 
-	 * @param aFileName specifies the file name
-	 * @param aFileDelta specifies the 
-	 */
-	public FileDelta(String aFileName, int aFileDelta) {
-		fileName = aFileName;
-		fileDelta = aFileDelta;
-	}
-
-	/**
-	 * @see IFileDelta#getDeltaType()
-	 */
-	public int getDeltaType() {
-		return fileDelta;
-	}
-
-	/**
-	 * @see IFileDelta#getFileName()
-	 */
-	public String getFileName() {
-		return fileName;
-	}
-
-	/**
-	 * <p>
-	 * Set the flag which indicates the type of change that the file 
-	 * has undergone.
-	 * </p>
-	 */
-	public void setDeltaType(int deltaType) {
-		fileDelta = deltaType;
-	}
-
-	/**
-	 * <p>
-	 * Set the name of the file which has changed.
-	 * </p>
-	 */
-	public void setFileName(String aFileName) {
-		fileName = aFileName;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/IFileDelta.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/IFileDelta.java
deleted file mode 100644
index b848eed..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/IFileDelta.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.core;
-
-/**
- * <p>
- * This interface is used, for incremental validation, to encapsulate the change 
- * status of a resource. IFileDelta contains the name of the file which has 
- * changed, and a flag which indicates the type of change which has occurred.
- * 
- * @plannedfor 1.0
- * </p>
- * [issue: LM - From speaking with Vijay the name IFileDelta doesn't really capture
- *  what this interface is for. Validation may occur of files, it may occur on resources,
- *  or it may occur on something more abstract simply known as an artifact. The delta part
- *  of the name also seems misleading as this interface doesn't provide the delta but
- *  rather provides the type of change. I suggest renaming this interface to IModifiedArtifact
- *  or something along those lines to better capture its use. ]
- */
-public interface IFileDelta {
-	
-	/** 1 - the file has been added */
-	int ADDED = 1;
-	
-	/** 2 - the file has been changed */
-	int CHANGED = 2;
-	
-	/** 3 - the file has been deleted */
-	int DELETED = 3;
-
-	/**
-	 * <p>
-	 * Returns the flag which indicates the type of change which has occurred:
-	 * IFileDelta.ADDED, IFileDelta.CHANGED, or IFileDelta.DELETED.
-	 * </p>
-	 * @return returns the delta type.
-	 * @plannedfor WTP 1.0
-	 * 
-	 * [issue: LM - From my experience a validator simply needs to know what artifact needs
-	 *  to be validated. Can you provide a use case where the type of change is needed for
-	 *  validation? ]
-	 */
-	int getDeltaType();
-
-	/**
-	 * <p>
-	 * Returns the name of the eclipse resource file which has changed. The return value must not be 
-	 * null or the empty string ("").
-	 * </p>
-	 * @return returns the file name.
-	 * @plannedfor WTP 1.0
-	 * 
-	 * [issue: LM - Following my comments above this method should be renamed to getArtifactName or
-	 *  something that follows along with the interface rename. ]
-	 */
-	String getFileName();
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/IMessageAccess.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/IMessageAccess.java
deleted file mode 100644
index af85f64..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/IMessageAccess.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.core;
-
-
-import java.util.List;
-import java.util.Locale;
-
-
-/**
- * <p>
- * Interface which can be used to access messages which are stored within a reporter which retains
- * its message history.
- * </p>
- * 
- * [issue: CS - This interface seems like overkill.  I'd think that an IReport should simply have a getMessages() method.
- * I think MessageFiltering should take place at the 'display' level and not at this level of the API.]
- */
-public interface IMessageAccess {
-	/**
-	 * @param filter
-	 *            A filter which specifies a subset of messages to retrieve. null specifies, "all
-	 *            messages".
-	 * @return List list of messages related to the target object
-	 */
-	abstract List getMessages(MessageFilter filter);
-
-	/**
-	 * @param filter
-	 *            A filter which specifies a subset of messages to retrieve. null specifies, "all
-	 *            messages".
-	 * @param locale
-	 *            The target local to translate the messages into. null specifies, "use default
-	 *            locale".
-	 * @return List a list of messages related to the target object, translated into the specified
-	 * locale.
-	 */
-	abstract List getMessagesAsText(MessageFilter filter, Locale targetLocale);
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/Message.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/Message.java
deleted file mode 100644
index 8998112..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/Message.java
+++ /dev/null
@@ -1,398 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.core;
-
-
-import java.util.HashMap;
-import java.util.Locale;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-
-/**
- * <p>
- * Default implementation of the IMessage interface, provided for the convenience of the
- * IValidators. If an IValidator needs to run in both AAT and WSAD then this IMessage implementation
- * should be used; if the IValidator runs in WSAD alone, the WSAD LocalizedMessage may be used in
- * place of this implementation.
- * <p>
- * @see org.eclipse.wst.validation.internal.provisional.core.IMessage
- * 
- * [issue: CS - I'd suggest splitting this class into Message and BundleMessage (where the latter inherits
- * from the former.  We have many messages that come (from xerces) pretranslated and don't require 'bundle'
- * related fields and methods. Splitting this class would make it easier to understand where bundle related
- * function is coming into play. Below I've listed out what would go into BundleMessage to demonstrate how 
- * we can simplify the 'Message' class by factoring out the bundle related details.
- * 
- * Message
- *	private Object targetObject = null;
- *	private String groupName = null;
- *	private int lineNumber = IMessage.LINENO_UNSET;
- *	private int length = IMessage.OFFSET_UNSET;
- *	private int offset = IMessage.OFFSET_UNSET;
- *
- *    
- * BundleMessage
- *	private String id = null;
- *	private String[] params = null;
- *	private String bundleName = null;
- *   
- *   - getId()
- *   - getBundle(...)
- *   - getBundleName()
- *   - getParams()
- *   - getText(Locale)
- *   - getText(ClassLoader)
- *   - getText(Locale, ClassLoader)
- *   - setId(String)
- *   - setBundleName(String)
- *   - setParams(String[])
- * ]
- */
-public class Message implements IMessage {
-	private String id;
-	private String[] params;
-	private int severity = MessageFilter.ANY_SEVERITY;
-	private Object targetObject;
-	private String bundleName;
-	private String groupName;
-	private int lineNumber = IMessage.LINENO_UNSET;
-	private int length = IMessage.OFFSET_UNSET;
-	private int offset = IMessage.OFFSET_UNSET;
-	private HashMap<String, Object> messageAttributes;
-	private String markerId;
-
-	/**
-	 * <p>
-	 * Creates a default instance of the Message
-	 * </p>
-	 */
-	public Message() {
-		super();
-	}
-
-	/**
-	 * <p>
-	 * Creates a Message object with bundle name, severity and a unique id
-	 * </p>
-	 * 
-	 * @param aBundleName 
-	 * 			Must not be null or the empty string (""). 
-	 * @param aSeverity 
-	 * 			Must be one of the severities specified in IMessage. 
-	 * @param anId 
-	 * 			Must not be null or the empty string ("").
-	 */
-	public Message(String aBundleName, int aSeverity, String anId) {
-		this(aBundleName, aSeverity, anId, null, null);
-	}
-
-	/**
-	 * <p>
-	 * Creates a Message object with bundle name, severity, a unique id, and 
-	 * a list of parameters. 
-	 * </p>
-	 * 
-	 * @param aBundleName 
-	 * 			Must not be null or the empty string (""). 
-	 * @param aSeverity 
-	 * 			Must be one of the severities specified in IMessage.
-	 * @param anId 
-	 * 			Must not be null or the empty string ("").
-	 * @param aParams 
-	 * 			May be null, if there are no parameters in the message.
-	 */
-	public Message(String aBundleName, int aSeverity, String anId, String[] aParams) {
-		this(aBundleName, aSeverity, anId, aParams, null);
-	}
-	
-	/**
-	 * <p>
-	 * Creates a Message object with bundle name, severity, a unique id, and 
-	 * a list of parameters and the target object.
-	 * </p>
-	 * 
-	 * @param aBundleName 
-	 * 			Must not be null or the empty string (""). 
-	 * @param aSeverity 
-	 * 			Must be one of the severities specified in IMessage.
-	 * @param anId 
-	 * 			Must not be null or the empty string ("").
-	 * @param aParams 
-	 * 			May be null, if there are no parameters in the message.
-	 * @param targetObject 
-	 * 			May be null, if the message does not pertain to a particular 
-	 * 			object.
-	 */
-	public Message(String aBundleName, int aSeverity, String anId, String[] aParams, Object aTargetObject) {
-		bundleName = aBundleName;
-		severity = aSeverity;
-		id = anId;
-		params = aParams;
-		targetObject = aTargetObject;
-	}
-	
-	public Message(String aBundleName, int aSeverity, String anId, String[] aParams, Object aTargetObject, String aGroupName) {
-		bundleName = aBundleName;
-		severity = aSeverity;
-		id = anId;
-		params = aParams;
-		targetObject = aTargetObject;
-		groupName = aGroupName;
-	}
-
-	/**
-	 * @return the resource bundle which contains the messages, as identified by
-	 * 
-	 * @link #getBundleName()
-	 */
-	public ResourceBundle getBundle(Locale locale, ClassLoader classLoader) {
-		ResourceBundle bundle = null;
-		try {
-			if (classLoader == null) {
-				bundle = ResourceBundle.getBundle(getBundleName(), locale);
-			} else {
-				bundle = ResourceBundle.getBundle(getBundleName(), locale, classLoader);
-			}
-		} catch (MissingResourceException e) {
-			//try to  load the bundle from the validation framework plugin
-			bundle = getFrameworkBundle(locale);
-		}
-		return bundle;
-	}
-
-	private ResourceBundle getFrameworkBundle(Locale locale) {
-		ResourceBundle bundle = null;
-		try {
-			bundle = ResourceBundle.getBundle(getBundleName(), locale, this.getClass().getClassLoader());
-			
-		} catch (MissingResourceException e) {
-			e.printStackTrace();
-		}
-		return bundle;
-	}
-	
-	/**
-	 * @see IMessage#getBundleName()
-	 */
-	public String getBundleName() {
-		return bundleName;
-	}
-
-	/**
-	 * @see IMessage#getGroupName()
-	 */
-	public String getGroupName() {
-		return groupName;
-	}
-
-	/**
-	 * @see IMessage#getId()
-	 */
-	public String getId() {
-		return id;
-	}
-
-	/**
-	 * @see IMessage#getLength()
-	 */
-	public int getLength() {
-		return length;
-	}
-
-	/**
-	 * @see IMessage#getLineNumber()
-	 */
-	public int getLineNumber() {
-		return lineNumber;
-	}
-
-	/**
-	 * @see IMessage#getOffset()
-	 */
-	public int getOffset() {
-		return offset;
-	}
-
-	/**
-	 * @see IMessage#getParams()
-	 */
-	public String[] getParams() {
-		return params;
-	}
-
-	/**
-	 * @see IMessage#getSeverity()
-	 */
-	public int getSeverity() {
-		return severity;
-	}
-
-	/**
-	 * @see IMessage#getTargetObject()
-	 */
-	public Object getTargetObject() {
-		return targetObject;
-	}
-
-	/**
-	 * @see IMessage#getText()
-	 */
-	public String getText() {
-		return getText(Locale.getDefault(), null);
-	}
-
-	/**
-	 * @see IMessage#getText(ClassLoader)
-	 */
-	public String getText(ClassLoader classLoader) {
-		return getText(Locale.getDefault(), classLoader);
-	}
-
-	/**
-	 * @see IMessage#getText(Locale)
-	 */
-	public String getText(Locale locale) {
-		return getText(locale, null);
-	}
-
-	/**
-	 * @see IMessage#getText(Locale, ClassLoader)
-	 */
-	public java.lang.String getText(Locale locale, ClassLoader classLoader) {
-		String message = ""; //$NON-NLS-1$
-
-		if (locale == null) {
-			return message;
-		}
-
-		ResourceBundle bundle = getBundle(locale, classLoader);
-		if (bundle == null) {
-			return message;
-		}
-
-		try {
-			message = bundle.getString(getId());
-
-			if (getParams() != null) {
-				message = java.text.MessageFormat.format(message, (Object[])getParams());
-			}
-		} catch (MissingResourceException exc) {
-			System.err.println(exc.getMessage());
-			System.err.println(getId());
-		} catch (NullPointerException exc) {
-			System.err.println(exc.getMessage());
-			System.err.println(getId());
-		}
-
-		return message;
-	}
-
-	/**
-	 * @see IMessage#setBundleName(String)
-	 */
-	public void setBundleName(String aBundleName) {
-		bundleName = aBundleName;
-	}
-
-	/**
-	 * @see IMessage#setGroupName(String)
-	 */
-	public void setGroupName(String name) {
-		groupName = name;
-	}
-
-	/**
-	 * @see IMessage#setId(String)
-	 */
-	public void setId(String newId) {
-		id = newId;
-	}
-
-	/**
-	 * @see IMessage#setLength(int)
-	 */
-	public void setLength(int length) {
-		if (length < 0) {
-			length = IMessage.OFFSET_UNSET;
-		}
-		this.length = length;
-	}
-
-	/**
-	 * @see IMessage#setLineNo(int)
-	 */
-	public void setLineNo(int lineNumber) {
-		if (lineNumber < 0) {
-			this.lineNumber = IMessage.LINENO_UNSET;
-		} else {
-			this.lineNumber = lineNumber;
-		}
-	}
-
-	/**
-	 * @see IMessage#setOffset(int)
-	 */
-	public void setOffset(int offset) {
-		if (offset < 0) {
-			offset = IMessage.OFFSET_UNSET;
-		}
-		this.offset = offset;
-	}
-
-	/**
-	 * @see IMessage#setParams(String[])
-	 */
-	public void setParams(String[] newParams) {
-		params = newParams;
-	}
-
-	/**
-	 * @see IMessage#setSeverity(int)
-	 */
-	public void setSeverity(int newSeverity) {
-		severity = newSeverity;
-	}
-
-	/**
-	 * @see IMessage#setTargetObject(Object)
-	 */
-	public void setTargetObject(Object obj) {
-		targetObject = obj;
-	}
-
-	public Object getAttribute(String attributeName) {
-		if(messageAttributes != null) {
-			return messageAttributes.get(attributeName);
-		}
-		return null;
-	}
-
-	public void setAttribute(String attributeName, Object value) {
-		if(messageAttributes == null) {
-			messageAttributes = new HashMap<String, Object>();
-		}
-		messageAttributes.put(attributeName,value);
-	}
-	
-	public HashMap<String,Object> getAttributes() {
-		return messageAttributes;
-	}
-
-	public String getMarkerId() {
-		return markerId;
-	}
-
-	public void setMarkerId(String markerId) {
-		this.markerId = markerId;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/MessageFilter.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/MessageFilter.java
deleted file mode 100644
index a8e97a3..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/MessageFilter.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.core;
-
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-
-
-/**
- * <p>
- * Encapsulates common message filtering parameters. Message Filters are used when retrieving
- * messages via an IMessageAccess. The filter encapsulates a simple set of typical filter criteria
- * which is used to select a subset of messages to retrieve. If multiple attributes of the message
- * filter are specified, they should be logically AND'd together by the MessageAccess
- * implementation.
- * </p>
- */
-public class MessageFilter {
-	public static final int ANY_SEVERITY = -1;
-
-	/**
-	 * <p>
-	 * Messages matching this severity(s) will be retrieved. One of SeverityEnum XXX_severity
-	 * constants, or ANY_SEVERITY to specify that messages of any severity will be returned. This
-	 * field can be combined with other filter attributes to narrow the selection set further.
-	 * </p>
-	 */
-	private int severity = ANY_SEVERITY;
-
-	/**
-	 * <p>
-	 * The validator which reported the messages that should be returned. All messages which were
-	 * reported using validator matching this validator will be returned. This field can be combined
-	 * with other filter attributes to narrow the selection set further.
-	 * </p>
-	 */
-	private IValidator validator;
-
-	/**
-	 * <p>
-	 * The target object of the messages that should be returned, or null to specify to retrieve
-	 * messages of any target. All messages having a target object matching this object will be
-	 * returned. This field can be combined with other filter attributes to narrow the selection set
-	 * further.
-	 * </p>
-	 */
-	private Object targetObject;
-
-	/**
-	 * @deprecated
-	 */
-	public MessageFilter() {
-		super();
-	}
-
-	/**
-	 * 
-	 * @param aSeverity
-	 * 			Severity of the message
-	 * @param validator
-	 * 			IValidator which reported the message
-	 * @param aTargetObject
-	 * 			Target object of the message
-	 */
-	public MessageFilter(int aSeverity, IValidator validator, Object aTargetObject) {
-		super();
-		severity = aSeverity;
-		this.validator = validator;
-		targetObject = aTargetObject;
-	}
-
-	/**
-	 * @return the severity filter constraint.
-	 */
-	public int getSeverity() {
-		return severity;
-	}
-
-	/**
-	 * @return the target object filter constraint.
-	 */
-	public java.lang.Object getTargetObject() {
-		return targetObject;
-	}
-
-	/**
-	 * @return the validator to filter on.
-	 */
-	public IValidator getValidator() {
-		return validator;
-	}
-
-	/**
-	 * Set the severity filter constraint.
-	 * 
-	 * @param newSeverity
-	 *            severity filter constraint
-	 */
-	public void setSeverity(int newSeverity) {
-		severity = newSeverity;
-	}
-
-	/**
-	 * Set the target object filter constraint.
-	 * 
-	 * @param newTargetObject
-	 *             target object filter constraint
-	 */
-	public void setTargetObject(java.lang.Object newTargetObject) {
-		targetObject = newTargetObject;
-	}
-
-	/**
-	 * Set the validator to return messages for.
-	 * 
-	 * @param validator
-	 *            validator to return messages for
-	 */
-	public void setValidator(IValidator validator) {
-		this.validator = validator;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/ValidationException.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/ValidationException.java
deleted file mode 100644
index f8970a7..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/ValidationException.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.core;
-
-
-import java.util.Locale;
-
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-
-/**
- * <p>
- * This exception is the only exception which should be thrown by IValidators. The message in this
- * exception must be suitable for showing to the user. All ValidationExceptions will have their
- * message extracted when they're caught, and the message will be shown to the user.
- * 
- * @plannedfor 1.0
- * </p>
- */
-public class ValidationException extends Exception {
-	private Throwable _lowLevelException;
-	private IMessage _message;
-	private ClassLoader _loader;
-	private final static long serialVersionUID = -3387516993124229949L;
-
-
-	
-	/**
-	 * Constructs a new exception with a given message string. <br>
-	 * <br>
-	 * 
-	 * @param message
-	 *            IMessage, which is Locale-independent, which contains the message to be shown to
-	 *            be shown to the user.
-	 */
-	public ValidationException(IMessage message) {
-		this(message, null);
-	}
-
-	/**
-	 * Constructs a new exception with a given message string, and low-level exception. <br>
-	 * <br>
-	 * 
-	 * @param message
-	 *            IMessage Locale-independent message to be shown to the user.
-	 * @param exception
-	 *            relevant low-level exception, or <code>null</code> if none. <br>
-	 *            &nbsp;&nbsp;&nbsp For example, when a method fails because of a network
-	 *            communications &nbsp;&nbsp;&nbsp problem, this would be the
-	 *            <code>java.io.IOException</code> &nbsp;&nbsp;&nbsp describing the exact nature
-	 *            of the problem.
-	 */
-	public ValidationException(IMessage message, Throwable exception) {
-		super();
-		_message = message;
-		_lowLevelException = exception;
-	}
-
-	/**
-	 * @return the low-level exception associated with this ValidationException.
-	 */
-	public Throwable getAssociatedException() {
-		return _lowLevelException;
-	}
-
-	/**
-	 * @return the IMessage to be shown to the user, or null if this exception should be handled
-	 * internally.
-	 */
-	public IMessage getAssociatedMessage() {
-		return _message;
-	}
-
-	/**
-	 * @return if the IValidator which threw this exception was loaded by a different ClassLoader than the
-	 * framework, this method returns the ClassLoader of the IValidator.
-	 */
-	public ClassLoader getClassLoader() {
-		return _loader;
-	}
-
-	/**
-	 * @return the error message string of this <code>Throwable</code> object if it was
-	 *         {@link java.lang.Throwable#Throwable(String) created}with an error message string;
-	 *         or <code>null</code> if it was {@link java.lang.Throwable#Throwable() created}with
-	 *         no error message.
-	 *  
-	 */
-	public String getMessage() {
-		return _message.getText(getClassLoader());
-	}
-
-	/**
-	 * @param locale
-	 * 			The locale of which to get the message.
-	 * @return the error message string of this <code>Throwable</code> object if it was
-	 *         {@link java.lang.Throwable#Throwable(String) created}with an error message string;
-	 *         or <code>null</code> if it was {@link java.lang.Throwable#Throwable() created}with
-	 *         no error message.
-	 */
-	public String getMessage(Locale locale) {
-		return _message.getText(locale, getClassLoader());
-	}
-
-	/**
-	 * <p>
-	 * If the IValidator which threw this exception was loaded by a different ClassLoader than the
-	 * framework, this method should set the ClassLoader to be the ClassLoader of the IValidator.
-	 * </p>
-	 * @param loader
-	 *  		ClassLoader of the validator
-	 */
-	public void setClassLoader(ClassLoader loader) {
-		_loader = loader;
-	}
-
-	/**
-	 * <p>
-	 * Returns a short description of this throwable object. If this <code>Throwable</code> object
-	 * was {@link java.lang.Throwable#Throwable(String) created}with an error message string, then
-	 * the result is the concatenation of three strings:
-	 * <ul>
-	 * <li>The name of the actual class of this object
-	 * <li>": " (a colon and a space)
-	 * <li>The result of the {@link #getMessage}method for this object
-	 * </ul>
-	 * If this <code>Throwable</code> object was {@link java.lang.Throwable#Throwable() created}
-	 * with no error message string, then the name of the actual class of this object is returned.
-	 * </p>
-	 * 
-	 * @return a string representation of this <code>Throwable</code>.
-	 */
-	public String toString() {
-		return toString(Locale.getDefault());
-	}
-
-	/**
-	 * <p>
-	 * Returns a short description of this throwable object. If this <code>Throwable</code> object
-	 * was {@link java.lang.Throwable#Throwable(String) created}with an error message string, then
-	 * the result is the concatenation of three strings:
-	 * <ul>
-	 * <li>The name of the actual class of this object
-	 * <li>": " (a colon and a space)
-	 * <li>The result of the {@link #getMessage}method for this object
-	 * </ul>
-	 * If this <code>Throwable</code> object was {@link java.lang.Throwable#Throwable() created}
-	 * with no error message string, then the name of the actual class of this object is returned.
-	 * </p>
-	 * 
-	 * @return a string representation of this <code>Throwable</code>.
-	 */
-	public String toString(Locale locale) {
-		String s = getClass().getName();
-		String message = getMessage(locale);
-		return (message != null) ? (s + ": " + message) : s; //$NON-NLS-1$
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/ValidatorLauncher.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/ValidatorLauncher.java
deleted file mode 100644
index f053410..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/core/ValidatorLauncher.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.core;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.internal.TaskListUtility;
-import org.eclipse.wst.validation.internal.operations.MessageInfo;
-import org.eclipse.wst.validation.internal.operations.ValidatorManager;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IValidationContext;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-import org.eclipse.wst.validation.internal.provisional.core.IValidatorJob;
-
-/**
- * This singleton launches the validation on a single validator. Clients should call this class's
- * <code>start</code> method to begin the validation.
- */
-public class ValidatorLauncher {
-	private static ValidatorLauncher _launcher;
-
-	private ValidatorLauncher() {
-	}
-
-	/**
-	 * @return the singleton launcher.
-	 */
-	public static ValidatorLauncher getLauncher() {
-		if (_launcher == null) {
-			_launcher = new ValidatorLauncher();
-		}
-		return _launcher;
-	}
-
-	/**
-	 * <p>
-	 * This method is the launch point of the validation. It runs validation on the validator
-	 * accessed by the IValidationContext. When the validation is complete, each validator may perform resource
-	 * cleanup, if necessary.
-	 * <p>
-	 * If <code>helper</code>,<code>validator</code>, or <code>reporter</code> are null,
-	 * validation is not performed. <code>changedFiles</code> may be null, or empty, if a full
-	 * build should be done.
-	 * </p>
-	 * 
-	 * @param helper 
-	 * 			loads an object. 
-	 * @param validator
-	 * 			validator object to launch validation.
-	 * @param reporter
-	 * 			Is an instance of an IReporter interface, which is used for interaction with the user.
-	 */
-	public void start(final IValidationContext helper, final IValidator validator, final IReporter reporter) throws ValidationException {
-		if ((helper == null) || (validator == null) || (reporter == null))return;
-
-		// Can't force each validator to check if it's cancelled or not,
-		// so check for cancellation here. Hopefully the user won't wait too long.
-		if (reporter.isCancelled())return;
-		
-
-		// If the validator is about to perform a full build, remove all of its previous validation
-		// messages.
-		if ((helper.getURIs() == null) || (helper.getURIs().length == 0)) {
-			reporter.removeAllMessages(validator);
-		}
-		if( validator instanceof IValidatorJob ){
-			((IValidatorJob)validator).validateInJob(helper, reporter);
-		}else{
-			validator.validate(helper, reporter);
-		}
-		if( validator instanceof IValidatorJob ){
-			//the  validators who have implemented IValidatorJob but are running synchronously
-			//would log messages now ...
-			ValidatorManager mgr = ValidatorManager.getManager();
-			final List list = mgr.getMessages((IValidatorJob)validator);
-
-	    	Iterator it = list.iterator();
-			while( it.hasNext() ){
-				MessageInfo info = (MessageInfo)it.next();
-				try {
-				TaskListUtility.addTask( info.getMessageOwnerId(), info.getResource(),
-							info.getLocation(), info.getMsg().getId(), info.getText(),
-							info.getMsg().getSeverity(), info.getMarkerId(), 
-							info.getTargetObjectName(),
-							info.getMsg().getGroupName(), info.getMsg().getOffset(), info.getMsg().getLength());
-				
-				} catch (CoreException e) {
-					ValidationPlugin.getPlugin().handleException(e);
-				}										
-			}
-			mgr.clearMessages( (IValidatorJob)validator );
-		}
-
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IMessage.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IMessage.java
deleted file mode 100644
index 5550942..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IMessage.java
+++ /dev/null
@@ -1,346 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.provisional.core;
-
-
-import java.util.HashMap;
-import java.util.Locale;
-
-/**
- * <p>
- * This interface represents a locale-independent validation message.
- * </p>
- * <p>
- * Given these three values as input, this interface can be queried for the final message string.
- * (i.e., the message with the parameters already substituted in.) Either the default Locale can be
- * used, or the caller can specify a Locale.
- * </p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IMessage {
-	/*
- * 
- * [issue: CS - The 'IMessage' interface would be simpler without the bundle related details.  I'd like to understand
- * why we can 'precompute' the translated message. Is there some benefit to perform 'late computation' of these messages?
- * How does this compare to the eclipse Marker (as far as I know the Marker's text() is preLocalized).
- * Here's a list of the methods that are related to 'bundle specific' aspects and could be separate out (or designed away)?
- *    
- *   - getId()
- *   - getBundle(...)
- *   - getBundleName()
- *   - getParams()
- *   - getText(Locale)
- *   - getText(ClassLoader)
- *   - getText(Locale, ClassLoader)
- *   - setId(String)
- *   - setBundleName(String)
- *   - setParams(String[])
- * ]
- * 
- *   - void setAttribute(String attributeName, Object value)
- *   - Object getAttribute(String attributeName);
- * ]
-	 */
-	int OFFSET_UNSET = -1; // see getLength(), getOffset()
-	int LINENO_UNSET = 0;
-	
-	/**
-	 * Typically used to specify error messages.
-	 */
-	int HIGH_SEVERITY = 0x0001;
-	/**
-	 * Typically used to specify warning messages.
-	 */
-	int NORMAL_SEVERITY = 0x0002;
-	/**
-	 * Typically used to specify information messages.
-	 */
-	int LOW_SEVERITY = 0x0004;
-	/**
-	 * Specify high (error) and normal (warning) messages. Typically used with a MessageFilter, to
-	 * filter out information messages.
-	 */
-	int ERROR_AND_WARNING = HIGH_SEVERITY | NORMAL_SEVERITY;
-	/**
-	 * Specify all types of messages. Typically used with a MessageFilter.
-	 */
-	int ALL_MESSAGES = ERROR_AND_WARNING | LOW_SEVERITY;
-	
-	/** 
-	 * TargetResource - The key to use when associating a resource with a message via an
-	 * attribute. 
-	 * <p>
-	 * Normally, the target is stored using the setTargetObject() method, but
-	 * some of the legacy validators used this field for objects that where not IResources.
-	 * In order to associate the message with the proper IResource the validator can store
-	 * the IResource as an attribute and use this string as the key.
-	 * </p>
-	 */
-	String TargetResource = "TargetResource"; //$NON-NLS-1$
-
-	/**
-	 * @return the name of the bundle which this message is contained in.
-	 */
-	String getBundleName();
-
-	/**
-	 * To support removal of a subset of validation messages, an IValidator may assign group names
-	 * to IMessages. An IMessage subset will be identified by the name of its group. Default (null)
-	 * means no group.
-	 * 
-	 * @return the name of the group to which the message belongs.
-	 */
-	String getGroupName();
-
-	/**
-	 * Returns the id of the message. Message ids are used as the constants in property bundles
-	 * which localize the description of the message in a locale-independent fashion. The id is the
-	 * key, in the resource bundle, which identifies the string to be loaded. The id may not be null
-	 * or the empty string.
-	 * 
-	 * @return the id of the message
-	 */
-	String getId();
-
-	/**
-	 * @return the length of the problem area, starting from the offset. If unset, value =
-	 * IMessage.OFFSET_UNSET.
-	 * 
-	 * @see #getOffset()
-	 */
-	int getLength();
-
-	/**
-	 * If there is a target object associated with this IMessage, and that target object is a file,
-	 * then an optional line number may be set. The line number identifies the location of the
-	 * problem identified by this message. If no line number has been set, #LINENO_UNSET will be
-	 * returned.
-	 * 
-	 * @return line number of the location of the problem.
-	 */
-	int getLineNumber();
-
-	/**
-	 * Returns the offset of the message. If unset, value = IMessage.OFFSET_UNSET. For example, if
-	 * the java compiler were a validator, and it reported that a variable name was unknown, offset
-	 * would identify the position of the first character of the unknown variable. The position is
-	 * identified by the number of characters from the start of the file.
-	 * 
-	 * @return offset of the message
-	 */
-	int getOffset();
-
-	/**
-	 * Returns the parameters of the message. Message parameters are the values which are
-	 * substituted into parameter slots in localized message text descriptions.
-	 * 
-	 * @return parameters of the message
-	 */
-	String[] getParams();
-
-	/**
-	 * <p>
-	 * Returns the severity level of the message. One of SeverityEnum constants.
-	 * 
-	 * @see IMessage#HIGH_SEVERITY
-	 * @see IMessage#NORMAL_SEVERITY
-	 * @see IMessage#LOW_SEVERITY
-	 * </p>
-	 * 
-	 * @return the severity level of the message
-	 */
-	int getSeverity();
-
-	/**
-	 * Return the object that this IMessage is reporting the problem against, if any. null will be
-	 * returned if this is a general message which does not apply to a particular object; for
-	 * example, "internal error".
-	 * 
-	 * @return the target object for the message
-	 */
-	Object getTargetObject();
-
-	/**
-	 * @return a text representation of this message formatted in the default Locale, with the
-	 * bundle loaded by the default ClassLoader.
-	 */
-	String getText();
-
-	/**
-	 * @param classLoader 
-	 * 				The ClassLoader which will be used to load the ResourceBundle.
-	 *            
-	 * @return a text representation of this message formatted in the default locale, with the
-	 * bundle loaded by the specified ClassLoader.
-	 */
-	String getText(ClassLoader classLoader);
-
-	/**
-	 * @param locale
-	 *            The locale to translate the message text into.
-	 *            
-	 * @return a text representation of this message formatted in the specified locale, with the
-	 * bundle loaded by the default ClassLoader.
-	 */
-	String getText(Locale locale);
-
-	/**
-	 * @param locale
-	 *            The locale to translate the message text into.
-	 * @param classLoader
-	 *            The ClassLoader which will be used to load the ResourceBundle.
-	 *            
-	 * @return a text representation of this message formatted in the specified locale, with the
-	 * bundle loaded by the specified ClassLoader.
-	 */
-	String getText(Locale locale, ClassLoader classLoader);
-	
-	/**
-	 * Provides a way to store some additional attributes that a message would like to store
-	 * that can used by some other parties that are interested in those attribute values.
-	 * 
-	 * @param attributeName
-	 * @return an Object basically the value associated with the object name.
-	 */
-	
-	 Object getAttribute(String attributeName);
-	
-	/**
-	 * Set the attributeName and value as key value pair.
-	 * 
-	 * @see #getAttribute(String attributeName)
-	 * @param attributeName
-	 */
-	
-	void setAttribute(String attributeName, Object value);
-	   
-
-	/**
-	 * Set the name of the bundle which this message is contained in.
-	 * 
-	 * @param bundleName 
-	 * 			Name of the bundle which contains the message.
-	 */
-	void setBundleName(String bundleName);
-
-	/**
-	 * To support removal of a subset of validation messages, an IValidator may assign group names
-	 * to IMessages. An IMessage subset will be identified by the name of its group. Default (null)
-	 * means no group.
-	 * 
-	 * @param name
-	 * 			Name of the group.
-	 */
-	void setGroupName(String name);
-
-	/**
-	 * Set the id of the message. Message ids are used as the constants in property bundles which
-	 * localize the description of the message in a locale-independent fashion. The id is the key,
-	 * in the resource bundle, which identifies the string to be loaded. The id may not be null or
-	 * the empty string.
-	 * 
-	 * @param newId
-	 *            Id of the message.
-	 */
-	void setId(String newId);
-
-	/**
-	 * Sets the length of the problem, starting from the offset. If unset, value =
-	 * IMessage.OFFSET_UNSET.
-	 * 
-	 * @see #setOffset(int)
-	 * 
-	 * @param length 
-	 *			Sets the length. 		
-	 */
-	void setLength(int length);
-
-	/**
-	 * If there is a target object associated with this IMessage, and that target object is a file,
-	 * then an optional line number may be set. The line number identifies the location of the
-	 * problem identified by this message. To indicate no line number, use #LINENO_UNSET.
-	 * 
-	 * @param lineNumber 
-	 *			Sets the line number.
-	 */
-	void setLineNo(int lineNumber);
-
-	/**
-	 * Sets the offset of the message. If unset, value = IMessage.OFFSET_UNSET. For example, if the
-	 * java compiler were a validator, and it reported that a variable name was unknown, offset
-	 * would identify the position of the first character of the unknown variable. The position is
-	 * identified by the number of characters from the start of the file.
-	 * 
-	 * @param offset 
-	 *			Sets the offset of the message.
-	 */
-	void setOffset(int offset);
-
-	/**
-	 * Sets the parameters of the message. Message parameters are the values which are substituted
-	 * into parameter slots in localized message text descriptions.
-	 * <p>
-	 * For example, if getId() returns "MY_ID", then the ResourceBundle identified by
-	 * getBundleName() is searched for the message named "MY_ID", and if found,
-	 * has it's parameters set.
-	 * </p>
-	 * 
-	 * @see java.text.MessageFormat#format(String, Object[]) is invoked on the message, with
-	 *      <code>newParams</code> passed in as the Object[].
-	 *      
-	 * @param newParams
-	 *            Parameters of the message.
-	 */
-	void setParams(String[] newParams);
-
-	/**
-	 * Sets the severity level of the message. One of SeverityEnum constants.
-	 * 
-	 * @see IMessage#HIGH_SEVERITY
-	 * @see IMessage#NORMAL_SEVERITY
-	 * @see IMessage#LOW_SEVERITY
-	 * 
-	 * @param newSeverity
-	 *            Severity level of the message.
-	 */
-	void setSeverity(int newSeverity);
-
-	/**
-	 * Associate this IMessage with the object that has the problem. A null value is permitted. If a
-	 * message is applicable to one object, then this value should be set. Otherwise, the default
-	 * value (null) should be kept. Given this target object, it should be possible to calculate the
-	 * exact location of the problem.
-	 * 
-	 * @param obj
-	 *         The object that has the problem.
-	 */
-	void setTargetObject(Object obj);
-	
-	/**
-	 * Return all the attributes of a Message object.
-	 */
-	HashMap getAttributes();
-	
-	/**
-	 * Return the marker id if one is set on this object when created.
-	 */
-	String getMarkerId();
-	
-	/**
-	 * Set the marker id on a Message object.
-	 */
-	 void setMarkerId(String markerId);
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IMetaModelContext.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IMetaModelContext.java
deleted file mode 100644
index 1ffef39..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IMetaModelContext.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.provisional.core;
-
-/**
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IMetaModelContext extends IValidationContext {
-	
-	public Object getModel(String URI);
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IProjectValidationContext.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IProjectValidationContext.java
deleted file mode 100644
index 4210353..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IProjectValidationContext.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.validation.internal.provisional.core;
-
-import org.eclipse.core.resources.IProject;
-
-/**
- * IProjectValidationContext extends IValidationContext to provide access to a
- * reference to the project on which a validator is being invoked.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IProjectValidationContext extends IValidationContext
-{
-  /**
-   * Provides the project on which the validator is being invoked.
-   * 
-   * @return an IProject reference to the project on which the validator is
-   *         being invoked.
-   */
-  IProject getProject();
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IReporter.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IReporter.java
deleted file mode 100644
index 3005139..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IReporter.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.provisional.core;
-
-import java.util.List;
-
-/*
- * CCM - Reporter is now passed locale-independent messages.
- *       Messages should only be translated to a locale upon access.
- *       Or in special locale-dependent reporter implementations (console logger).
- */
-
-/**
- * The interface used by IValidator's to report messages. The implementation of the IReporter could
- * simply log the messages to stdout, a file, or retain them in a buffer for later access by a user
- * interface.
- * <p>
- * Reporter implementations should keep non-localized versions of their messages.
- * </p>
- * <p>
- * Any messages which need to be displayed to the user are done through this class, and if the user
- * cancels the current function, this class is the one which registers the cancellation.
- * </p>
- * <p>
- * The IReporter instance is created at the time validation begins and ends when validation is complete.
- * There is only one IReporter instance created for all validators that are run on a IResource. The IResource
- * provides a way to get messages put out each validator and add and delete messages for one validator
- * at a time. 
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IReporter {
-	/**
-	 * <p>
-	 * Add a locale-independent validation message. It will be displayed later, with all of the
-	 * other validation messages.
-	 * </p>
-	 * <p>
-	 * The IValidator passed in is needed for incremental validation (when a message needs to be
-	 * removed, one validator should not remove messages entered by another validator.) The
-	 * validator is also queried for information about its resource bundle, to enable support for
-	 * localization of messages in a client-server environment.
-	 * </p>
-	 * <p>
-	 * Both parameters must not be null.
-	 * </p>
-	 * @param origin
-	 *            The validator which is the source of the message.
-	 * @param message
-	 *            A message to be reported.
-	 */
-	void addMessage(IValidator origin, IMessage message);
-
-	/**
-	 * Show a text representation of this message, formatted in the default
-	 * Locale, to the user immediately. This message indicates which subtask is
-	 * currently being processed. The message is not stored. The subtask message
-	 * in this context is the subtask in a IProgressMontior
-	 * <p>
-	 * Both parameters must not be null.
-	 * </p>
-	 * 
-	 * @param validator
-	 * 		The validator issuing the subtask message.
-	 * @param message
-	 * 		The message to be displayed to the user.
-	 * 
-	 */
-	void displaySubtask(IValidator validator, IMessage message);
-
-	/**
-	 * @return the message access interface to this reporter, or null if message access is not
-	 * supported.
-	 *     
-	 */
-	List getMessages();
-
-	/**
-	 * Return true if the user canceled validation, and false otherwise. This method should be
-	 * called by IValidators periodically, because no event is fired to notify IValidators that the
-	 * user canceled validation. If a validator does not check this method, a cancellation request
-	 * is ignored.
-	 * 
-	 * @return true if the user canceled validation, and false otherwise.
-	 *  
-	 */
-	boolean isCancelled();
-
-	/**
-	 * Remove all validation messages entered by the identified validator. This method is provided
-	 * for incremental validation. 
-	 * <p>
-	 * The IValidator parameter must not be null.
-	 * </p>
-	 * @param origin
-	 * 			Originator validator of the message.  
-	 */
-	void removeAllMessages(IValidator origin);
-
-	/**
-	 * Remove all validation messages, entered by the identified validator,
-	 * pertaining to the Object provided. This method is provided for
-	 * incremental validation. <br>
-	 * <br>
-	 * If <code>object</code> is null, then this method should remove all
-	 * messages owned by the validator. (i.e., the same behaviour as the
-	 * removeAllMessages(IValidator) method.) <br>
-	 * <br>
-	 * <p>
-	 * The IValidator parameter must not be null.
-	 * </p>
-	 * 
-	 * @param origin
-	 * 		Originator validator of the message.
-	 * @param object
-	 * 		Object to which the message belongs. Object is the target object
-	 * 		that was set on the IMessage when adding the message as problem
-	 * 		marker.
-	 * 
-	 */
-	void removeAllMessages(IValidator origin, Object object);
-
-	/**
-	 * To support removal of a subset of validation messages, an IValidator may
-	 * assign group names to IMessages. An IMessage subset will be identified by
-	 * the name of its group. This method will remove only the IMessage's that
-	 * are in the group identified by groupName. 
-	 * <p>
-	 * The IValidator parameter must not be null.
-	 * </p>
-	 * <p>
-	 * If <code>object</code> is null, then this method should remove all
-	 * messages owned by the validator. (i.e., the same behaviour as the
-	 * removeAllMessages(IValidator) method.)
-	 * </p>
-	 * <p>
-	 * If groupName is null, that's the same as no group (i.e., the same
-	 * behaviour as the <code>removeAllMessages(IValidator, Object)</code>
-	 * method.)
-	 * </p>
-	 * 
-	 * @param validator
-	 * 		Originator validator of the message.
-	 * @param obj
-	 * 		Object to which the message belongs.
-	 * @param groupName
-	 * 		Name of the group to which the message belongs.
-	 */
-	void removeMessageSubset(IValidator validator, Object obj, String groupName);
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IValidationContext.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IValidationContext.java
deleted file mode 100644
index 54a8ce5..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IValidationContext.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.provisional.core;
-
-/**
- * This class is used to to separate the IValidator from the model loading. A model 
- * is a group of object(s) that must follow some rules.
- * <p>
- * The model is loaded differently depending on whether the validator is running in 
- * as-you-type or builder based context. If the <code>loadModel</code> method was a method on the IValidator, 
- * then there would need to be two versions of validators, one for as-you-type and one for 
- * builder based. Because <code>loadModel</code> is separate from the IValidator, we provide 
- * two different IHelpers instead, and ship the one specific to the environment.
- * </p>
- * <p>
- * Each IValidationContext implementation loads a specific model as identified by a String
- * <code>symbolicName</code>. The symbolicName can be any value except null or the 
- * empty string. Each validator identifies the symbolic names which it needs, and the
- * type of model which needs to be returned when that symbolic name is loaded via a 
- * <code>loadModel</code> method. An IValidationContext can support more than one IValidator; 
- * the helper needs to support every model that each validator needs.
- * </p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IValidationContext {
-	/**
-	 * <p>
-	 * Load the model identified by <code>symbolicName</code>. <code>symbolicName</code> 
-	 * must not be null or the empty string if the validator needs to be run in both 
-	 * as-you-type and builder based validation.
-	 * </p>
-	 * <p>
-	 * The symbolicName is a string name that is registered in the implementation of the
-	 * IValidatorContext. For an example our internal implementation of the loadModel use
-	 * method names for symbolicNames to load the model object to be validated. Users can
-	 * use their own model load mechanism.
-	 * </p>
-	 * 
-	 * @see <code>WorkbenchContext</code>
-	 */
-	Object loadModel(String symbolicName);
-
-	/*
-	 * 
-	 * [issue : CS - It's not at all clear how these parameters would get passed into a helper.  I'd suggest
-	 * providing getProperty() and setProperty() methods on the class to allow contextual information to be 
-	 * supplied and queried in a generic manner.]
-	 */
-	/**
-	 * <p>
-	 * Load the model identified by <code>symbolicName</code> and <code>parms</code>.
-	 * <code>symbolicName</code> must not be null or the empty string if the validator 
-	 * needs to be run in both as-you-type and builder based validation. 
-	 * If <code>parms</code> is null then this
-	 * method behaves the same as
-	 * 
-	 * @link #loadModel(String).
-	 * 
-	 * This method differs from
-	 * @link #loadModel(String) because it takes parameters, from the IValidator, which 
-	 * 		 are available only at runtime. If you need to pass a live object to the IValidationContext, 
-	 * 		 this is the loadModel method to use.
-	 * </p>
-	 * 
-	 * @param symbolicName String identifier for model.
-	 * @param parms 	   List of parameters that the model takes for invocation.
-	 */
-	Object loadModel(String symbolicName, Object[] parms);
-	
-	/**
-	 * @return a string array with the list of URI's that need to be validated in the
-	 * case of Incremental build.
-	 */
-	
-	String[] getURIs();
-
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IValidator.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IValidator.java
deleted file mode 100644
index 6fbd55e..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IValidator.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.provisional.core;
-
-import org.eclipse.wst.validation.internal.core.ValidationException;
-
-/**
- * This is the base interface for all Validators. A Validator is a class which verifies that objects
- * follow some rules. For example, in a MOF model which represents an EJB jar, the EJB specification
- * determines the rules. 
- * <p>
- * A validator can perform full validation or incremental validation. All validators must implement
- * full validation but incremental validation is optional.
- * </p>
- * <p>
- * Each validator must not be tied to any particular workbench implementation.
- * </p>
- * <p>
- * A validator's verification starts when the ValidatorLauncher singleton calls
- * <code>validate</code>.
- * </p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IValidator{
-	
-	/*
-	 * [issue : CS - Perhaps the IValidator should be required to provide a 'name' that can be used describe 
-	 * the running validation 'Job'.  Then the framework could automatically say something like 'XYZ validator : cleanup'.
-	 * Relying on the IValidator to provide subtask information seems error prone.]
-	 * [issue: LM - Is the cleanup method necessary? Can the framework put a requirement that client validators 'clean up'
-	 *  before returning from the validate method? ] 
-	 */
-	
-	/**
-	 * Perform any resource cleanup once validation is complete. If cleanup will take some time, the
-	 * IValidator should report subtask information to the user through the IReporter parameter. The
-	 * IReporter parameter will not be null.
-	 * 
-	 * @param reporter Used for the interaction with the user.
-	 */
-	void cleanup(IReporter reporter);
-
-	/*
-	 * [issue : CS - I'm curious to understand why the validator is not invoked directly on a file.  It seems it should be the
-	 * domain of another API to manage manage incremental file changes and triggering validations accordingly. 
-	 * Do we have a current use case in WTP where the validator does anything more validate a file from the changedFiles list?]
-	 */
-	/**
-	 * This is the method which performs the validation on the objects.
-	 * <p>
-	 * <code>helper</code> and <code>reporter</code> may not be null. <code>changedFiles</code>
-	 * may be null, if a full build is desired. <br>
-	 * </p>
-	 * @param helper 
-	 * 			Loads an object. 
-	 * @param reporter
-	 * 			Is an instance of an IReporter interface, which is used for interaction with the user.
-	 * 
-	 */
-	void validate(IValidationContext helper, IReporter reporter) throws ValidationException;
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IValidatorJob.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IValidatorJob.java
deleted file mode 100644
index a25e7bb..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/IValidatorJob.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.provisional.core;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-import org.eclipse.wst.validation.internal.core.ValidationException;
-
-/**
- * This is the Job interface for the validator. Validators implementing this interface are executed as
- * background jobs. 
- * Following is a sequence of  calls:
- * <ul>
- * <li>validator.getSchedulingRule(helper)
- * <li>validator.validate(reporter)
- * </ul>
- */
-public interface IValidatorJob extends IValidator{
-
-	IStatus OK_STATUS = new Status(IStatus.OK, "org.eclipse.wst.validation", 0, "OK", null); //$NON-NLS-1$ //$NON-NLS-2$
-	
-
-
-	/**
-	 * This is the method which performs the validation on the objects.
-	 * <p>
-	 * <code>reporter</code> may not be null. <code>changedFiles</code>
-	 * may be null, if a full build is desired. <br>
-	 * </p>
-     *
-	 * @param reporter
-	 *            Is an instance of an IReporter interface, which is used for interaction with the
-	 *            user.
-	 * @param helper Will not be null, loads an object.
-	 */
-	IStatus validateInJob(IValidationContext helper, IReporter reporter) throws ValidationException;
-
-	/**
-	 * Get the scheduling rule, which the framework applies to the Validator job.
-	 * 
-	 * @param helper Will not be null, loads an object.
-	 */
-	ISchedulingRule getSchedulingRule(IValidationContext helper);
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/MessageLimitException.java b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/MessageLimitException.java
deleted file mode 100644
index 3a86bf4..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/MessageLimitException.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.provisional.core;
-
-/*
- * [issue: LM - Going along with my comment on the addMessage method in IReporter I 
- *  think this class should be internal to the validation framework.
- *  I don't think there's a need for this class to be exposed to clients. If too many
- *  messages are added the framework should handle this without notifying the client
- *  validator. ]
- */
-/**
- * This exception is thrown by
- * 
- * @see IReporter#addMessage(IValidator, IMessage) method if no more messages can be reported
- *      because the maximum number of messages has been reported.
- *  @deprecated This class is not longer used by the framework. The framework is
- *  not going to limit the number of messages displayed by a validator.
- */
-public class MessageLimitException extends RuntimeException {
-	private final static long serialVersionUID = -7034897190745766940L;
-}
diff --git a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/package.html b/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/package.html
deleted file mode 100644
index 70bdb29..0000000
--- a/plugins/org.eclipse.wst.validation/validate_core/org/eclipse/wst/validation/internal/provisional/core/package.html
+++ /dev/null
@@ -1,9 +0,0 @@
-<html>
-<head>
-<title>Validation Framework (Version 1)</title>
-</head>
-<body>
-<p>An earlier framework for calling validators that are build based.</p>
-<p>This framework is being replaced by the <code>newer org.eclipse.wst.validation</code> framework.</p>
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/AbstractValidator.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/AbstractValidator.java
deleted file mode 100644
index 83c1d55..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/AbstractValidator.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.validation.Validator.V2;
-
-/**
- * The class that all Validators that wish to use version two of the validation framework must subclass.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @author karasiuk
- *
- */
-public abstract class AbstractValidator {
-	
-	private V2 _parent;
-	
-	/**
-	 * Validate the resource. The validator is called from a WorkspaceJob, so
-	 * the validator itself does not need to establish it's own IWorkspaceRunnable.
-	 * <p>
-	 * If you override this method then you should not override the other validate method.
-	 * </p>
-	 * 
-	 * @param resource
-	 * 		The resource to be validated.
-	 * 
-	 * @param kind
-	 * 		The way the resource changed. It uses the same values as the kind
-	 * 		parameter in IResourceDelta.
-	 * 
-	 * @param state
-	 * 		A way to pass arbitrary, validator specific, data from one
-	 * 		invocation of a validator to the next, during the validation phase.
-	 * 		At the end of the validation phase, this object will be cleared,
-	 * 		thereby allowing any of this state information to be garbaged
-	 * 		collected.
-	 * 
-	 * @param monitor
-	 * 		A monitor that you can use to report your progress. To be a well
-	 * 		behaved validator you need to check the isCancelled() method at
-	 * 		appropriate times.
-	 * 
-	 * @return the result of the validation. This may be, but usually isn't, null.
-	 */
-	public ValidationResult validate(IResource resource, int kind, ValidationState state, IProgressMonitor monitor){
-		return null;
-	}
-	
-	/**
-	 * Validate the resource. The validator is called from a WorkspaceJob, so
-	 * the validator itself does not need to establish it's own
-	 * IWorkspaceRunnable.
-	 * <p>
-	 * If you override this method then you should not override the other
-	 * validate method.
-	 * </p>
-	 * 
-	 * @param event
-	 *            An object that describes the resource to be validated and why
-	 *            it should be validated.
-	 * 
-	 * @param state
-	 *            A way to pass arbitrary, validator specific, data from one
-	 *            invocation of a validator to the next, during the validation
-	 *            phase. At the end of the validation phase, this object will be
-	 *            cleared, thereby allowing any of this state information to be
-	 *            garbaged collected.
-	 * 
-	 * @param monitor
-	 *            A monitor that you can use to report your progress. To be a
-	 *            well behaved validator you need to check the isCancelled()
-	 *            method at appropriate times.
-	 * 
-	 * @return the result of the validation. Null should never be returned. If
-	 *         null is returned then the other validate method will be called as
-	 *         well.
-	 */
-	public ValidationResult validate(ValidationEvent event, ValidationState state, IProgressMonitor monitor){
-		return null;
-	}
-	
-	
-	/**
-	 * A call back method that lets the validator know that the project is being
-	 * cleaned. This method gives the validator a chance to do any special
-	 * cleanup. The default is to do nothing.
-	 * <p>
-	 * If the entire workspace is being cleaned, then the first call will have a
-	 * null project, and then there will be subsequent calls for each open
-	 * project in the workspace.</p>
-	 * 
-	 * @param project
-	 * 		The project being cleaned. This may be null, which is an indication
-	 * 		that the workspace is being cleaned.
-	 * 
-	 * @param state
-	 * 		A way to pass arbitrary, validator specific, data from one
-	 * 		invocation of a validator to the next, during the validation phase.
-	 * 
-	 * @param monitor
-	 * 		The monitor that should be used for reporting progress if the clean
-	 * 		takes a long time.
-	 */
-	public void clean(IProject project, ValidationState state, IProgressMonitor monitor){		
-	}
-		
-	/**
-	 * This method is called before any validation takes place. It allows
-	 * validators to perform any initialization that they might need.
-	 * 
-	 * @param project
-	 * 		The project that is being validated. For the very first call in the
-	 * 		validation phase, this will be null. A null project is the signal
-	 * 		that a top level validation is starting. Subsequently, the project
-	 * 		will be set, as each of the individual projects are validated.
-	 * 
-	 * @param state
-	 * 		A way to pass arbitrary, validator specific, data from one
-	 * 		invocation of a validator to the next, during the validation phase.
-	 * 
-	 * @param monitor
-	 * 		The monitor that should be used for reporting progress if the initialization
-	 * 		takes a long time.
-	 */
-	public void validationStarting(IProject project, ValidationState state, IProgressMonitor monitor){		
-	}
-	
-	/**
-	 * This method will be called when validation is complete. It allows
-	 * validators to perform any cleanup that they might need to do.
-	 * 
-	 * @param project
-	 * 		The project that was validated. The very last call in the validation
-	 * 		sets this to null so that the validator knows that all the
-	 * 		projects have now been validated.
-	 * 
-	 * @param state
-	 * 		A way to pass arbitrary, validator specific, data from one
-	 * 		invocation of a validator to the next, during the validation phase.
-	 * 
-	 * @param monitor
-	 * 		The monitor that should be used for reporting progress if the cleanup
-	 * 		takes a long time.
-	 */
-	public void validationFinishing(IProject project, ValidationState state, IProgressMonitor monitor){		
-	}
-	
-	/**
-	 * Should the validation framework first clear the markers that this
-	 * validator has placed on this resource? This method can be overridden by
-	 * validator implementors to provide a validator specific behavior.
-	 * 
-	 * @param event
-	 *            The validation event that triggered the validation.
-	 * @return true if the validation framework should first clear all the
-	 *         markers that this validator produced. This is the default
-	 *         behavior. Return false to leave the markers unchanged. It then
-	 *         becomes the responsibility of the validator to manage it's own
-	 *         markers for this resource, for this validation event.
-	 */
-	public boolean shouldClearMarkers(ValidationEvent event){
-		return true;
-	}
-		
-	/**
-	 * Answer the validator that you belong to. The validator controls the
-	 * filters and various other settings.
-	 * 
-	 * @nooverride
-	 */
-	public V2 getParent(){
-		return _parent;
-	}
-	
-	void setParent(V2 parent){
-		_parent = parent;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/DependentResource.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/DependentResource.java
deleted file mode 100644
index 3f1c67d..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/DependentResource.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import org.eclipse.core.resources.IResource;
-
-/**
- * A resource that is dependent on another resource.
- * <p>
- * This is returned by the IDependencyIndex.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @noextend
- * @see IDependencyIndex
- * @author karasiuk
- *
- */
-public class DependentResource {
-	private IResource 	_resource;
-	private Validator	_validator;
-	
-	/**
-	 * @noreference
-	 */
-	public DependentResource(IResource resource, Validator validator){
-		_resource = resource;
-		_validator = validator;
-	}
-	
-	/**
-	 * Answer the resource that is depended on.
-	 */
-	public IResource getResource() {
-		return _resource;
-	}
-	
-	/**
-	 * Answer the validator that asserted the dependency.
-	 */
-	public Validator getValidator() {
-		return _validator;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/Friend.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/Friend.java
deleted file mode 100644
index 4146636..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/Friend.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import java.util.Map;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.wst.validation.internal.ContentTypeWrapper;
-import org.eclipse.wst.validation.internal.ValType;
-
-/**
- * This class is only to be called by the validation framework and it's test cases.
- * This class is NOT part of the API.
- * <p>
- * This class provides access to some internal methods.
- * </p>
- * @author karasiuk
- *
- */
-public class Friend {
-	
-	public static void setMessages(Validator validator, Map<String, MessageSeveritySetting> map) {
-		validator.setMessages(map);
-	}
-	
-	/**
-	 * Has the validator's implementation been loaded yet? This is used by some test cases to ensure that 
-	 * plug-ins are not loaded too early.
-	 */
-	public static boolean isLoaded(Validator validator){
-		return validator.isLoaded();
-	}
-	
-	public static boolean shouldValidate(Validator validator, IResource resource, boolean isManual, boolean isBuild, 
-			ContentTypeWrapper contentTypeWrapper){
-		return validator.shouldValidate(resource, isManual, isBuild, contentTypeWrapper);
-	}
-	
-	public static boolean shouldValidate(Validator validator, IResource resource, ValType valType, 
-		ContentTypeWrapper contentTypeWrapper){
-		
-		return validator.shouldValidate(resource, valType, contentTypeWrapper);		
-	}
-	
-	public static void setMigrated(Validator validator, boolean migrated){
-		validator.setMigrated(migrated);
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IDependencyIndex.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IDependencyIndex.java
deleted file mode 100644
index d9d494b..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IDependencyIndex.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-
-/**
- * This service is used to specify the resources that a particular resource depends on.
- * <p>
- * This is an optional service, validators do not need to use this Interface and can simply supply
- * their dependency information through the ValidationResult return result.
- * </p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @noimplement
- * @see ValidationResult
- * @author karasiuk
- *
- */
-public interface IDependencyIndex {
-	
-	/**
-	 * Assert that one resource depends on another resource as part of it's validity.
-	 * <p>
-	 * For example, if an XML file is dependent on an XSD file to be valid, the
-	 * resource that holds the XML file would be the dependent, and the resource
-	 * that holds the XSD would be the dependsOn.
-	 * </p>
-	 * 
-	 * @param id
-	 * 		The validator id that is asserting that the dependency exists.
-	 * @param dependent
-	 * 		The resource that is dependent on the other resource. For example a XML file.
-	 * @param dependsOn
-	 * 		The resource that this being depended on. For example a XSD file.
-	 */
-	void add(String id, IResource dependent, IResource dependsOn);
-	
-	/**
-	 * Remove all the dependency assertions for this project.
-	 * 
-	 * @param project
-	 * 		The project that will have it's dependency assertions removed.
-	 */
-	void clear(IProject project);
-	
-	/**
-	 * Answer all the resources that depend on this resource. For example, if
-	 * this resource was a XSD, this could answer all the XML files that
-	 * depended on it for their validity.
-	 * 
-	 * @param resource
-	 * 		A resource that other resources may depend on.
-	 * 
-	 * @return the dependent resources.
-	 */
-	List<DependentResource> get(IResource resource);
-	
-	/**
-	 * Answer all the resources that depend on this resource. For example, if
-	 * this resource was a XSD, this could answer all the XML files that
-	 * depended on it for their validity.
-	 * 
-	 * @param id
-	 * 		The validator id that asserted that the dependency exists.
-	 * @param resource
-	 * 		A resource that other resources may depend on.
-	 * 
-	 * @return the dependent resources. This method can return null or an empty array, if
-	 * 	there are no dependent resources.
-	 */
-	IResource[] get(String id, IResource resource);
-	
-	/**
-	 * Answer true if other resources depend on this resource.
-	 * 
-	 * @param resource
-	 * 		The resource being tested.
-	 * 
-	 * @return true if any of the validators asserted a dependency on this resource.
-	 */
-	boolean isDependedOn(IResource resource);
-	
-	/**
-	 * Replace all the resources that the dependent depends on.
-	 * 
-	 * @param id
-	 * 		The validator id that is asserting that the dependency exists.
-	 * @param dependent
-	 * 		The resource that is dependent on the other resource.
-	 * @param dependsOn
-	 * 		All the resources that are depended on. This can be null or a zero
-	 * 		length array. Null or a zero length array removes all the dependencies.
-	 */
-	void set(String id, IResource dependent, IResource[] dependsOn);
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IMutableValidator.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IMutableValidator.java
deleted file mode 100644
index 90ebfb1..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IMutableValidator.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-/**
- * A validator that has fields that can be updated.
- * <p>
- * The following procedure is used to change a Validator's settings.
- * <ol>
- * <li>An IMutableValidator is retrieved.</li>
- * <li>The IMutableValidator is changed.</li>
- * <li>The IMutableValidator is "activated".</li>
- * </ol>
- * </p>
- * <p>The methods {@link ValidationFramework#getProjectSettings(org.eclipse.core.resources.IProject)} and 
- * {@link ValidationFramework#getWorkspaceSettings()} can be used to retrieve IMutableValidator's.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @noextend This interface is not intended to be extended by clients.
- * @noimplement This interface is not intended to be implemented by clients.
-
- * @author karasiuk
- *
- */
-public interface IMutableValidator {
-	
-	/**
-	 * Answer the validator's id.
-	 */
-	String getId();
-	
-	/**
-	 * Answer the validator's name.
-	 */
-	String getName();
-	
-	/**
-	 * Answer the validator's class name.
-	 * @return
-	 */
-	String getValidatorClassname();
-	
-	/**
-	 * Answer if the validator is enabled for build based validation.
-	 */
-	boolean isBuildValidation();
-	
-	/**
-	 * Answer if the validator is enabled for manual based validation.
-	 */
-	boolean isManualValidation();
-	
-	/**
-	 * Set whether the validator should be enabled for build based validation.
-	 */
-	void setBuildValidation(boolean build);
-	
-	/**
-	 * Set whether the validator should be enabled for manual based validation.
-	 */	
-	void setManualValidation(boolean manual);
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IPerformanceMonitor.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IPerformanceMonitor.java
deleted file mode 100644
index b951270..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IPerformanceMonitor.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import java.util.List;
-
-/**
- * A service that collects performance information on validation operations.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @noextend This interface is not intended to be extended by clients.
- * @noimplement This interface is not intended to be implemented by clients.
- * @author karasiuk
- *
- */
-public interface IPerformanceMonitor {
-	
-	/**
-	 * The level of information to collect.
-	 */
-	public enum CollectionLevel {None, Default}
-	
-	/** 
-	 * Add this performance counter to the monitor. The monitor will decide what to 
-	 * do with the results, it may log them to a file, or it may simply hold on to them.
-	 * 
-	 * @param counters
-	 */
-	public void add(PerformanceCounters counters);
-	
-	/**
-	 * Answer true if the performance monitor is collecting performance events.
-	 */
-	public boolean isCollecting();
-	
-	/** Answer true if only summary information is requested. */
-	public boolean isSummaryOnly();
-	
-	/**
-	 * Set the performance event collection level. This controls which
-	 * performance events are collected, including none of them.
-	 * 
-	 * @param level
-	 * 		The level to collect. The default is to not collect anything.
-	 */
-	public void setCollectionLevel(CollectionLevel level);
-	
-	/**
-	 * Answer the level of performance events that are being collected by the validation framework.
-	 */
-	public CollectionLevel getCollectionLevel();
-	
-	/**
-	 * Answer the performance counters that have been collected so far. Some
-	 * monitors do not save counters, and they will always return an empty list.
-	 * 
-	 * @param asSummary
-	 * 		If this parameter is true, only answer a summary of the counters.
-	 */
-	public List<PerformanceCounters> getPerformanceCounters(boolean asSummary);
-	
-	/**
-	 * Delete the collected performance counters.
-	 */
-	public void resetPerformanceCounters();
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IValidatorGroupListener.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IValidatorGroupListener.java
deleted file mode 100644
index 5f4feee..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/IValidatorGroupListener.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IProgressMonitor;
-
-/**
- * Validators may wish to join validator groups for performance or other
- * reasons. That way expensive operations like creating and releasing models can
- * be done in a common location, and be done only once per resource. Group listeners
- * are declared via the <code>org.eclipse.wst.validation.validatorGroup</code> extension point.
- * <p>
- * As validation proceeds, the validation framework, on a resource by resource
- * bases, determines if any validators that are members of a group are
- * interested in the resource. If they are, before the first validator in the
- * group is called, the <code>validationStarting</code> method is called. If this method was
- * called, then the <code>validationFinishing</code> method will be called once all the
- * validators have processed the resource.
- * </p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IValidatorGroupListener {
-	/**
-	 * This is called before the first validator in the group that is interested
-	 * in the resource is called. If no validators in the group are interested
-	 * in the resource, then this method is not called.
-	 * 
-	 * @param resource
-	 *            The resource that is being validated.
-	 * @param monitor
-	 *            A progress monitor that the method should use.
-	 * @param state
-	 *            The validation state for the current operation.
-	 */
-	void validationStarting(IResource resource, IProgressMonitor monitor, ValidationState state);
-	
-	/**
-	 * If the validationStarting method was called on the resource, then this
-	 * method will be called after the last validator has processed the
-	 * resource.
-	 * 
-	 * @param resource
-	 * 		The resource that is being validated.
-	 * @param monitor
-	 * 		A progress monitor that the method can use.
-	 * @param state
-	 * 		The validation state for the current operation.
-	 */
-	void validationFinishing(IResource resource, IProgressMonitor monitor, ValidationState state);
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/MessageSeveritySetting.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/MessageSeveritySetting.java
deleted file mode 100644
index 4eaa3b7..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/MessageSeveritySetting.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.wst.validation.internal.ValMessages;
-
-/**
- * Associate a message severity with a message category.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @noextend
- * @author karasiuk
- *
- */
-public class MessageSeveritySetting {
-	public enum Severity {
-		Error(ValMessages.SevError, IMarker.SEVERITY_ERROR),
-		Warning(ValMessages.SevWarning, IMarker.SEVERITY_WARNING),
-		Ignore(ValMessages.SevIgnore, IMarker.SEVERITY_INFO);
-		
-		private String _severityLabel;
-		private Severity(String label, int markerSeverity){
-			_severityLabel = label;
-			_markerSeverity = markerSeverity;
-		}
-		private int		_markerSeverity;
-		
-		@Override
-		public String toString() {
-			return _severityLabel;
-		}
-
-		/**
-		 * Answer the associated IMarker severity.
-		 */
-		public int getMarkerSeverity() {
-			return _markerSeverity;
-		}
-		
-	}
-	
-	private String		_id;
-	private String 		_label;
-	private Severity 	_default;
-	private Severity 	_current;
-	
-	/**
-	 * Create an association between a label and a message severity.
-	 * 
-	 * @param id
-	 * 		An id that is used to identify this particular setting. This must be
-	 * 		unique within the scope of this particular validator.
-	 * 
-	 * @param label
-	 * 		An end user string, that can describe either an individual message
-	 * 		or a message category.
-	 * 
-	 * @param defaultSeverity
-	 * 		The default severity for this label. If the end user doesn't change
-	 * 		anything this is what the severity will be.
-	 */
-	public MessageSeveritySetting(String id, String label, Severity defaultSeverity){
-		_id = id;
-		_label = label;
-		_default = defaultSeverity;
-	}
-	
-	@Override
-	public int hashCode() {
-		int h = 0;
-		if (_current != null)h += _current.getMarkerSeverity()*1000;
-		if (_id != null)h += _id.hashCode();
-		return h;
-	}
-
-	public String getLabel() {
-		return _label;
-	}
-
-	/** Answer the default severity as defined by the validator owner. */
-	public Severity getDefault() {
-		return _default;
-	}
-
-	/** 
-	 * Answer the current severity for the message. The end user may have changed this through a
-	 * preference dialog.
-	 */
-	public Severity getCurrent() {
-		if (_current != null)return _current;
-		return _default;
-	}
-
-	/**
-	 * The id that the validator owner assigned to the message.
-	 */
-	public String getId() {
-		return _id;
-	}
-
-	/**
-	 * Set the current message severity.
-	 * 
-	 * @param severity
-	 * @return true if the setting changed
-	 */
-	public boolean setCurrent(Severity severity) {
-		if (_current == severity)return false;
-		_current = severity;
-		return true;
-	}
-	
-	@Override
-	public String toString() {
-		return _id + " " + getCurrent().toString(); //$NON-NLS-1$
-	}
-
-	/**
-	 * Answer a copy of this object.
-	 */
-	public MessageSeveritySetting copy() {
-		MessageSeveritySetting ms = new MessageSeveritySetting(_id, _label, _default);
-		ms._current = _current;
-		return ms;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/MutableProjectSettings.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/MutableProjectSettings.java
deleted file mode 100644
index 73bf21c..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/MutableProjectSettings.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import org.eclipse.core.resources.IProject;
-
-/**
- * This class holds the overall project validation settings.
- * <p>
- * The following procedure is used to change a project's Validation settings.
- * <ol>
- * <li>The MutableProjectSettings are retrieved.</li>
- * <li>The MutableProjectSettings are changed.</li>
- * <li>The MutableProjectSettings are "applied".</li>
- * </ol>
- * </p>
- * <p>In order for a project's validation setting to be effective, both 
- * {@link #getOverride()} and {@link MutableWorkspaceSettings#getOverride()}
- * must be true.
- * </p>
- * <p>
- * These settings can be retrieved with {@link ValidationFramework#getProjectSettings(IProject)}.
- * </p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
-
- * @author karasiuk
- *
- */
-public final class MutableProjectSettings {
-	private final IProject	_project;
-
-	private boolean _override;
-	private boolean	_suspend;
-	private final IMutableValidator[] _validators;
-	
-	public IMutableValidator[] getValidators() {
-		return _validators;
-	}
-
-	public MutableProjectSettings(IProject project, IMutableValidator[] validators){
-		_project = project;
-		_validators = validators;
-	}
-
-	/**
-	 * Can this project override the workspace level validation settings?
-	 */
-	public boolean getOverride() {
-		return _override;
-	}
-
-	/**
-	 * Change whether this project can override workspace level validation settings.
-	 * @param override Set to true if the project is allowed to override workspace level validation settings.
-	 */
-	public void setOverride(boolean override) {
-		_override = override;
-	}
-
-	/**
-	 * Is validation suspended for this project?
-	 */
-	public boolean getSuspend() {
-		return _suspend;
-	}
-
-	/**
-	 * Change whether this project is suspending it's validation.
-	 * @param suspend Set to true, to suspend validation for this project.
-	 */
-	public void setSuspend(boolean suspend) {
-		_suspend = suspend;
-	}
-
-	/**
-	 * Answer the project that these settings are for.
-	 */
-	public IProject getProject() {
-		return _project;
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/MutableWorkspaceSettings.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/MutableWorkspaceSettings.java
deleted file mode 100644
index 80d18f1..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/MutableWorkspaceSettings.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import org.eclipse.wst.validation.internal.model.GlobalPreferencesValues;
-
-
-/**
- * This class holds the overall workspace validation settings.
- * <p>
- * The following procedure is used to change a project's Validation settings.
- * <ol>
- * <li>The MutableWorkspaceSettings are retrieved.</li>
- * <li>The MutableWorkspaceSettings are changed.</li>
- * <li>The MutableWorkspaceSettings are "applied".</li>
- * </ol>
- * </p>
- * <p>
- * These settings can be retrieved with {@link ValidationFramework#getWorkspaceSettings()}.
- * </p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
-
- * @author karasiuk
- *
- */
-public final class MutableWorkspaceSettings {
-
-	private final GlobalPreferencesValues _values;
-	
-	private final IMutableValidator[] _validators;
-	
-	public IMutableValidator[] getValidators() {
-		return _validators;
-	}
-
-	public MutableWorkspaceSettings(IMutableValidator[] validators, GlobalPreferencesValues values){
-		_validators = validators;
-		_values = values;
-	}
-	
-	public GlobalPreferencesValues getGlobalPreferencesValues(){
-		return _values;
-	}
-	
-	public boolean getAutoSave() {
-		return _values.saveAutomatically;
-	}
-
-	public void setAutoSave(boolean autoSave) {
-		_values.saveAutomatically = autoSave;
-	}
-
-	/**
-	 * Can this project override the workspace level validation settings?
-	 */
-	public boolean getOverride() {
-		return _values.override;
-	}
-
-	/**
-	 * Change whether this project can override workspace level validation settings.
-	 * @param override Set to true if the project is allowed to override workspace level validation settings.
-	 */
-	public void setOverride(boolean override) {
-		_values.override = override;
-	}
-
-	/**
-	 * Is validation suspended for this project?
-	 */
-	public boolean getSuspend() {
-		return _values.disableAllValidation;
-	}
-
-	/**
-	 * Change whether this project is suspending it's validation.
-	 * @param suspend Set to true, to suspend validation for this project.
-	 */
-	public void setSuspend(boolean suspend) {
-		_values.disableAllValidation = suspend;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/PerformanceCounters.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/PerformanceCounters.java
deleted file mode 100644
index cf57721..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/PerformanceCounters.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.validation.internal.Misc;
-import org.eclipse.wst.validation.internal.ValMessages;
-
-/**
- * Some performance information for a validation invocation. This object is immutable.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @noextend
- * @author karasiuk
- *
- */
-public class PerformanceCounters {
-	
-	private long	_when;
-	private String 	_validatorId;
-	private String	_validatorName;
-	private String	_resourceName;
-	private int		_numberInvocations;
-	private	long	_elapsedTime;
-	private long	_cpuTime;
-	
-	/**
-	 * @param validatorId
-	 * @param validatorName
-	 * @param resourceName 
-	 * @param numberInvocations number of times the validator was invoked
-	 * @param elapsedTime elapsed time in milliseconds
-	 * @param cpuTime CPU time in nanoseconds
-	 */
-	public PerformanceCounters(String validatorId, String validatorName, String resourceName, 
-		int numberInvocations, long elapsedTime, long cpuTime){
-		
-		_when = System.currentTimeMillis();
-		_validatorId = validatorId;
-		_validatorName = validatorName;
-		_resourceName = resourceName;
-		_numberInvocations = numberInvocations;
-		_elapsedTime = elapsedTime;
-		_cpuTime = cpuTime;
-	}
-	
-	public String getValidatorId() {
-		return _validatorId;
-	}
-	public int getNumberInvocations() {
-		return _numberInvocations;
-	}
-	
-	/**
-	 * Answer the elapsed time in milliseconds. 
-	 */
-	public long getElapsedTime() {
-		return _elapsedTime;
-	}
-	
-	/**
-	 * Answer the amount of CPU time in nanoseconds. If this can not be determined,
-	 * answer -1.
-	 */
-	public long getCpuTime() {
-		return _cpuTime;
-	}
-	
-	@Override
-	public String toString() {
-		return NLS.bind(ValMessages.LogValEndTime,	
-			new Object[]{_validatorName, _validatorId, _resourceName, Misc.getTimeMS(_elapsedTime)});
-	}
-	
-	public String toString(boolean asSummary){
-		if (asSummary){
-			if (_cpuTime != -1)return NLS.bind(ValMessages.LogValSummary2, 
-				new Object[]{_validatorName, _validatorId, _numberInvocations, 
-					Misc.getTimeMS(_elapsedTime), Misc.getTimeNano(_cpuTime)});
-			
-			return NLS.bind(ValMessages.LogValSummary, 
-					new Object[]{_validatorName, _validatorId, _numberInvocations, Misc.getTimeMS(_elapsedTime)});
-		}
-		return toString();
-	}
-
-	public String getValidatorName() {
-		return _validatorName;
-	}
-
-	/** 
-	 * Answer when was the event logged. 
-	 * 
-	 * @see System#currentTimeMillis()
-	 */
-	public long getWhen() {
-		return _when;
-	}
-
-	public String getResourceName() {
-		return _resourceName;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ReporterHelper.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ReporterHelper.java
deleted file mode 100644
index 20876bf..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ReporterHelper.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import java.util.LinkedList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.validation.internal.MarkerManager;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-
-
-/**
- * This is a temporary class to ease the transition from the previous validation framework.
- * <p>
- * This is not API. 
- * @author karasiuk
- *
- */
-public class ReporterHelper implements IReporter {
-	private IProgressMonitor 	_monitor;
-	private List<IMessage>		_list = new LinkedList<IMessage>();
-	
-	public ReporterHelper(IProgressMonitor monitor){
-		_monitor = monitor;
-	}
-
-	public void addMessage(IValidator origin, IMessage message) {
-		_list.add(message);
-	}
-
-	public void displaySubtask(IValidator validator, IMessage message) {
-		_monitor.subTask(message.getText(validator.getClass().getClassLoader()));
-	}
-
-	public List<IMessage> getMessages() {
-		return _list;
-	}
-
-	public boolean isCancelled() {
-		return _monitor.isCanceled();
-	}
-
-	public void removeAllMessages(IValidator origin) {
-		_list.clear();
-	}
-
-	public void removeAllMessages(IValidator origin, Object object) {
-		_list.clear();
-	}
-
-	public void removeMessageSubset(IValidator validator, Object obj, String groupName) {
-		_list.clear();
-	}
-	
-	public void makeMarkers(){
-		MarkerManager.getDefault().makeMarkers(_list);
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationEvent.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationEvent.java
deleted file mode 100644
index 528e58e..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationEvent.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceDelta;
-
-/**
- * An object that describes which object should be validated and what triggered its validation.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @author karasiuk
- *
- */
-
-public final class ValidationEvent {
-	
-	private IResource 		_resource;
-	private int				_kind;
-	private IResourceDelta 	_dependsOn;
-	
-	/**
-	 * Create an object that describes what should be validated.
-	 * 
-	 * @param resource
-	 *            The resource to be validated.
-	 * @param kind
-	 *            The way the resource changed. It uses the same values as the
-	 *            kind parameter in IResourceDelta.
-	 * @param dependsOn
-	 *            If the resource is being validated because one of it's
-	 *            dependencies has changed, that change is described here. This
-	 *            can be null.
-	 */
-	public ValidationEvent(IResource resource, int kind, IResourceDelta dependsOn){
-		_resource = resource;
-		_kind = kind;
-		_dependsOn = dependsOn;
-	}
-
-	/**
-	 * The resource to be validated.
-	 */
-	public IResource getResource() {
-		return _resource;
-	}
-
-	/**
-	 * The way the resource changed. It uses the same values as the kind
-	 * parameter in IResourceDelta.
-	 */
-	public int getKind() {
-		return _kind;
-	}
-
-	/**
-	 * If the resource is being validated because one of it's dependencies has changed, that change is described here.
-	 * This method will return null when the trigger is not because of a dependency change.
-	 */
-	public IResourceDelta getDependsOn() {
-		return _dependsOn;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationFramework.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationFramework.java
deleted file mode 100644
index 17cc455..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationFramework.java
+++ /dev/null
@@ -1,683 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceVisitor;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.core.runtime.preferences.InstanceScope;
-import org.eclipse.wst.validation.Validator.V1;
-import org.eclipse.wst.validation.internal.ConfigurationManager;
-import org.eclipse.wst.validation.internal.ContentTypeWrapper;
-import org.eclipse.wst.validation.internal.DebugConstants;
-import org.eclipse.wst.validation.internal.DependencyIndex;
-import org.eclipse.wst.validation.internal.DisabledResourceManager;
-import org.eclipse.wst.validation.internal.DisabledValidatorManager;
-import org.eclipse.wst.validation.internal.GlobalConfiguration;
-import org.eclipse.wst.validation.internal.MarkerManager;
-import org.eclipse.wst.validation.internal.Misc;
-import org.eclipse.wst.validation.internal.PerformanceMonitor;
-import org.eclipse.wst.validation.internal.ProjectUnavailableError;
-import org.eclipse.wst.validation.internal.ValManager;
-import org.eclipse.wst.validation.internal.ValOperation;
-import org.eclipse.wst.validation.internal.ValPrefManagerGlobal;
-import org.eclipse.wst.validation.internal.ValPrefManagerProject;
-import org.eclipse.wst.validation.internal.ValType;
-import org.eclipse.wst.validation.internal.ValidationRunner;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-import org.eclipse.wst.validation.internal.ValidatorMutable;
-import org.eclipse.wst.validation.internal.ValManager.UseProjectPreferences;
-import org.eclipse.wst.validation.internal.model.GlobalPreferences;
-import org.eclipse.wst.validation.internal.model.GlobalPreferencesValues;
-import org.eclipse.wst.validation.internal.model.ProjectPreferences;
-import org.eclipse.wst.validation.internal.operations.ValidationBuilder;
-import org.eclipse.wst.validation.internal.operations.ValidatorManager;
-import org.eclipse.wst.validation.internal.operations.WorkbenchReporter;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-
-
-/**
- * The central class of the Validation Framework.
- * <p>
- * This is a singleton class that is accessed through the getDefault() method. 
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @author karasiuk
- *
- */
-public final class ValidationFramework {
-	
-	private volatile IDependencyIndex 	_dependencyIndex;
-	private IPerformanceMonitor			_performanceMonitor;
-	
-	private Set<IProject> 				_suspendedProjects;
-	private boolean 					_suspendAllValidation;
-
-	/** 
-	 * Answer the singleton, default instance of this class.
-	 */
-	public static ValidationFramework getDefault(){
-		return Singleton.vf;
-	}
-	
-	private ValidationFramework(){}
-	
-	/**
-	 * Add the validation builder to the project, so that the project can support
-	 * build time validation. It is safe to call this method, if the builder was
-	 * previously added to the project. It will not be added more than once.
-	 * 
-	 * @param project The project that the builder is added to.
-	 */
-	public void addValidationBuilder(IProject project){
-		ValidatorManager.addProjectBuildValidationSupport(project);
-	}
-	
-	/**
-	 * Clear any validation markers that may have been set by this validator.
-	 * 
-	 * @param resource
-	 * 		The resource that may have it's markers cleared.
-	 * @param validatorId
-	 * 		The id of validator that created the marker.
-	 */
-	public void clearMessages(IResource resource, String validatorId) throws CoreException {
-		Validator v = getValidator(validatorId, null);
-		if (v != null)MarkerManager.getDefault().clearMarker(resource, v);
-	}
-	
-	/**
-	 * Disable all validation for the given resource. This method instructs
-	 * the framework to not run any validators on the given resource or any of
-	 * it's children. This setting is persistent. Currently this only works with version 2
-	 * validators.
-	 * <p>
-	 * Use the enableValidation method to restore validation.
-	 * </p>
-	 * 
-	 * @param resource
-	 *            The resource that is having validation disabled. It must be an IFolder or an IFile.
-	 * 
-	 * @see #enableValidation(IResource)
-	 */
-	public void disableValidation(IResource resource){
-		assert resource != null;
-		DisabledResourceManager.getDefault().disableValidation(resource);
-	}
-	
-	/**
-	 * Enable validation for the given resource. If the resource was not
-	 * previously disabled this method call has no effect. Currently this only
-	 * works with version 2 validators.
-	 * 
-	 * @param resource
-	 * 		The resource that is having validation re-enabled.
-	 * 
-	 * @see #disableValidation(IResource)
-	 */
-	public void enableValidation(IResource resource){
-		DisabledResourceManager.getDefault().enableValidation(resource);
-	}
-	
-	/**
-	 * Answer the dependency index. Validators can use this to determine which resources depend on which
-	 * other resources.
-	 */
-	public IDependencyIndex getDependencyIndex(){
-		// note how the _dependencyIndex is volatile so that this double checking approach can be used.
-		if (_dependencyIndex == null){
-			synchronized(this){
-				if (_dependencyIndex == null)_dependencyIndex = new DependencyIndex();
-			}
-		}
-		return _dependencyIndex;
-	}
-
-	/**
-	 * Answer a performance monitor for the validators.
-	 */
-	public synchronized IPerformanceMonitor getPerformanceMonitor(){
-		if (_performanceMonitor == null){
-			boolean traceTimes = Misc.debugOptionAsBoolean(DebugConstants.TraceTimes);
-			String traceFile = Platform.getDebugOption(DebugConstants.TraceTimesFile);
-			boolean useDoubles = Misc.debugOptionAsBoolean(DebugConstants.TraceTimesUseDoubles);
-
-			_performanceMonitor = PerformanceMonitor.create(traceTimes, traceFile, useDoubles);
-		}
-		return _performanceMonitor;
-	}
-	
-	/**
-	 * Answer the preference store that holds the persisted global validation settings.
-	 */
-	public IEclipsePreferences getPreferenceStore(){
-		return new InstanceScope().getNode(ValidationPlugin.PLUGIN_ID);
-	}
-	
-	public IReporter getReporter(IProject project, IProgressMonitor monitor){
-		return new WorkbenchReporter(project, monitor);
-	}
-	
-	/**
-	 * Answer all the validators that are applicable for the given resource. A validator is
-	 * still returned even if it has been turned off by the user.
-	 * <p>
-	 * The caller may still need to test if the validator has been turned off by
-	 * the user, by using the isBuildValidation() and isManualValidation()
-	 * methods.
-	 * </p>
-	 * 
-	 * @param resource
-	 * 		The resource that determines which validators are applicable.
-	 * 
-	 * @param isManual
-	 * 		If true then the validator must be turned on for manual validation.
-	 * 		If false then the isManualValidation setting isn't used to filter
-	 * 		out validators.
-	 * 
-	 * @param isBuild
-	 * 		If true then the validator must be turned on for build based
-	 * 		validation. If false then the isBuildValidation setting isn't used
-	 * 		to filter out validators.
-	 * 
-	 * @see Validator#isBuildValidation()
-	 * @see Validator#isManualValidation()
-	 */
-	public Validator[] getValidatorsFor(IResource resource, boolean isManual, boolean isBuild){
-		IProject project = resource.getProject();
-		List<Validator> list = new LinkedList<Validator>();
-		ContentTypeWrapper ctw = new ContentTypeWrapper();
-		for (Validator val : ValManager.getDefault().getValidators(project)){
-			if (val.shouldValidate(resource, isManual, isBuild, ctw))list.add(val);
-		}
-		
-		Validator[] result = new Validator[list.size()];
-		list.toArray(result);
-		return result;
-	}
-	
-	/**
-	 * Answer all the validators that should not validate the resource, either
-	 * because their filters don't support the resource, or the validator has
-	 * been disabled for both build validation and manual validation.
-	 * 
-	 * @param resource
-	 * 		The resource this is being tested.
-	 */
-	public Set<Validator> getDisabledValidatorsFor(IResource resource){
-		return DisabledValidatorManager.getDefault().getDisabledValidatorsFor(resource);
-	}
-	
-	/**
-	 * Answer the global validator with the given id.
-	 * 
-	 * @deprecated Use getValidator(String id, IProject project) with a null project instead.
-	 * 
-	 * @param id
-	 * @return null if the validator is not found
-	 */
-	public Validator getValidator(String id){
-		return ValManager.getDefault().getValidatorWithId(id, null);
-	}
-	
-	/**
-	 * Answer the validator with the given id that is in effect for the given
-	 * project.
-	 * <p>
-	 * Individual projects may override the global validation preference
-	 * settings. If this is allowed and if the project has it's own settings,
-	 * then those validators are returned via this method.
-	 * </p>
-	 * <p>
-	 * The following approach is used. For version 1 validators, the validator
-	 * is only returned if it is defined to operate on this project type. This
-	 * is the way that the previous version of the framework did it. For version
-	 * 2 validators, they are all returned.
-	 * </p>
-	 * 
-	 * @param id
-	 * 		Validator id.
-	 * @param project
-	 * 		This can be null, in which case all the registered validators are
-	 * 		checked.
-	 * @return null if the validator is not found
-	 */
-	public Validator getValidator(String id, IProject project){
-		return ValManager.getDefault().getValidatorWithId(id, project);
-	}
-	
-	/**
-	 * Answer copies of all the registered validators.
-	 * 
-	 * @return Answer an empty array if there are no validators.
-	 */
-	public Validator[] getValidators(){
-		return ValManager.getDefault().getValidatorsCopy();
-	}
-		
-	/**
-	 * Answer the validation settings that have been defined on the
-	 * project. To "activate" any changes to these settings, the
-	 * {@link #applyChanges(MutableProjectSettings, boolean)} method needs to be
-	 * called.
-	 * 
-	 * @param project The project who's settings you wish to examine or change.
-	 * @return Validation settings that apply to the given project.
-	 */
-	public MutableProjectSettings getProjectSettings(IProject project){
-		ProjectPreferences pp = ValManager.getDefault().getProjectPreferences(project);
-		Validator[] vals = pp.getValidators();
-		ValidatorMutable[] vms = new ValidatorMutable[vals.length];
-		for (int i=0; i<vals.length; i++)vms[i] = new ValidatorMutable(vals[i]);
-
-		MutableProjectSettings mps = new MutableProjectSettings(project, vms);
-		mps.setOverride(pp.getOverride());
-		mps.setSuspend(pp.getSuspend());
-		return mps;
-	}
-	
-	/**
-	 * Answer the validation settings that have been defined at the workspace level.
-	 * To "activate" any changes to these settings, the
-	 * {@link #applyChanges(MutableWorkspaceSettings, boolean)} method needs to be
-	 * called.
-	 * 
-	 * @return Validation settings that apply to the entire workspace.
-	 */
-	public MutableWorkspaceSettings getWorkspaceSettings() throws InvocationTargetException{
-		
-		ValManager vm = ValManager.getDefault();
-		GlobalPreferences gp = vm.getGlobalPreferences();
-		
-		Validator[] vals = vm.getValidators();		
-		ValidatorMutable[] vms = new ValidatorMutable[vals.length];
-		for (int i=0; i<vals.length; i++)vms[i] = new ValidatorMutable(vals[i]);
-
-		MutableWorkspaceSettings mws = new MutableWorkspaceSettings(vms, gp.asValues());
-		return mws;
-	}
-		
-	/**
-	 * Apply the changes that have been been to the validation settings.
-	 * 
-	 * @param settings
-	 *            The project settings.
-	 * @param persist
-	 *            If true then the changes are persisted to the property files.
-	 *            If false the changes are applied to the validators, but are
-	 *            not persisted.
-	 */
-	public void applyChanges(MutableProjectSettings settings, boolean persist){
-		ValPrefManagerProject vpm = new ValPrefManagerProject(settings.getProject());
-		vpm.savePreferences(settings, persist);
-	}
-	
-	/**
-	 * Apply the changes that have been been to the validation settings.
-	 * 
-	 * @param settings
-	 *            The workspace settings.
-	 * @param persist
-	 *            If true then the changes are persisted to the property files.
-	 *            If false the changes are applied to the validators, but are
-	 *            not persisted.
-	 */
-	public void applyChanges(MutableWorkspaceSettings settings, boolean persist){
-		
-		ValManager vm = ValManager.getDefault();
-		GlobalPreferencesValues gpv = settings.getGlobalPreferencesValues();
-		vm.replace(gpv);
-		
-		IMutableValidator[] mvs = settings.getValidators();
-		ValidatorMutable[] vals = new ValidatorMutable[mvs.length];
-		for (int i=0; i<mvs.length; i++)vals[i] = (ValidatorMutable)mvs[i];
-		ValPrefManagerGlobal.getDefault().savePreferences(vm.getGlobalPreferences(), vals, persist);
-		ValPrefManagerGlobal.saveV1Preferences(vals, persist);		
-	}
-	
-	/**
-	 * Validators can use project level settings (Project natures and facets) to
-	 * determine if they are applicable to the project or not.
-	 * 
-	 * @param project
-	 *            The project that the configuration is based on.
-	 * @return The copies of the validators that are configured to run on this project based
-	 *         on the project level settings.
-	 * @throws ProjectUnavailableError
-	 */
-	public Validator[] getValidatorsConfiguredForProject(IProject project) throws ProjectUnavailableError {
-		Validator[] orig = ValManager.getDefault().getValidatorsConfiguredForProject(project, UseProjectPreferences.Normal);
-		Validator[] copy = new Validator[orig.length];
-		for (int i=0; i<orig.length; i++)copy[i] = orig[i].copy();
-		return copy;
-	}
-	
-	/**
-	 * Answer all the validators that are applicable for the given resource.
-	 * 
-	 * @param resource the resource that determines which validators are applicable.
-	 */
-	public Validator[] getValidatorsFor(IResource resource){
-		List<Validator> list = new LinkedList<Validator>();
-		for (Validator v : getValidatorsFor(resource, false, false)){
-			if (v.isBuildValidation() || v.isManualValidation())list.add(v);
-		}
-		Validator[] vals = new Validator[list.size()];
-		return list.toArray(vals);
-	}
-	
-	/**
-	 * Answer true if the resource has any enabled validators.
-	 * 
-	 * @param resource
-	 * 		A file, folder or project.
-	 * 
-	 * @param isManual
-	 * 		If true then the validator must be turned on for manual validation.
-	 * 		If false then the isManualValidation setting isn't used to filter
-	 * 		out validators.
-	 * 
-	 * @param isBuild
-	 * 		If true then the validator must be turned on for build based
-	 * 		validation. If false then the isBuildValidation setting isn't used
-	 * 		to filter out validators.
-	 */
-	public boolean hasValidators(IResource resource, boolean isManual, boolean isBuild){
-		return ValManager.getDefault().hasValidators(resource, isManual, isBuild);
-	}
-	
-	/**
-	 * Answer whether or not the validator has been activated, i.e. has the
-	 * bundle that defines the validator been loaded. We do not want to cause
-	 * unnecessary bundle loading, so this check can be performed by third party
-	 * callers, to prevent making other calls that will force the validator to
-	 * be loaded.
-	 * 
-	 * @param validator
-	 *            The validator that is being tested.
-	 * @return true if the validator has already been loaded.
-	 */
-	public boolean isLoaded(Validator validator){
-		return validator.isLoaded();
-	}
-	
-	/**
-	 * Waits until all validation jobs are finished. This method will block the
-	 * calling thread until all such jobs have finished executing, or until this
-	 * thread is interrupted. If there are no validation jobs that are
-	 * currently waiting, running, or sleeping, this method returns immediately.
-	 * Feedback on how the join is progressing is provided to the progress
-	 * monitor.
-	 * <p>
-	 * If this method is called while the job manager is suspended, only jobs
-	 * that are currently running will be joined. Once there are no jobs in the
-	 * family in the {@link Job#RUNNING} state, this method returns.
-	 * </p>
-	 * <p>
-	 * Note that there is a deadlock risk when using join. If the calling thread
-	 * owns a lock or object monitor that the joined thread is waiting for,
-	 * deadlock will occur. This method can also result in starvation of the
-	 * current thread if another thread continues to add jobs of the given
-	 * family, or if a job in the given family reschedules itself in an infinite
-	 * loop.
-	 * </p>
-	 * 
-	 * @param monitor
-	 * 		Progress monitor for reporting progress on how the wait is
-	 * 		progressing, or <code>null</code> if no progress monitoring is
-	 * 		required.
-	 * @exception InterruptedException
-	 * 		if this thread is interrupted while waiting
-	 * @exception OperationCanceledException
-	 * 		if the progress monitor is canceled while waiting
-	 */
-	public void join(IProgressMonitor monitor) throws InterruptedException, OperationCanceledException {
-		Job.getJobManager().join(ResourcesPlugin.FAMILY_AUTO_BUILD, monitor);
-		Job.getJobManager().join(ValidationBuilder.FAMILY_VALIDATION_JOB, monitor);
-	}
-	
-	/**
-	 * Suspends, or undoes the suspension of, validation on the current project.
-	 * If <b>suspend</b> is true then validation is suspended and if it's false
-	 * then validation is not suspended on the project. The value of this
-	 * variable is not persisted.
-	 * <p>
-	 * Be <b>very careful</b> when you use this method! Turn validation back on in a
-	 * finally block because if the code which suspended validation crashes, the
-	 * user has no way to reset the suspension. The user will have to shut down
-	 * and restart the workbench to get validation to work again.
-	 * </p>
-	 * 
-	 * @param project
-	 * 		The project that is to be suspended or unsuspended.
-	 * @param suspend
-	 * 		If true, validation on the project will be suspend. If false it will
-	 * 		not be suspended.
-	 */
-	public void suspendValidation(IProject project, boolean suspend) {
-		if (project == null)return;
-		if (suspend)getSuspendedProjects().add(project);
-		else getSuspendedProjects().remove(project);
-	}
-	
-	private synchronized Set<IProject> getSuspendedProjects(){
-		if (_suspendedProjects == null)_suspendedProjects = Collections.synchronizedSet(new HashSet<IProject>(20));
-		return _suspendedProjects;
-	}
-	
-	/**
-	 * Save the validators settings into the persistent store, there by making their settings the active settings.
-	 * <p>
-	 * A common use of this method would be to change whether particular validators are enabled or not. For example
-	 * if you only wanted the JSP validator enabled, you could use code similar to this:
-	 * <pre>
-	 * ValidationFramework vf = ValidationFramework.getDefault();
-	 * Validator[] vals = vf.getValidators();
-	 * for (Validator v : vals){
-	 *   boolean enabled = false;
-	 *   if (v.getValidatorClassname().equals("org.eclipse.jst.jsp.core.internal.validation.JSPBatchValidator"))enabled = true;
-	 *     v.setBuildValidation(enabled);
-	 *     v.setManualValidation(enabled);
-	 *  }
-	 * vf.saveValidators(vals);
-	 * </pre>
-	 * </p> 
-	 * 
-	 * @param validators The validators that you are saving.
-	 * 
-	 * @throws InvocationTargetException
-	 */
-	public void saveValidators(Validator[] validators) throws InvocationTargetException{
-		
-		
-		ValPrefManagerGlobal gp = ValPrefManagerGlobal.getDefault();
-		gp.saveAsPrefs(validators);	
-		
-		GlobalConfiguration gc = ConfigurationManager.getManager().getGlobalConfiguration();
-		
-		List<ValidatorMetaData> manual = new LinkedList<ValidatorMetaData>();
-		List<ValidatorMetaData> build = new LinkedList<ValidatorMetaData>();
-		for (Validator v : validators){
-			V1 v1 = v.asV1Validator();
-			if (v1 == null)continue;
-			if (v1.isManualValidation())manual.add(v1.getVmd());
-			if (v1.isBuildValidation())build.add(v1.getVmd());
-		}
-		
-		ValidatorMetaData[] array = new ValidatorMetaData[manual.size()];
-		gc.setEnabledManualValidators(manual.toArray(array));
-		
-		array = new ValidatorMetaData[build.size()];
-		gc.setEnabledBuildValidators(build.toArray(array));
-
-		gc.passivate();
-		gc.store();		
-	}
-
-	/**
-	 * Suspends, or undoes the suspension of, validation on all projects in the
-	 * workbench. If "suspend" is true then validation is suspended and if it's
-	 * "false" then validation is not suspended. The value of this variable is
-	 * not persisted.
-	 * <p>
-	 * Be <b>very careful</b> when you use this method! Turn validation back on in a
-	 * finally block because if the code which suspended validation crashes, the
-	 * user has no way to reset the suspension. The user will have to shut down
-	 * and restart the workbench to get validation to work again.
-	 * </p>
-	 */
-	public void suspendAllValidation(boolean suspend) {
-		_suspendAllValidation = suspend;
-	}
-
-	/**
-	 * Return true if "suspend all" is enabled, false otherwise.
-	 */
-	public boolean isSuspended() {
-		return _suspendAllValidation;
-	}
-
-	/**
-	 * Returns true if validation will not run on the project because it's been suspended. This
-	 * method checks only the suspension status; if validation cannot run for some other reason (for
-	 * example, there are no enabled validators), yet the IProject is not suspended, this method
-	 * will return true even though validation will not run.
-	 */
-	public boolean isSuspended(IProject project) {
-		if (_suspendAllValidation)return true;
-		if (project == null)return false;
-		return getSuspendedProjects().contains(project);
-	}
-
-	/**
-	 * This method should be called by any code that is preparing to suspend validation on a
-	 * project. Rather than calling isSuspended(IProject), which will also return true if all validation
-	 * has been suspended. 
-	 * 
-	 * @param project the project that is being tested
-	 * @return boolean true if the project has been suspended
-	 */
-	public boolean isProjectSuspended(IProject project) {
-		if (project == null)return false;
-		return getSuspendedProjects().contains(project);
-	}
-	
-	/**
-	 * Validate the projects. Exactly one of isManual or isBuild needs to be true.
-	 * 
-	 * @param projects
-	 *            The projects to be validated.
-	 * 
-	 * @param isManual
-	 *            Is this being done as part of a manual validation? i.e. did
-	 *            the user select the Validate menu item?
-	 * 
-	 * @param isBuild
-	 *            Is this being done as part of a build?
-	 * 
-	 * @param monitor
-	 * 
-	 * @return the validation result which is the combined result for all the
-	 *         resources that were validated.
-	 */
-	public ValidationResults validate(IProject[] projects, final boolean isManual, final boolean isBuild,
-		IProgressMonitor monitor) throws CoreException{
-		ValType type = ValType.Build;
-		if (isManual)type = ValType.Manual;
-		ValOperation vo = ValidationRunner.validate(createMap(projects), type, monitor, true);
-		return vo.getResults();
-	}
-
-	/**
-	 * Validate a specific file resource.
-	 * 
-	 * @param file
-	 *            The file to be validated.
-	 * @param monitor
-	 *            Progress monitor.
-	 * @return the result of validating the file.
-	 */
-  public ValidationResults validate(IFile file, IProgressMonitor monitor) throws CoreException{
-      ValOperation vo = ValidationRunner.validate(file, ValType.Manual, monitor, true);
-      return vo.getResults();
-    }
-	  
-	/**
-	 * Answer all the resources in the projects as a map.
-	 * @param projects
-	 */
-	private Map<IProject, Set<IResource>> createMap(IProject[] projects) throws CoreException{
-		final HashMap<IProject, Set<IResource>> map = new HashMap<IProject, Set<IResource>>(1000);
-			
-		for (IProject p : projects){
-			Set<IResource> set = new HashSet<IResource>(1000);
-			ResourceAdder ra = new ResourceAdder(set);
-			p.accept(ra);
-			map.put(p, set);
-		}
-		return map;
-	}
-	
-	public static class ResourceAdder implements IResourceVisitor {
-		
-		private Set<IResource> _set;
-		
-		/**
-		 * A class that knows how to add resources to a set.
-		 * @param set the set where the resources are added.
-		 */
-		public ResourceAdder(Set<IResource> set){
-			_set = set;
-		}
-
-		public boolean visit(IResource resource) throws CoreException {
-			// [225839] the older validators only expect files and folders.
-			int type = resource.getType();
-			if (type == IResource.FILE || type == IResource.FOLDER)_set.add(resource);
-			return true;
-		}
-		
-	}
-	
-	/**
-	 * Store the singleton for the ValidationFramework. This approach is used to avoid having to synchronize the
-	 * ValidationFramework.getDefault() method.
-	 * 
-	 * @author karasiuk
-	 *
-	 */
-	private static class Singleton {
-		static ValidationFramework vf = new ValidationFramework();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationResult.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationResult.java
deleted file mode 100644
index c1714e1..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationResult.java
+++ /dev/null
@@ -1,385 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import java.util.LinkedList;
-import java.util.List;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.validation.internal.core.ValidationException;
-import org.eclipse.wst.validation.internal.provisional.core.IReporter;
-
-/**
- * The result of running a validate operation. Validators create and return this objects as part of
- * performing their validation.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @author karasiuk
- *
- */
-public final class ValidationResult {
-	
-	private final List<ValidatorMessage> _messages = new LinkedList<ValidatorMessage>();
-	
-	private final static ValidatorMessage[] _noMessages = new ValidatorMessage[0];
-	
-	private boolean		_canceled;
-	
-	/** 
-	 * The resources that the validated resource depends on. This can be left null.
-	 * For example, an XML file may depend on a XSD in order to know if it is valid or not.
-	 * It would pass back the XSD file. 
-	 */
-	private IResource[]	_dependsOn;
-	
-	/** 
-	 * The objects that you validated as a side effect of validating this object. The framework will not
-	 * call you with any of these objects (in this validation run). This can be left null.
-	 */
-	private IResource[] _validated;
-	
-	private int			_severityError;
-	private int			_severityWarning;
-	private int			_severityInfo;
-	
-	private IProject	_suspendValidation;
-	
-	/** A count of the number of resources that were validated. */
-	private int			_numberOfValidatedResources = 1;
-	
-	private ReporterHelper	_reporter;
-	private ValidationException	_validationException;
-	
-	/**
-	 * This is an optional method, that a validator can use to return error
-	 * messages. The validation framework converts these into IMarkers.
-	 * <p>
-	 * The scenario that motivated this method, is when a validator is used both
-	 * for <b>as you type</b> validation and <b>build</b> validation. When
-	 * called in as you type mode, the validator doesn't want to directly create IMarkers,
-	 * because the resource hasn't been saved yet. It needs to return something
-	 * other than an IMarker. But when called in build mode, it does ultimately
-	 * want IMarkers. By returning ValidatorMessages, it only needs to return
-	 * one type of message, and those messages can be either be directly used by
-	 * the caller, or automatically converted into IMarkers by the validation
-	 * framework.
-	 * </p>
-	 * <p>
-	 * To make matters even more complicated there is a third way to return
-	 * messages. To make it easier for old validators to port to the new
-	 * framework, they can continue to use an IReporter. If a validator calls
-	 * the getReporter() method then it is assumed by the framework that that is
-	 * the approach that they have chosen.
-	 * </p>
-	 * 
-	 * @see #getReporter(IProgressMonitor)
-	 * 
-	 * @param message
-	 * 		A validation message.
-	 */
-	public void add(ValidatorMessage message){
-		_messages.add(message);
-	}
-	
-	/**
-	 * Answer an IReporter for handing error messages.
-	 * <p>
-	 * This is a transition method, to help old validators port to the new validation framework. If this method
-	 * is called it is assumed by the framework, that this IReporter will be used as the only way of passing messages
-	 * back to the framework.
-	 * 
-	 * @see #add(ValidatorMessage)
-	 * @param monitor
-	 */
-	public IReporter getReporter(IProgressMonitor monitor){
-		if (_reporter == null)_reporter = new ReporterHelper(monitor);
-		return _reporter;
-	}
-	
-	ReporterHelper getReporterHelper(){
-		return _reporter;
-	}
-	
-	/**
-	 * Merge the message counts and messages from an individual validator into this result.
-	 * @param result it can be null, in which case it is ignored.
-	 */
-	public void mergeResults(ValidationResult result){
-		if (result == null)return;
-		
-		ValidatorMessage[] msgs = result.getMessages();
-		for (ValidatorMessage m : msgs){
-			add(m);
-			int severity = m.getAttribute(IMarker.SEVERITY, 0);
-			switch (severity){
-			case IMarker.SEVERITY_ERROR:
-				incrementError(1);
-				break;
-			case IMarker.SEVERITY_WARNING:
-				incrementWarning(1);
-				break;
-			case IMarker.SEVERITY_INFO:
-				incrementInfo(1);
-				break;
-					
-			}
-		}
-		
-		incrementError(result.getSeverityError());
-		incrementWarning(result.getSeverityWarning());
-		incrementInfo(result.getSeverityInfo());
-		
-		_numberOfValidatedResources += result.getNumberOfValidatedResources();
-		
-	}
-
-	/**
-	 * Answer the resources that the validated resource depends on.
-	 */
-	public IResource[] getDependsOn() {
-		return _dependsOn;
-	}
-	
-	/**
-	 * Answer any validation messages that were added by the validator. 
-	 * @return an array is returned even if there are no messages.
-	 */
-	public ValidatorMessage[] getMessages(){
-		if (_messages == null)return _noMessages;
-		ValidatorMessage[] msgs = new ValidatorMessage[_messages.size()];
-		_messages.toArray(msgs);
-		return msgs;
-	}
-		
-	/**
-	 * Answer a copy of any validation messages that were added by the validator. The array is a new
-	 * array, and each message is a copy. 
-	 * @return an array is returned even if there are no messages.
-	 */
-	public synchronized ValidatorMessage[] getMessagesAsCopy(){
-		if (_messages == null)return _noMessages;
-		ValidatorMessage[] msgs = new ValidatorMessage[_messages.size()];
-		int i = 0;
-		for (ValidatorMessage msg : _messages)msgs[i++] = msg.asCopy();
-		return msgs;
-	}
-
-	/**
-	 * Update the resources that the validated resource depends on. This can be
-	 * left null. For example, a XML file may depend on a XSD file in order to
-	 * know if it is valid or not. It would pass back that XSD file.
-	 * 
-	 * @param dependsOn
-	 * 		If this is null then the dependency information is not updated. To
-	 * 		remove the dependency information, an empty array needs to be
-	 * 		supplied. A non null parameter, <b>replaces</b> all the dependency
-	 * 		information for this resource, for this validator.
-	 */
-	public void setDependsOn(IResource[] dependsOn) {
-		_dependsOn = dependsOn;
-	}
-	
-	/**
-	 * @return All the resources that were validated as a side-effect of
-	 * 	validating the main resource, or null if none were.
-	 */
-	public IResource[] getValidated() {
-		return _validated;
-	}
-	
-	/**
-	 * Indicate that additional resources have been validated as part of this
-	 * validate operation. Sometimes in the course of performing a validation on
-	 * one resource it is necessary to validate other resources as well. This
-	 * method is used to let the framework know about these additional validated
-	 * resources, to possibly save them being validated redundantly.
-	 * 
-	 * @param validated
-	 * 		Any additional resources that were validated.
-	 */
-	public void setValidated(IResource[] validated) {
-		_validated = validated;
-	}
-
-	/**
-	 * Answer the number of error messages that were generated as part of this validation operation.
-	 */
-	public int getSeverityError() {
-		return _severityError;
-	}
-
-	/**
-	 * Set the number of error messages that were generated as part of this validation operation.
-	 * <p>
-	 * Messages added through the add(ValidationMessage) method should not be included here, as this
-	 * information will be determined from the ValidationMessage.
-	 * </p>
-	 */
-	public void setSeverityError(int severityError) {
-		_severityError = severityError;
-	}
-	
-
-	/**
-	 * Increment the number of error messages that were generated as part of this validation operation.
-	 * <p>
-	 * Messages added through the add(ValidationMessage) method should not be included here, as this
-	 * information will be determined from the ValidationMessage.
-	 * </p>
-	 * 
-	 * @return the current number of errors.
-	 */
-	public int incrementError(int errors){
-		_severityError += errors;
-		return _severityError;
-	}
-
-	/**
-	 * Answer the number of warning messages that were generated as part of this validation operation.
-	 */
-	public int getSeverityWarning() {
-		return _severityWarning;
-	}
-
-	/**
-	 * Set the number of warning messages that were generated as part of this validation operation.
-	 * <p>
-	 * Messages added through the add(ValidationMessage) method should not be included here, as this
-	 * information will be determined from the ValidationMessage.
-	 * </p>
-	 */
-	public void setSeverityWarning(int severityWarning) {
-		_severityWarning = severityWarning;
-	}
-
-	/**
-	 * Increment the number of warning messages that were generated as part of this validation operation.
-	 * <p>
-	 * Messages added through the add(ValidationMessage) method should not be included here, as this
-	 * information will be determined from the ValidationMessage.
-	 * </p>
-	 * 
-	 * @return the current number of warnings.
-	 */
-	public int incrementWarning(int warnings){
-		_severityWarning += warnings;
-		return _severityWarning;
-	}
-
-	/**
-	 * Answer the number of informational messages that were generated as part of this validation operation.
-	 */
-	public int getSeverityInfo() {
-		return _severityInfo;
-	}
-
-	/**
-	 * Set the number of informational messages that were generated as part of this validation operation.
-	 * <p>
-	 * Messages added through the add(ValidationMessage) method should not be included here, as this
-	 * information will be determined from the ValidationMessage.
-	 * </p>
-	 */
-	public void setSeverityInfo(int severityInfo) {
-		_severityInfo = severityInfo;
-	}
-
-	/**
-	 * Increment the number of informational messages that were generated as part of this validation operation.
-	 * <p>
-	 * Messages added through the add(ValidationMessage) method should not be included here, as this
-	 * information will be determined from the ValidationMessage.
-	 * </p>
-	 * 
-	 * @return the current number of informational message.
-	 */
-	public int incrementInfo(int info){
-		_severityInfo += info;
-		return _severityInfo;
-	}
-
-	/**
-	 * Was the operation canceled before it completed? For example if the validation is being run through the
-	 * user interface, the end user can cancel the operation through the progress monitor.
-	 * 
-	 * @return true if the operation was canceled
-	 */
-	public boolean isCanceled() {
-		return _canceled;
-	}
-
-	/**
-	 * Indicate if the operation was canceled.
-	 * 
-	 * @param canceled
-	 * 		Set to true if it was canceled and false if it was not canceled.
-	 */
-	public void setCanceled(boolean canceled) {
-		_canceled = canceled;
-	}
-
-	/**
-	 * Answer the number of resources that have been validated.
-	 */
-	public int getNumberOfValidatedResources() {
-		if (_validated == null)return _numberOfValidatedResources;
-		return _numberOfValidatedResources + _validated.length;
-	}
-
-	/**
-	 * If the validation ended with an exception, answer it.
-	 * @return null if the validator did not finish with an exception.
-	 */
-	public ValidationException getValidationException() {
-		return _validationException;
-	}
-
-	/**
-	 * If the validation failed with an exception, it can be recorded here.
-	 * <p>
-	 * This method is provided for old validators to ease their transition to the new framework.
-	 * </p>
-	 * @param validationException
-	 */
-	public void setValidationException(ValidationException validationException) {
-		_validationException = validationException;
-	}
-	
-	/**
-	 * Answer the project that the validator would like to have suspended.
-	 * 
-	 * @return the project to suspend or null. The normal result is null, which means that
-	 * the validator wishes to receive normal validation requests. 
-	 */
-	public IProject getSuspendValidation(){
-		return _suspendValidation;
-	}
-
-	/**
-	 * Calling this method will inform the framework, that this validator does not wish to be
-	 * called again for any resources in this project, for the duration of this validation operation.
-	 * <p>
-	 * Some validators may have a rich set of triggers, but once they have been invoked once,
-	 * do not need to be invoked again during the course of the current validation.
-	 * </p>
-	 * @param project The project that this validator no longer wants to be notified on.
-	 */
-	public void setSuspendValidation(IProject project) {
-		_suspendValidation = project;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationResults.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationResults.java
deleted file mode 100644
index ba947f8..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationResults.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-
-/**
- * The combined results of validating multiple resources.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @author karasiuk
- *
- */
-public final class ValidationResults {
-	
-	private final ValidatorMessage[] _messages;
-	private final int 	_error;
-	private final int	_warn;
-	private final int	_info;
-	
-	public ValidationResults(ValidationResult result){
-		if (result == null){
-			_messages = new ValidatorMessage[0];
-			_error = 0;
-			_warn = 0;
-			_info = 0;
-		}
-		else {
-			_messages = result.getMessagesAsCopy();
-			_error = result.getSeverityError();
-			_warn = result.getSeverityWarning();
-			_info = result.getSeverityInfo();
-		}
-	}
-	
-	/**
-	 * Answer any validation messages that were added by the validation operation.
-	 * @return an array is returned even if there are no messages.
-	 */
-	public ValidatorMessage[] getMessages(){
-		return _messages;
-	}
-
-	/**
-	 * Answer the number of error messages that were generated as part of this validation operation.
-	 */
-	public int getSeverityError() {
-		return _error;
-	}
-
-	/**
-	 * Answer the number of informational messages that were generated as part of this validation operation.
-	 */
-	public int getSeverityInfo() {
-		return _info;
-	}
-	
-	/**
-	 * Answer the number of warning messages that were generated as part of this validation operation.
-	 */
-	public int getSeverityWarning() {
-		return _warn;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationState.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationState.java
deleted file mode 100644
index 8097de4..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidationState.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * Keep track of arbitrary validation data, during the course of a validation.
- * <p>
- * To enable more efficient caching, the validation framework, allows individual validators to cache
- * arbitrary data during the validation process. Use of this object is completely optional.
- * <p>
- * Since some validators wish to share data with other validators, any validator can see the state data for
- * any other validator, since the id is simply the validator's extension id.
- * <p>
- * This object is freed at the end of the validation process.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @noextend
- * @author karasiuk
- *
- */
-public final class ValidationState {
-	
-	/**
-	 * This is a special id.
-	 * <p>
-	 * If a resource that is depended on by others is changed, then the
-	 * dependent resources are validated. The depended on resource, which is the
-	 * resource that actually changed, is placed into the ValidationState using
-	 * this id.
-	 * </p>
-	 * @deprecated This approach is not thread safe, the longer form of the AbstractValidator validate method should be used instead.
-	 * @see AbstractValidator#validate(ValidationEvent, ValidationState, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public static final String TriggerResource = ValidationPlugin.PLUGIN_ID + ".Trigger"; //$NON-NLS-1$
-
-	// I can't use a ConncurrentHashMap because some of the clients store nulls.
-	private final Map<String, Object> _map = new HashMap<String, Object>(50);
-	
-	public ValidationState(){
-	}
-	
-	/**
-	 * Save some state information.
-	 * 
-	 * @param id
-	 * 		By convention this is the fully qualified validator extension id.
-	 * 		For example: org.eclipse.wst.html.ui.HTMLValidator
-	 * 
-	 * @param value
-	 * 		Any arbitrary data that the validator might find useful. The
-	 * 		validation framework doesn't do anything with this object except
-	 * 		pass it along during the validation process.
-	 */
-	public synchronized void put(String id, Object value){
-		_map.put(id, value);
-	}
-	
-	/**
-	 * Answer the state data for the given validator.
-	 * 
-	 * @param id
-	 * 		By convention this is the fully qualified validator extension point
-	 * 		id. For example org.eclipse.wst.html.ui.HTMLValidator
-	 * 
-	 * @return any arbitrary data that the validator might find useful,
-	 * 	including null.
-	 */
-	public synchronized Object get(String id){
-		return _map.get(id);
-	}
-
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/Validator.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/Validator.java
deleted file mode 100644
index 2adb3bb..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/Validator.java
+++ /dev/null
@@ -1,1353 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.atomic.AtomicBoolean;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IContributor;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.validation.internal.ConfigurationConstants;
-import org.eclipse.wst.validation.internal.ConfigurationManager;
-import org.eclipse.wst.validation.internal.ContentTypeWrapper;
-import org.eclipse.wst.validation.internal.ExtensionConstants;
-import org.eclipse.wst.validation.internal.MarkerManager;
-import org.eclipse.wst.validation.internal.Misc;
-import org.eclipse.wst.validation.internal.NullValidator;
-import org.eclipse.wst.validation.internal.SummaryReporter;
-import org.eclipse.wst.validation.internal.Tracing;
-import org.eclipse.wst.validation.internal.ValManager;
-import org.eclipse.wst.validation.internal.ValMessages;
-import org.eclipse.wst.validation.internal.ValOperation;
-import org.eclipse.wst.validation.internal.ValPrefManagerGlobal;
-import org.eclipse.wst.validation.internal.ValPrefManagerProject;
-import org.eclipse.wst.validation.internal.ValType;
-import org.eclipse.wst.validation.internal.ValidationConfiguration;
-import org.eclipse.wst.validation.internal.ValidatorExtensionReader;
-import org.eclipse.wst.validation.internal.ValidatorMetaData;
-import org.eclipse.wst.validation.internal.core.ValidatorLauncher;
-import org.eclipse.wst.validation.internal.delegates.ValidatorDelegateDescriptor;
-import org.eclipse.wst.validation.internal.delegates.ValidatorDelegatesRegistry;
-import org.eclipse.wst.validation.internal.model.FilterGroup;
-import org.eclipse.wst.validation.internal.operations.IWorkbenchContext;
-import org.eclipse.wst.validation.internal.operations.WorkbenchContext;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-
-/**
- * Represents a validator. This gets instantiated through one of the validator extension points.
- * <p>
- * <b>This class is not API</b>.
- * </p>
- * 
- * @author karasiuk
- *
- */
-public abstract class Validator implements Comparable<Validator> {
-	// Remember if you add a new instance variable, make sure that you update the copy and become methods
-	
-	/**
-	 * The level of configuration for the validator.
-	 * <ul>
-	 * <li>Extension - Defined by an extension point.</li>
-	 * <li>Global - Defined by a global preference.</li>
-	 * <li>Project - Defined by a project property.</li>
-	 * </ul>
-	 */
-	public enum Level {Extension, Global, Project};
-	
-	protected boolean	_buildValidation = true;
-	
-	/** If this is a delegating validator, then this field holds the validator that will be delegated to. */
-	private String 		_delegatingId;
-	
-	/** 
-	 * If this validator is also used to control an ISource validator, the id of the ISource validator is
-	 * registered here.
-	 */
-	private String		_sourceId;
-	
-	protected boolean 	_manualValidation = true;
-	
-	/** An optional customized marker id for this validator. */
-	private String 		_markerId;
-	
-	/** 
-	 * Version of the filter definition. By increasing this number the framework can know that a plug-in has 
-	 * changed it's filters.
-	 */
-	private int			_version = 1;
-	
-	/** Map simple message id's to message settings. */
-	private Map<String, MessageSeveritySetting> _messageSettings;
-	
-	/** The project that you are defined in. This can be null which means that you are a global validator. */
-	protected IProject	_project;
-		
-	/** How many times has a global field in this validator been changed since it was created (or copied)? */
-	protected transient int _changeCountGlobal;
-	
-	/** How many times has a message field in this validator been changed since it was created (or copied)? */
-	protected transient int _changeCountMessages;
-	
-	/** Has the validator been migrated from an earlier version in this session, but not yet saved? */
-	private boolean _migrated;
-	
-	public Validator(IProject project){
-		_project = project;
-	}
-		
-	void setMigrated(boolean migrated){
-		_migrated = migrated;
-	}
-	
-	/**
-	 * Create a new validator based on a abstract validator.
-	 * 
-	 * @param validator
-	 *            The validator that is being wrapped.
-	 * 
-	 * @param project
-	 *            The project that you are defined in. This can be null which
-	 *            means that you are a global validator.
-	 */
-	public static Validator create(IConfigurationElement validator, IProject project) {
-		V2 v2 = new V2(validator, project);
-		return v2;
-	}
-	
-	/**
-	 * Create a new validator based on validator meta data.
-	 * 
-	 * @param project
-	 *            The project that you are defined in. This can be null which
-	 *            means that you are a global validator.
-	 */
-	public static Validator create(ValidatorMetaData vmd, ValidationConfiguration config, IProject project){
-		V1 v1 = new V1(vmd, config, project);
-		return v1;
-	}
-	
-	/**
-	 * If you are a version 1 validator, answer yourself as one, otherwise answer null.
-	 */
-	public V1 asV1Validator(){
-		return null;
-	}
-	
-	/**
-	 * If you are a version 2 validator, answer yourself as one, otherwise answer null.
-	 */
-	public V2 asV2Validator() {
-		return null;
-	}
-	
-	/**
-	 * The project is being cleaned, this method gives the validator a chance to do any special cleanup.
-	 * The default is to do nothing.
-	 * 
-	 * @param project the project being built.
-	 * @param monitor the monitor that should be used for reporting progress if the clean takes a long time.
-	 */
-	public void clean(IProject project, ValOperation operation, IProgressMonitor monitor){
-	}	
-	
-	/**
-	 * Compare yourself based on Validator name.
-	 */
-	public int compareTo(Validator validator) {
-		return getName().compareTo(validator.getName());			
-	}
-	
-	/** Answer a deep copy of yourself. */
-	public Validator copy(){
-		return copy(false);
-	}
-	
-	public abstract Validator copy(boolean includeChangeCounts);
-	
-	/**
-	 * Update your direct, non transient fields from the fields in v.
-	 */
-	protected void copyLocal(Validator v, boolean includeChangeCounts){
-		_buildValidation = v._buildValidation;
-		_delegatingId = v._delegatingId;
-		_manualValidation = v._manualValidation;
-		_markerId = v._markerId;
-		_messageSettings = v._messageSettings;
-		_sourceId = v._sourceId;
-		_version = v._version;
-		_migrated = v._migrated;
-		
-		if (includeChangeCounts){
-			_changeCountGlobal = v._changeCountGlobal;
-			_changeCountMessages = v._changeCountMessages;
-		}
-	}
-	
-	/**
-	 * Should the validation framework first clear the markers that this
-	 * validator has placed on this resource? This method can be overridden by
-	 * validator implementors to provide a validator specific behavior.
-	 * 
-	 * @param event
-	 *            The validation event that triggered the validation.
-	 * @return true if the validation framework should first clear all the
-	 *         markers that this validator produced. This is the default
-	 *         behavior. Return false to leave the markers unchanged. It then
-	 *         becomes the responsibility of the validator to manage it's own
-	 *         markers for this resource, for this validation event.
-	 */
-	public boolean shouldClearMarkers(ValidationEvent event){
-		return true;
-	}
-	
-	/**
-	 * Answer true if this validator, based on it's filters, should validate
-	 * this resource. This method does not check to see if global validation or
-	 * project validation has been suspended or not.
-	 * 
-	 * @param resource
-	 *            The resource to be checked.
-	 * @param isManual
-	 *            If true then this validator must also be enabled for manual
-	 *            validation.
-	 * @param isBuild
-	 *            If true then this validator must also be enabled for builder
-	 *            based validation.
-	 * 
-	 * @return true if the resource should be validated.
-	 */
-	public boolean shouldValidate(IResource resource, boolean isManual, boolean isBuild){
-		return shouldValidate(resource, isManual, isBuild, new ContentTypeWrapper());
-	}
-	
-	/**
-	 * Answer true if this validator, based on it's filters, should validate
-	 * this resource. This method does not check to see if global validation or
-	 * project validation has been suspended or not.
-	 * 
-	 * @param resource
-	 *            The resource to be checked.
-	 * @param isManual
-	 *            If true then this validator must also be enabled for manual
-	 *            validation.
-	 * @param isBuild
-	 *            If true then this validator must also be enabled for builder
-	 *            based validation.
-	 * @param contentTypeWrapper 
-	 *            For repeated calls on the same resource, it is more efficient
-	 *            to remember the content type.
-	 * @return true if the resource should be validated.
-	 * @see Friend#shouldValidate(Validator, IResource, boolean, boolean, ContentTypeWrapper)
-	 */
-	boolean shouldValidate(IResource resource, boolean isManual, boolean isBuild, 
-		ContentTypeWrapper contentTypeWrapper){
-		
-		if (isManual && !_manualValidation)return false;
-		if (isBuild && !_buildValidation)return false;
-		
-		return shouldValidate(resource, contentTypeWrapper);
-	}
-	
-	/**
-	 * Answer true if this validator, based on it's filters, should validate
-	 * this resource. This method does not check to see if global validation or
-	 * project validation has been suspended or not.
-	 * 
-	 * @param resource
-	 *            The resource to be checked.
-	 * @param valType
-	 *            The context to use when performing the check.
-	 * 
-	 * @return true if the resource should be validated.
-	 */
-	public boolean shouldValidate(IResource resource, ValType valType){
-		return shouldValidate(resource, valType, new ContentTypeWrapper());
-	}
-	
-	/**
-	 * Answer true if this validator, based on it's filters, should validate
-	 * this resource. This method does not check to see if global validation or
-	 * project validation has been suspended or not.
-	 * 
-	 * @param resource
-	 *            The resource to be checked.
-	 * @param valType
-	 *            The context to use when performing the check.
-	 * @param contentTypeWrapper
-	 *            For repeated calls on the same resource, it is more efficient
-	 *            to remember the content type.
-	 * 
-	 * @return true if the resource should be validated.
-	 * 
-	 * @see Friend#shouldValidate(Validator, IResource, ValType, ContentTypeWrapper)
-	 */
-	boolean shouldValidate(IResource resource, ValType valType, ContentTypeWrapper contentTypeWrapper){
-		if (Tracing.matchesExtraDetail(getId())){
-			Tracing.log("Validator-01: checking if " + getId() + " should validate " + resource); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		if (valType == ValType.Manual && !_manualValidation)return false;
-		if (valType == ValType.Build && !_buildValidation)return false;
-		
-		boolean result = shouldValidate(resource, contentTypeWrapper);
-		if (Tracing.matchesExtraDetail(getId())){
-			Tracing.log("Validator-02: result = " + result); //$NON-NLS-1$
-		}
-		
-		return result;
-	}
-	
-	/**
-	 * Answer true if this validator, based on it's filters, should validate this project. This method
-	 * does not check to see if global validation or project validation has been suspended or not.
-	 * 
-	 * @param project the project to be checked
-	 * @param type The type of validation request
-	 * 
-	 * @return true if the project should be validated.
-	 */
-	public boolean shouldValidateProject(IProject project, ValType type){
-		return shouldValidateProject(project, type == ValType.Manual, type == ValType.Build);
-	}
-	
-	/**
-	 * Answer true if this validator, based on it's filters, should validate this project. This method
-	 * does not check to see if global validation or project validation has been suspended or not.
-	 * 
-	 * @param project the project to be checked
-	 * @param isManual if true then this validator must also be enabled for manual validation.
-	 * @param isBuild if true then this validator must also be enabled for builder based validation.
-	 * 
-	 * @return true if the project should be validated.
-	 */
-	public boolean shouldValidateProject(IProject project, boolean isManual, boolean isBuild){
-		if (Tracing.matchesExtraDetail(getId())){
-			Tracing.log("Validator-03: checking if " + getId() + " should validate " + project); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		if (isManual && !_manualValidation)return false;
-		if (isBuild && !_buildValidation)return false;
-		if (project == null || !project.isOpen())return false;
-		boolean result = shouldValidateProject(project);
-		if (Tracing.matchesExtraDetail(getId())){
-			Tracing.log("Validator-04: result " + result); //$NON-NLS-1$
-		}
-		return result;
-	}
-	
-	/**
-	 * Validate the resource.
-	 * 
-	 * @param resource
-	 *            The resource to be validated.
-	 * @param kind
-	 *            The kind of resource change, see IResourceDelta for values.
-	 * @param operation
-	 *            The operation that this validation is running under. This can
-	 *            be null.
-	 * @param monitor
-	 *            A way to report progress. This can be null.
-	 * 
-	 * @return the result of doing the validation, it can be, but usually isn't
-	 *         null.
-	 */
-	public abstract ValidationResult validate(IResource resource, int kind, ValOperation operation, IProgressMonitor monitor);
-	
-	/**
-	 * Validate the resource.
-	 * 
-	 * @param resource
-	 *            The resource to be validated.
-	 * @param kind
-	 *            The kind of resource change, see IResourceDelta for values.
-	 * @param operation
-	 *            The operation that this validation is running under. This can
-	 *            be null.
-	 * @param monitor
-	 *            A way to report progress. This can be null.
-	 * @param event
-	 *            An event that describes in more detail what should be
-	 *            validated and why it should be validated. This can be null.
-	 * 
-	 * @return the result of doing the validation, it can be, but usually isn't
-	 *         null.
-	 */
-	public ValidationResult validate(IResource resource, int kind, ValOperation operation, IProgressMonitor monitor, ValidationEvent event){
-		// The reason that the resource and kind are still specified, is that I didn't want to remove a public method in the service
-		// stream. 
-		return validate(resource, kind, operation, monitor);		
-	}
-
-	/**
-	 * This method will be called before any validation takes place. It allows validators to perform any
-	 * initialization that they might need. 
-	 *  
-	 * @param project the project that is being validated. For the very first call in the validation phase,
-	 * this will be null. That is the signal to the validator that a top level validation is starting.
-	 * Subsequently, the project will be set, as each of the individual projects are validated.
-	 * 
-	 * @param state a way to pass arbitrary, validator specific, data from one invocation of a validator to
-	 * the next, during the validation phase.
-	 * 
-	 * @param monitor the monitor that should be used for reporting progress if the clean takes a long time.
-	 */
-	public void validationStarting(IProject project, ValidationState state, IProgressMonitor monitor){
-		// subclasses need to override this, if they wish to let their validators know about this event
-	}
-	
-	/**
-	 * This method will be called when validation is complete. It allows validators to perform any
-	 * cleanup that they might need to do.  
-	 *  
-	 * @param project the project that was validated. The very last call in the validation will set this to 
-	 * null so that the validator knows that all the projects have now been validated.
-	 * 
-	 * @param state a way to pass arbitrary, validator specific, data from one invocation of a validator to
-	 * the next, during the validation phase.
-	 * 
-	 * @param monitor the monitor that should be used for reporting progress if the clean takes a long time.
-	 */
-	public void validationFinishing(IProject project, ValidationState state, IProgressMonitor monitor){		
-		// subclasses need to override this, if they wish to let their validators know about this event
-	}
-	
-	void add(MessageSeveritySetting message){
-		// I can't use getMessageSettings() here, as that will put us into an infinite loop
-		if (_messageSettings == null){
-			_messageSettings = new HashMap<String, MessageSeveritySetting>(10);
-		}
-		_messageSettings.put(message.getId(), message);
-		bumpChangeCountMessages();
-	}
-	
-	public IValidator asIValidator(){
-		return null;
-	}
-	
-	protected abstract boolean shouldValidate(IResource resource, ContentTypeWrapper contentTypeWrapper);
-	protected abstract boolean shouldValidateProject(IProject project);
-			
-	public abstract String getId();
-	
-	public MessageSeveritySetting getMessage(String id){
-		return getMessageSettings().get(id);
-	}
-	
-	/**
-	 * Answer all the message settings that this validator has defined.
-	 * 
-	 * @return an empty map if the validator did not define any message settings.
-	 */
-	public Map<String, MessageSeveritySetting> getMessageSettings(){
-		Map<String, MessageSeveritySetting> settings = _messageSettings;
-		if (settings == null){
-			settings = new HashMap<String, MessageSeveritySetting>(10);
-			init(settings);
-			if (ValManager.getDefault().mustUseGlobalValidators(getProject())){
-				ValPrefManagerGlobal gp = ValPrefManagerGlobal.getDefault();
-				gp.loadMessages(this, settings);
-			}
-			else {
-				ValPrefManagerProject vp = new ValPrefManagerProject(getProject());
-				vp.loadMessages(this, settings);				
-			}
-			_messageSettings = settings;
-		}
-		return settings;
-	}
-	
-	/**
-	 * Answer a hash code for the configurable fields so that we can quickly determine if two
-	 * validators are the same.
-	 */
-	public int hashCodeForConfig(){
-		int h = 0;
-		if (_buildValidation)h += 101;
-		if (_delegatingId != null)h += _delegatingId.hashCode();
-		if (_manualValidation)h += 201;
-		if (_messageSettings != null){
-			for (MessageSeveritySetting ms : _messageSettings.values())h += ms.hashCode();
-		}
-		if (_sourceId != null)h += _sourceId.hashCode();
-		h += _version;
-		return h;
-	}
-	
-	private void init(Map<String, MessageSeveritySetting> settings) {
-		for (MessageSeveritySetting ms : ValidatorExtensionReader.getDefault().addMessages(this)){
-			settings.put(ms.getId(), ms);
-		}		
-	}
-
-	public abstract String getName();
-	
-	/**
-	 * Answer the project that you were enabled on. 
-	 * 
-	 * @return null if you are a global (i.e. workspace level) validator.
-	 */
-	public IProject getProject(){
-		return _project;
-	}
-		
-	/**
-	 * Answer the name of the class that implements the validator.
-	 */
-	public abstract String getValidatorClassname();
-	
-	/**
-	 * Is this validator currently enabled for validations that are triggered manually? 
-	 */
-	public boolean isManualValidation() {
-		return _manualValidation;
-	}
-
-	/**
-	 * Set whether this validator should be triggered as part of a manual validation.
-	 * 
-	 * @param manualValidation
-	 * @return true if the setting changed.
-	 */
-	public boolean setManualValidation(boolean manualValidation) {
-		return setManualValidation2(manualValidation);
-	}
-	
-	protected final boolean setManualValidation2(boolean manualValidation) {
-		boolean changed = false;
-		if (_manualValidation != manualValidation){
-			bumpChangeCountGlobal();
-			changed = true;
-			_manualValidation = manualValidation;
-		}
-		return changed;
-	}
-
-	/**
-	 * Is this validator currently enabled for validations that are triggered by builds? 
-	 */
-	public boolean isBuildValidation() {
-		return _buildValidation;
-	}
-	
-	/**
-	 * Has the validator changed since it was last created or copied? Or was it migrated from an earlier version. 
-	 */
-	public boolean isChanged(){
-		if (_changeCountGlobal > 0 || _changeCountMessages > 0 || _migrated)return true;
-		return false;
-	}
-	
-	/**
-	 * Has the validator's implementation been loaded yet? This is used by some test cases to ensure that 
-	 * plug-ins are not loaded too early.
-	 */
-	abstract boolean isLoaded();
-	
-
-	/**
-	 * Set whether this validator should be triggered by the build process.
-	 * 
-	 * @param buildValidation
-	 * @return true if the setting changed.
-	 */
-	public boolean setBuildValidation(boolean buildValidation) {
-		return setBuildValidation2(buildValidation);
-	}
-	
-	protected final boolean setBuildValidation2(boolean buildValidation) {
-		boolean changed = false;
-		if (_buildValidation != buildValidation){
-			bumpChangeCountGlobal();
-			changed = true;
-			_buildValidation = buildValidation;
-		}
-		return changed;
-	}
-
-	/**
-	 * Get the id of the "real" validator, that is the validator that will be called when this delegating
-	 * validator is asked to validate something. If this isn't a delegating validator answer null.
-	 */
-	public String getDelegatingId() {
-		return _delegatingId;
-	}
-	
-	/**
-	 * Set the id of the "real" validator, that is the validator that will be called when this delegating
-	 * validator is asked to validate something.
-	 * 
-	 * @param delegating the id of the validator that is actually going to perform the validation.
-	 */
-	public void setDelegatingId(String delegating) {
-		if (!Misc.same(_delegatingId, delegating)){
-			_delegatingId = delegating;
-			bumpChangeCountGlobal();
-		}
-	}
-	
-	public int getVersion() {
-		return _version;
-	}
-	
-	public void setVersion(int version) {
-		if (_version != version){
-			_version = version;
-			bumpChangeCountGlobal();
-		}
-	}
-	
-	@Override
-	public String toString() {
-		return getName();
-	}
-		
-/**
- * A validator that uses version 1 of the validation framework.
- * @author karasiuk
- *
- */ 
-public static class V1 extends Validator {
-	private ValidatorMetaData _vmd;
-	
-	/**
-	 * Create a new version 1 validator. 
-	 * @param vmd
-	 * @param config this is used to set the global enablement options. In some case this can be null.
-	 */
-	public V1(ValidatorMetaData vmd, ValidationConfiguration config, IProject project){
-		super(project);
-		_vmd = vmd;
-		if (config != null){
-			setBuildValidation(config.isBuildEnabled(vmd));
-			setManualValidation(config.isManualEnabled(vmd));
-		}
-		setDelegatingId(ValidatorDelegatesRegistry.getInstance().getDefaultDelegate(_vmd.getValidatorUniqueName()));
-		if (_vmd.getMarkerIds() != null && _vmd.getMarkerIds().length > 0)setMarkerId(_vmd.getMarkerIds()[0]);
-		resetChangeCounters();
-	}
-	
-	@Override
-	public IValidator asIValidator() {
-		IValidator v = null;
-		try {
-			v = _vmd.getValidator();
-		}
-		catch (InstantiationException e){
-			ValidationPlugin.getPlugin().handleException(e);
-			return null;
-		}
-		return v;
-	}
-	
-	public V1 asV1Validator() {
-		return this;
-	}
-			
-	public Validator copy(boolean includeChangeCounts) {
-		V1 v = new V1Copy(_vmd, null, _project);
-		v.copyLocal(this, includeChangeCounts);
-				
-		return v;
-	}
-	
-	public String getName() {
-		return _vmd.getValidatorDisplayName();
-	}
-	
-	public ValidatorMetaData getVmd(){
-		return _vmd;
-	}
-	
-	public String getValidatorClassname(){
-		String name = ""; //$NON-NLS-1$
-		try {
-			name = _vmd.getValidator().getClass().getName();
-		}
-		catch (Exception e){
-			// eat it
-		}
-		return name;
-	}
-	public String getId() {
-		return _vmd.getValidatorUniqueName();
-	}
-	
-	@Override
-	boolean isLoaded() {
-		return _vmd.isActive();
-	}
-	
-	@Override
-	public boolean setBuildValidation(boolean buildValidation) {
-		boolean changed = super.setBuildValidation(buildValidation);
-		_vmd.setBuildValidation(buildValidation);
-		return changed;
-	}
-	
-	@Override
-	public boolean setManualValidation(boolean manualValidation) {
-		boolean changed = super.setManualValidation(manualValidation);
-		_vmd.setManualValidation(manualValidation);
-		return changed;
-	}
-
-	@Override
-	protected boolean shouldValidate(IResource resource, ContentTypeWrapper contentTypeWrapper) {
-		return _vmd.isApplicableTo(resource);
-	}
-
-	@Override
-	protected boolean shouldValidateProject(IProject project) {
-		// TODO determine if this can be optimized
-		return true;
-	}
-
-	@Override
-	public ValidationResult validate(IResource resource, int kind, ValOperation operation, 
-		IProgressMonitor monitor) {
-		
-		if (monitor == null)monitor = new NullProgressMonitor();
-		
-		ValidationResult vr = new ValidationResult();
-		IValidator v = asIValidator();
-		if (v == null)return null;
-		
-		try {
-			IProject project = resource.getProject();
-			SummaryReporter reporter = new SummaryReporter(project, monitor);
-			IWorkbenchContext helper = _vmd.getHelper(project);
-			if (helper instanceof WorkbenchContext){
-				WorkbenchContext wc = (WorkbenchContext)helper;
-				List<String> files = new LinkedList<String>();
-				// [213631] The JSP validator expects full paths not relative paths, but the XML validator
-				// expects relative paths.
-				files.add(wc.getPortableName(resource));
-				wc.setValidationFileURIs(files);
-			}
-			try {
-				ValidatorLauncher.getLauncher().start(helper, v, reporter);
-			}
-			finally {
-				try {
-					v.cleanup(reporter);
-				}
-				finally {
-					helper.cleanup(reporter);
-				}
-			}
-			
-			vr.incrementError(reporter.getSeverityHigh());
-			vr.incrementWarning(reporter.getSeverityNormal());
-			vr.incrementInfo(reporter.getSeverityLow());
-			
-		}
-		catch (Exception e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		return vr;
-	}
-	
-	/*
-	 * GRK - Because I didn't want to try to make a true copy of the V1 validator, (because I didn't
-	 * want to copy the vmd object), I came up with this approach to only copy the fields that
-	 * the preference page was worried about. 
-	 */
-	public final static class V1Copy extends V1 {
-		public V1Copy(ValidatorMetaData vmd, ValidationConfiguration vc, IProject project){
-			super(vmd, vc, project);
-		}
-		
-		@Override
-		public boolean setManualValidation(boolean bool) {
-			return setManualValidation2(bool);
-		}
-		
-		@Override
-		public boolean setBuildValidation(boolean bool) {
-			return setBuildValidation2(bool);
-		}
-				
-	}
-		
-}
-
-/**
- * A validator that uses version 2 of the validation framework.
- * @author karasiuk
- *
- */
-public final static class V2 extends Validator implements IAdaptable {
-	private AbstractValidator	_validator;
-	
-	private List<FilterGroup>	_groups = new LinkedList<FilterGroup>();
-	private FilterGroup[]		_groupsArray;
-	
-	/** The full id of the extension. */
-	private String			_id;
-	
-	/** Name of the validator. */
-	private String			_name;
-	
-	/** 
-	 * We don't want to create the validator too early, as it may trigger new plug-ins to be loaded.
-	 * We delay that as long as possible, by starting with just the config element.
-	 */
-	private IConfigurationElement _validatorConfigElement;
-	
-	private String	_validatorClassName;
-	
-	/**
-	 * An array containing the validator group IDs for which this validator is a member.
-	 */
-	private String[] _validatorGroupIds;
-		
-	/** 
-	 * If this validator is a delegating validator, then this is the "real" validator (i.e. the one that
-	 * does the work).
-	 */
-	private AbstractValidator	_delegated;
-		
-	/** How many times has a group field in this validator been changed since it was created (or copied)? */
-	protected transient int _changeCountGroups;
-		
-	private Level _level;
-	
-	/**
-	 * Do we still need to invoke the validateStarting method for this validator, for the null project?
-	 * 
-	 * Because we do not want to activate a validator's plug-in too soon, we do not activate the validator
-	 * as a reaction to the global validation starting event. Instead we mark it pending, and wait until
-	 * we are sure that we have something to validate.
-	 * 
-	 * If this flag is true, it means that the validateStarting method still needs to be called for this validator.
-	 */
-	private AtomicBoolean _pendingValidationStarted = new AtomicBoolean();
-	
-	V2(IConfigurationElement configElement, IProject project){
-		super(project);
-		assert configElement != null;
-		_validatorConfigElement = configElement;
-		_validatorClassName = configElement.getAttribute(ExtensionConstants.AttribClass);
-
-		IConfigurationElement[] groupReferenceElements = configElement.getChildren(ExtensionConstants.Group.elementGroup);
-		List<String> validatorGroupIDs = new ArrayList<String>();
-		for (IConfigurationElement groupElement : groupReferenceElements) {
-			String id = groupElement.getAttribute(ExtensionConstants.Group.attId);
-			if (id != null)validatorGroupIDs.add(id);
-		}
-		_validatorGroupIds = validatorGroupIDs.toArray(new String[validatorGroupIDs.size()]);
-			
-		init();
-	}
-	
-	private V2(IProject project, String validatorClassName, AbstractValidator validator){
-		super(project);
-		assert validator != null;
-		
-		_validatorClassName = validatorClassName;
-		_validator = validator;
-		init();
-	}
-	
-	private void init(){
-		try {
-			String id = ConfigurationManager.getManager().getConfiguration(_project).getDelegateForTarget(_validatorClassName);
-			if (id == null) id = ValidatorDelegatesRegistry.getInstance().getDefaultDelegate(_validatorClassName);
-			setDelegatingId(id);
-		}
-		catch (InvocationTargetException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		resetChangeCounters();		
-	}
-
-	public synchronized void add(FilterGroup fg) {
-		assert fg != null;
-		_groupsArray = null;
-		_groups.add(fg);
-		bumpChangeCountGroups();
-	}
-	
-	@Override
-	public IValidator asIValidator() {
-		AbstractValidator av = getDelegatedValidator();
-		if (av instanceof IValidator)return (IValidator)av;
-		return super.asIValidator();
-	}
-	
-	@Override
-	public V2 asV2Validator() {
-		return this;
-	}
-	
-	/**
-	 * Let the validator know that a clean is about to happen.
-	 * 
-	 * @param project the project that is being cleaned. This can be null which means that the workspace
-	 * is being cleaned (in which case a separate call will be made for each open project).
-	 * 
-	 */
-	@Override
-	public void clean(IProject project, ValOperation operation, IProgressMonitor monitor) {
-		getDelegatedValidator().clean(project, operation.getState(), monitor);
-	}
-	
-	@Override
-	public Validator copy(boolean includeChangeCounts) {
-		V2 v = null;
-		if (_validatorConfigElement != null)v = new V2(_validatorConfigElement, _project);
-		else v = new V2(_project, _validatorClassName, _validator);
-		v.copyLocal(this, includeChangeCounts);
-		
-		if (includeChangeCounts)v._changeCountGroups = _changeCountGroups;
-		
-		FilterGroup[] groups = getGroups();
-		v._groupsArray = new FilterGroup[groups.length];
-		for (int i=0; i<groups.length; i++){
-			v._groupsArray[i] = groups[i];
-			v._groups.add(groups[i]);
-		}
-
-		v._id = _id;
-		v._name = _name;
-		v._validatorGroupIds = _validatorGroupIds;
-		v._pendingValidationStarted = _pendingValidationStarted;
-				
-		return v;
-	}
-	
-	public int getChangeCountGroups(){
-		return _changeCountGroups;
-	}
-	
-	public void bumpChangeCountGroups(){
-		_changeCountGroups++;
-	}
-	
-	public Level getLevel() {
-		return _level;
-	}
-
-	public void setLevel(Level level) {
-		assert _level == null;
-		_level = level;
-	}
-	
-	/**
-	 * Answer the actual validator that is going to perform the validation. If this is a normal validator this
-	 * method will simply answer itself. However if this is a delegating validator, then this will answer the
-	 * "real" validator.
-	 */
-	public AbstractValidator getDelegatedValidator(){
-		AbstractValidator delegated = _delegated;
-		if (delegated != null)return delegated;
-		else if (getDelegatingId() == null)return getValidator();
-		try {
-			ValidatorDelegateDescriptor vdd = ValidatorDelegatesRegistry.getInstance()
-				.getDescriptor(getValidatorClassname(), getDelegatingId());
-			if (vdd == null)return getValidator();
-			delegated = vdd.getValidator2();
-		}
-		catch (Exception e){
-			ValidationPlugin.getPlugin().handleException(e);
-			delegated = new NullValidator();
-		}
-		delegated.setParent(this);
-		_delegated = delegated;
-		return delegated;
-	}
-		
-	@Override
-	public String getId() {
-		return _id;
-	}
-	
-	/**
-	 * Answer the validator's filter groups.
-	 * @return an empty array if the validator does not have any filter groups.
-	 */
-	public synchronized FilterGroup[] getGroups(){
-		FilterGroup[] groups = _groupsArray;
-		if (groups == null){
-			groups = new FilterGroup[_groups.size()];
-			_groups.toArray(groups);
-			_groupsArray = groups;
-		}
-		return groups;
-	}
-	
-	@Override
-	public String getName() {
-		return _name;
-	}
-	
-	public AbstractValidator getValidator() {
-		if (_validator == null){
-			try {
-				_validator = (AbstractValidator)_validatorConfigElement.createExecutableExtension(ExtensionConstants.AttribClass);
-			}
-			catch (Exception e){
-				ValidationPlugin.getPlugin().handleException(e);
-				IContributor contrib = _validatorConfigElement.getContributor();
-				String message = NLS.bind(ValMessages.ErrConfig, contrib.getName());
-				ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, message);
-				_validator = new NullValidator();
-			}
-			_validator.setParent(this);
-			_validatorConfigElement = null;
-
-		}
-		return _validator;
-	}
-	
-	@Override
-	public String getValidatorClassname(){
-		return _validatorClassName;
-	}
-	
-	public String[] getValidatorGroups(){
-		return _validatorGroupIds;
-	}
-	
-	@Override
-	public int hashCodeForConfig() {
-		int h =  super.hashCodeForConfig();
-		if (_id != null)h += _id.hashCode();
-		if (_groups != null){
-			for (FilterGroup fg : _groups)h += fg.hashCodeForConfig();
-		}
-		return h;
-	}
-	
-	@Override
-	public boolean isChanged() {
-		if (_changeCountGroups > 0)return true;
-		return super.isChanged();
-	}
-	
-	@Override
-	boolean isLoaded() {
-		return _validator != null;
-	}
-	
-	@Override
-	public boolean shouldClearMarkers(ValidationEvent event) {
-		return getValidator().shouldClearMarkers(event);
-	}
-		
-	/**
-	 * Answer true if this validator, based on it's filters, should validate this resource.
-	 * 
-	 * @return true if the resource should be validated.
-	 */
-	@Override
-	protected boolean shouldValidate(IResource resource, ContentTypeWrapper contentTypeWrapper) {
-		FilterGroup[] groups = getGroups();
-		IProject project = resource.getProject();
-		for (FilterGroup group : groups){
-			if (!group.shouldValidate(project, resource, contentTypeWrapper))return false;
-		}
-		return true;
-	}
-	
-	
-	@Override
-	public void setDelegatingId(String delegating) {
-		super.setDelegatingId(delegating);
-		_delegated = null;
-	}
-	
-	public synchronized void setGroups(List<FilterGroup> groups){
-		_groups = groups;
-		_groupsArray = null;
-		bumpChangeCountGroups();
-	}
-
-	public void setId(String id) {
-		if (!Misc.same(_id, id)){
-			_id = id;
-			bumpChangeCountGlobal();
-		}
-	}
-	
-	public void setName(String name) {
-		if (!Misc.same(_name, name)){
-			_name = name;
-			bumpChangeCountGlobal();
-		}
-	}
-	
-	@Override
-	public ValidationResult validate(IResource resource, int kind, ValOperation operation, IProgressMonitor monitor){
-		return validate(resource, kind, operation, monitor, null);
-	}
-	
-	@Override
-	public ValidationResult validate(IResource resource, int kind, ValOperation operation, IProgressMonitor monitor, ValidationEvent event) {
-		ValidationResult vr = null;
-		if (operation == null)operation = new ValOperation();
-		if (monitor == null)monitor = new NullProgressMonitor();
-		try {
-			if (event == null)event = new ValidationEvent(resource, kind, null);
-			vr = getDelegatedValidator().validate(event, operation.getState(), monitor);
-			if (vr == null)vr = getDelegatedValidator().validate(resource, kind, operation.getState(), monitor);
-		}
-		catch (Exception e){
-			try {
-				String msg = NLS.bind(ValMessages.LogValEnd, getName(), resource.getLocationURI());
-				ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, msg);
-			}
-			catch (Exception e2 ){
-				// ignore it
-			}
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		
-		if (vr != null){
-			if (vr.getValidationException() != null){
-				ValidationPlugin.getPlugin().handleException(vr.getValidationException());
-			}
-			updateResults(vr);
-			if (vr.getDependsOn() != null){
-				ValidationFramework.getDefault().getDependencyIndex().set(getId(), resource, vr.getDependsOn());
-			}
-			IResource[] validated = vr.getValidated();
-			if (validated != null){
-				for (int i=0; i<validated.length; i++){
-					operation.addValidated(getId(), validated[i]);
-				}
-			}
-			
-			ValidatorMessage[] msgs = vr.getMessages();
-//			if (sanityTest(msgs.length, resource)){
-				MarkerManager mm = MarkerManager.getDefault();
-				for (ValidatorMessage m : msgs){
-					mm.createMarker(m, getId());
-				}
-//			}
-//			else {
-//				setBuildValidation(false);
-//				setManualValidation(false);
-//			}
-		}
-		return vr;		
-	}
-	
-	/**
-	 * Perform a simple sanity test to ensure that the validator is configured correctly.
-	 * @param numberofMessages number of messages that the validator produced.
-	 * @return true if the test passed
-	 */
-//	private boolean sanityTest(int numberofMessages, IResource resource) {
-//		if (numberofMessages < 201)return true;
-//		
-//		String resName = ""; //$NON-NLS-1$
-//		if (resource != null)resName = resource.getName();
-//		String message = NLS.bind(ValMessages.ConfigError, new Object[]{
-//				getName(), getId(), String.valueOf(numberofMessages), resName});
-//		ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, message);
-//		
-//		return false;
-//	}
-
-	/**
-	 * If the validator is using a report helper then update it with any of the messages that were
-	 * added directly to the validation result.
-	 * @param vr
-	 */
-	private void updateResults(ValidationResult vr) {
-		ReporterHelper rh = vr.getReporterHelper();
-		if (rh == null)return;
-		ClassLoader classloader = getDelegatedValidator().getClass().getClassLoader();
-		for (IMessage message : rh.getMessages()){
-			Object target = message.getTargetObject();
-			if (target != null){
-				IResource res = null;
-				if (target instanceof IResource)res = (IResource)target;
-				if (res == null){
-					target = message.getAttribute(IMessage.TargetResource);
-					if (target != null && target instanceof IResource)res = (IResource)target;
-				}
-				if (res != null){
-					
-					ValidatorMessage vm = ValidatorMessage.create(message.getText(classloader), res);
-					if (getMarkerId() != null)vm.setType(getMarkerId());
-					vr.add(vm);
-					int markerSeverity = IMarker.SEVERITY_INFO;
-					int sev = message.getSeverity();
-					if ((sev & IMessage.HIGH_SEVERITY) != 0)markerSeverity = IMarker.SEVERITY_ERROR;
-					else if ((sev & IMessage.NORMAL_SEVERITY) != 0)markerSeverity = IMarker.SEVERITY_WARNING;
-					vm.setAttribute(IMarker.SEVERITY, markerSeverity);
-					vm.setAttribute(IMarker.LINE_NUMBER, message.getLineNumber());
-					int offset = message.getOffset();
-					if (offset != IMessage.OFFSET_UNSET){
-						vm.setAttribute(IMarker.CHAR_START, offset);
-						int len = message.getLength();
-						if (len != IMessage.OFFSET_UNSET){
-							vm.setAttribute(IMarker.CHAR_START, offset);
-							vm.setAttribute(IMarker.CHAR_END, offset+len);
-						}
-					}
-					String groupName = message.getGroupName();
-					if (groupName != null){
-						vm.setAttribute(ConfigurationConstants.VALIDATION_MARKER_GROUP, groupName);
-					}
-					
-					copyAttributes(message, vm);
-				}
-			}
-		}		
-	}
-
-	@SuppressWarnings("unchecked")
-	private void copyAttributes(IMessage message, ValidatorMessage vm) {
-		// I made this a separate method, so that I could localize the suppression of unchecked warnings.
-		Map attributes = message.getAttributes();
-		if (attributes != null){						
-			for (Iterator it = attributes.entrySet().iterator(); it.hasNext();){
-				Map.Entry me = (Map.Entry)it.next();
-				String key = (String)me.getKey();
-				vm.setAttribute(key, me.getValue());
-			}
-		}
-	}
-	
-	@Override
-	public void validationStarting(IProject project, ValidationState state, IProgressMonitor monitor) {
-		if (project == null)_pendingValidationStarted.set(true);
-		else {
-			AbstractValidator val = getDelegatedValidator();
-			if (_pendingValidationStarted.getAndSet(false)){
-				val.validationStarting(null, state, monitor);
-			}
-			val.validationStarting(project, state, monitor);
-		}
-	}
-	
-	@Override
-	public void validationFinishing(IProject project, ValidationState state, IProgressMonitor monitor) {
-		if (project == null){
-			if (!_pendingValidationStarted.getAndSet(false))getDelegatedValidator().validationFinishing(null, state, monitor);
-		}
-		else getDelegatedValidator().validationFinishing(project, state, monitor);
-	}
-
-	@SuppressWarnings("unchecked")
-	public Object getAdapter(Class adapter) {
-		return Platform.getAdapterManager().getAdapter(this, adapter);
-	}
-
-	public synchronized void remove(FilterGroup group) {
-		_groups.remove(group);
-		_groupsArray = null;	
-		bumpChangeCountGroups();
-	}
-	
-	@Override
-	public void resetChangeCounters() {
-		super.resetChangeCounters();
-		_changeCountGroups = 0;
-	}
-
-	@Override
-	protected boolean shouldValidateProject(IProject project) {
-		FilterGroup[] groups = getGroups();
-		ContentTypeWrapper ctw = new ContentTypeWrapper();
-		for (FilterGroup group : groups){
-			if (!group.shouldValidate(project, null, ctw))return false;
-		}
-		return true;
-	}
-	
-	public synchronized void replaceFilterGroup(FilterGroup existing, FilterGroup merged) {
-		remove(existing);
-		add(merged);
-	}
-
-}
-
-public String getSourceId() {
-	return _sourceId;
-}
-
-public void setSourceId(String sourceId) {
-	if (!Misc.same(_sourceId, sourceId)){
-		_sourceId = sourceId;
-		bumpChangeCountGlobal();
-	}
-}
-
-
-void setMessages(Map<String, MessageSeveritySetting> map) {
-	_messageSettings = map;
-	bumpChangeCountMessages();
-}
-
-public int getChangeCountGlobal() {
-	return _changeCountGlobal;
-}
-
-public boolean hasGlobalChanges(){
-	return _migrated || _changeCountGlobal > 0;
-}
-
-public int getChangeCountMessages() {
-	return _changeCountMessages;
-}
-
-public void bumpChangeCountMessages(){
-	_changeCountMessages++;
-}
-
-public void resetChangeCounters() {
-	_changeCountGlobal = 0;
-	_changeCountMessages = 0;
-}
-
-public void bumpChangeCountGlobal(){
-	_changeCountGlobal++;
-}
-
-/**
- * Answer true if you have the same configuration settings as validator.
- * @param validator this can be null.
- */
-public boolean sameConfig(Validator validator) {
-	if (validator == null)return false;
-	return hashCodeForConfig() == validator.hashCodeForConfig();
-}
-
-public String getMarkerId() {
-	return _markerId;
-}
-
-public void setMarkerId(String markerId) {
-	_markerId = markerId;
-	if (markerId != null)MarkerManager.getDefault().getMarkers().add(markerId);
-}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidatorMessage.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidatorMessage.java
deleted file mode 100644
index b8146dc..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/ValidatorMessage.java
+++ /dev/null
@@ -1,295 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation;
-
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.wst.validation.internal.Tracing;
-import org.eclipse.wst.validation.internal.ValConstants;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * This class provides a way for a validator to return messages, that are easily
- * converted into IMarkers.
- * <p>
- * This class is completely optional for validators. A validator can choose to
- * directly manage IMarkers. However, some validators want to be used in
- * multiple contexts, for example as-you-type validation and build based
- * validation. For these types of validators it is not possible for them to use
- * only IMarkers, because often the Resource has not been saved yet.
- * </p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that
- * is still under development and expected to change significantly before
- * reaching stability. It is being made available at this early stage to solicit
- * feedback from pioneering adopters on the understanding that any code that
- * uses this API will almost certainly be broken (repeatedly) as the API
- * evolves.
- * </p>
- */
-public class ValidatorMessage {
-	
-	public static final String ValidationId = "ValidationId"; //$NON-NLS-1$
-	
-	/** Associate some arbitrary attributes with a message. */
-	private final Map<String, Object>	_map = new HashMap<String, Object>(5);
-	
-	private IResource	_resource;
-	
-	/** The type of marker. */
-	private String		_type;
-	
-	/**
-	 * Create a new validation message.
-	 * 
-	 * @param message
-	 * 		The localized message that will be displayed to the user.
-	 * 
-	 * @param resource
-	 * 		The resource that the message is associated with.
-	 */
-	public static ValidatorMessage create(String message, IResource resource){
-		ValidatorMessage msg = new ValidatorMessage();
-		msg._type = ValConstants.ProblemMarker;
-		msg._resource = resource;
-		msg.setAttribute(IMarker.MESSAGE, ValidationPlugin.getPlugin().isDebugging() ? 
-			Tracing.timestampIt(message): message);
-		return msg;
-	}
-	
-	private ValidatorMessage(){}
-	
-	/**
-	 * Answer a copy of yourself.
-	 */
-	public ValidatorMessage asCopy(){
-		ValidatorMessage msg = new ValidatorMessage();
-		msg._resource = _resource;
-		msg._type = _type;
-		msg._map.putAll(_map);
-		return msg;
-	}
-	
-	/**
-	 * Returns the attribute with the given name. The result is an instance of
-	 * one of the following classes: <code>String</code>, <code>Integer</code>,
-	 * or <code>Boolean</code>. Returns <code>null</code> if the attribute is
-	 * undefined.
-	 * 
-	 * @param attributeName
-	 * 		The name of the attribute.
-	 * @return the value, or <code>null</code> if the attribute is undefined.
-	 */
-	public Object getAttribute(String attributeName){
-		return _map.get(attributeName);
-	}
-
-	/**
-	 * Returns the integer valued attribute with the given name. Returns the
-	 * given default value if the attribute is undefined or the marker does not
-	 * exist or is not an integer value.
-	 * 
-	 * @param attributeName
-	 * 		The name of the attribute.
-	 * @param defaultValue
-	 * 		The value to use if no integer value is found.
-	 * @return the value or the default value if no integer value was found.
-	 */
-	public int getAttribute(String attributeName, int defaultValue){
-		Integer value = null;
-		try {
-			value = (Integer)_map.get(attributeName);
-		}
-		catch (Exception e){
-			// eat it
-		}
-		if (value == null)return defaultValue;
-		return value.intValue();
-	}
-
-	/**
-	 * Returns the string valued attribute with the given name. Returns the
-	 * given default value if the attribute is undefined or the marker does not
-	 * exist or is not a string value.
-	 * 
-	 * @param attributeName
-	 * 		The name of the attribute.
-	 * @param defaultValue
-	 * 		The value to use if no value is found.
-	 * @return the value or the default value if no value was found.
-	 */
-	public String getAttribute(String attributeName, String defaultValue){
-		String value = null;
-		try {
-			value = (String)_map.get(attributeName);
-		}
-		catch (Exception e){
-			// eat it
-		}
-		if (value == null)return defaultValue;
-		return value;
-		
-	}
-
-	/**
-	 * Returns the boolean valued attribute with the given name. Returns the
-	 * given default value if the attribute is undefined or the marker does not
-	 * exist or is not a boolean value.
-	 * 
-	 * @param attributeName
-	 * 		The name of the attribute.
-	 * @param defaultValue
-	 * 		The value to use if no value is found.
-	 * @return the value or the default value if no value was found.
-	 */
-	public boolean getAttribute(String attributeName, boolean defaultValue){
-		Boolean value = null;
-		try {
-			value = (Boolean)_map.get(attributeName);
-		}
-		catch (Exception e){
-			// eat it
-		}
-		if (value == null)return defaultValue;
-		return value.booleanValue();
-		
-	}
-
-	/**
-	 * Returns a map with all the attributes for the marker. If the marker has
-	 * no attributes then <code>null</code> is returned.
-	 * 
-	 * @return a map of attribute keys and values (key type :
-	 * 	<code>String</code> value type : <code>String</code>,
-	 * 	<code>Integer</code>, or <code>Boolean</code>) or <code>null</code>.
-	 */
-	@SuppressWarnings("unchecked")
-	public Map getAttributes() {
-		return _map;
-	}
-		
-	/**
-	 * Returns the resource with which this marker is associated. 
-	 *
-	 * @return the resource with which this marker is associated
-	 */
-	public IResource getResource(){
-		return _resource;		
-	}
-
-	/**
-	 * Returns the type of this marker. The returned marker type will not be 
-	 * <code>null</code>.
-	 *
-	 * @return the type of this marker
-	 */
-	public String getType() {
-		return _type;
-	}
-	
-	/**
-	 * Sets the marker type.
-	 * 
-	 * @param type The marker id to use when creating new markers.
-	 */
-	public void setType(String type){
-		assert type != null;
-		_type = type;
-	}
-		
-	/**
-	 * Sets the integer valued attribute with the given name.
-	 * <p>
-	 * This method changes resources; these changes will be reported in a
-	 * subsequent resource change event, including an indication that this
-	 * marker has been modified.
-	 * </p>
-	 * 
-	 * @param attributeName
-	 * 		The name of the attribute.
-	 * @param value
-	 * 		The value.
-	 */
-	public void setAttribute(String attributeName, int value){
-		_map.put(attributeName, new Integer(value));
-		
-	}
-
-	/**
-	 * Sets the attribute with the given name. The value must be
-	 * <code>null</code> or an instance of one of the following classes:
-	 * <code>String</code>, <code>Integer</code>, or <code>Boolean</code>.
-	 * 
-	 * @param attributeName
-	 * 		The name of the attribute.
-	 * @param value
-	 * 		The value, or <code>null</code> if the attribute is to be undefined.
-	 */
-	public void setAttribute(String attributeName, Object value){
-		_map.put(attributeName, value);
-	}
-
-	/**
-	 * Sets the boolean valued attribute with the given name.
-	 * 
-	 * @param attributeName
-	 * 		The name of the attribute.
-	 * @param value
-	 * 		The value.
-	 */
-	public void setAttribute(String attributeName, boolean value){
-		_map.put(attributeName, value ? Boolean.TRUE : Boolean.FALSE);		
-	}
-
-	/**
-	 * Sets the given attribute key-value pairs on this marker. The values must
-	 * be <code>null</code> or an instance of one of the following classes:
-	 * <code>String</code>, <code>Integer</code>, or <code>Boolean</code>. If a
-	 * value is <code>null</code>, the new value of the attribute is considered
-	 * to be undefined.
-	 * 
-	 * @param attributeNames
-	 * 		An array of attribute names.
-	 * @param values
-	 * 		An array of attribute values.
-	 */
-	public void setAttributes(String[] attributeNames, Object[] values){
-		Assert.isTrue(attributeNames.length == values.length);
-		for (int i=0; i<attributeNames.length; i++){
-			setAttribute(attributeNames[i], values[i]);			
-		}
-	}
-
-	/**
-	 * Sets the attributes for this marker to be the ones contained in the given
-	 * table. The values must be an instance of one of the following classes:
-	 * <code>String</code>, <code>Integer</code>, or <code>Boolean</code>.
-	 * Attributes previously set on the marker but not included in the given map
-	 * are considered to be removals. Setting the given map to be
-	 * <code>null</code> is equivalent to removing all marker attributes.
-	 * 
-	 * @param attributes
-	 * 		A map of attribute names to attribute values (key type :
-	 * 		<code>String</code> value type : <code>String</code>,
-	 * 		<code>Integer</code>, or <code>Boolean</code>) or <code>null</code>.
-	 */
-	public void setAttributes(Map<String, Object> attributes) {
-		_map.clear();
-		_map.putAll(attributes);
-		
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ContentTypeWrapper.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ContentTypeWrapper.java
deleted file mode 100644
index 2436c84..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ContentTypeWrapper.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * Since it can be expense to determine a content type, we provide a wrapper so that we only
- * need to get it once, as we validate a resource.
- * @author karasiuk
- *
- */
-public class ContentTypeWrapper {
-	
-	private IContentType _type;
-	private boolean 	_initialized;
-	
-	public IContentType getContentType(IFile file){
-		if (_initialized)return _type;
-		
-		IContentDescription cd = null;
-		try {
-			cd = file.getContentDescription();
-		}
-		catch (CoreException e){
-			try {
-				file.refreshLocal(IResource.DEPTH_ZERO, null);
-				cd = file.getContentDescription();
-			}
-			catch (CoreException e2){
-				if (Tracing.isLogging())ValidationPlugin.getPlugin().handleException(e2);
-			}
-		}
-		if (cd == null)return null;
-		_type = cd.getContentType();
-		_initialized = true;
-		return _type;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DebugConstants.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DebugConstants.java
deleted file mode 100644
index a466241..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DebugConstants.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-public interface DebugConstants {
-	
-	/** matches - trace filter matches. */
-	String TraceMatches = ValidationPlugin.PLUGIN_ID+"/matches"; //$NON-NLS-1$
-	
-	/** timings - trace the times of the validators. */
-	String TraceTimes = ValidationPlugin.PLUGIN_ID+"/timings"; //$NON-NLS-1$
-	
-	/** v1 - trace the v1 validators. */
-	String TraceV1 = ValidationPlugin.PLUGIN_ID+"/v1"; //$NON-NLS-1$
-	
-	/** timings/tracefile - file that stores the trace events */
-	String TraceTimesFile = ValidationPlugin.PLUGIN_ID+"/timings/tracefile"; //$NON-NLS-1$
-	
-	/** 
-	 * timings/useDoubles - By default times that are written to the trace file are
-	 * in milliseconds for elapsed time and nanoseconds for cpu time. 
-	 * If you find these times easier to read as seconds as expressed by a double, 
-	 * the following flag can be turned on.
-	 */
-	String TraceTimesUseDoubles = ValidationPlugin.PLUGIN_ID+"/timings/useDoubles"; //$NON-NLS-1$
-	
-	/** 
-	 * extraValDetail - If extra detail is needed for a particular validator it's id can be specified here. 
-	 * For example, if you wanted more detail on the XML validator you would use org.eclipse.wst.xml.core.xml 
-	 */
-	String ExtraValDetail = ValidationPlugin.PLUGIN_ID+"/extraValDetail"; //$NON-NLS-1$
-	
-	/** 
-	 * filter/allExcept - If supplied, it is as if this is the only validator that gets defined via
-	 * the extension point. All the other validators are ignored.
-	 */
-	String FilterAllExcept = ValidationPlugin.PLUGIN_ID+"/filter/allExcept"; //$NON-NLS-1$
-	
-	/**
-	 * trace/level - The tracing level. If not supplied a default of zero is used. The higher the number the
-	 * more verbose the tracing.
-	 */
-	String TraceLevel = ValidationPlugin.PLUGIN_ID+"/trace/level"; //$NON-NLS-1$
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DependencyIndex.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DependencyIndex.java
deleted file mode 100644
index 388738c..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DependencyIndex.java
+++ /dev/null
@@ -1,370 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ISaveContext;
-import org.eclipse.core.resources.ISaveParticipant;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.validation.DependentResource;
-import org.eclipse.wst.validation.IDependencyIndex;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * A simple implementation of the IDependencyIndex. This will probably be
- * replaced with a higher performance, more robust index, at some point in the
- * future.
- * <p>
- * The format of the index is:
- * 
- * <pre>
- * Version number
- * Number of depends on entries
- *   depends on file name
- *   number of dependent entries
- *     dependent file name
- *     number of validators
- *       validator id
- * </pre>
- * 
- * @author karasiuk
- */
-public class DependencyIndex implements IDependencyIndex, ISaveParticipant {
-	
-	/**
-	 * An index so that we can determine which things depend on this resource.
-	 */
-	private Map<IResource,Set<Depends>>		_dependsOn;
-	
-	/**
-	 * An index so that we can determine who the resource depends on.
-	 */
-	private Map<IResource,Set<Depends>>		_dependents;
-	private boolean _dirty;
-	
-	private static IResource[] EmptyResources = new IResource[0];
-	
-	/** Version of the persistent index. */
-	private static final int CurrentVersion = 1;
-
-	public synchronized void add(String id, IResource dependent, IResource dependsOn) {
-		init();
-		if (dependsOn == null || dependent == null)return;
-		Depends d = getOrCreateDepends(dependent, dependsOn);
-		if (d.getValidators().add(id))_dirty = true;
-	}
-	
-	private Depends getOrCreateDepends(IResource dependent, IResource dependsOn) {
-		Set<Depends> set = getSet(_dependents, dependent);
-		for (Depends d : set){
-			if (d.getDependsOn() != null && d.getDependsOn().equals(dependsOn)) return d;
-		}
-		Depends d = new Depends(dependent, dependsOn);
-		_dirty = true;
-		set.add(d);
-		
-		getSet(_dependsOn, dependsOn).add(d);
-		return d;
-	}
-
-	/**
-	 * Answer the set for the resource, creating it if you need to.
-	 */
-	private Set<Depends> getSet(Map<IResource, Set<Depends>> map, IResource resource) {
-		Set<Depends> set = map.get(resource);
-		if (set == null){
-			set = new HashSet<Depends>(5);
-			map.put(resource, set);
-		}
-		return set;
-	}
-
-	/**
-	 * Restore the dependency index. See the class comment for the structure.
-	 */	
-	private void init() {
-		if (_dependsOn != null)return;
-		
-		boolean error = false;
-		File f = getIndexLocation();
-		if (!f.exists()){
-			_dependsOn = new HashMap<IResource,Set<Depends>>(100);
-			_dependents = new HashMap<IResource,Set<Depends>>(100);
-		}
-		else {
-			String errorMessage = "The following dependency could not be restored " + 
-				"because the following resource {0} could no longer be found."; 
-			DataInputStream in = null;
-			try {
-				IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-				in = new DataInputStream(new FileInputStream(f));
-				
-				int version = in.readInt();
-				if (version != CurrentVersion){
-					error = true;
-					String msg = NLS.bind(ValMessages.ErrDependencyVersion, CurrentVersion);
-					throw new IllegalStateException(msg);
-				}
-				int numDependsOn = in.readInt();
-				_dependsOn = new HashMap<IResource,Set<Depends>>(numDependsOn+100);
-				_dependents = new HashMap<IResource,Set<Depends>>(numDependsOn+100);
-				for (int i=0; i<numDependsOn; i++){
-					String v = in.readUTF();
-					IResource dependsOn = root.findMember(v);
-					if (dependsOn == null){
-						Tracing.log(NLS.bind(errorMessage, v));
-					}
-					int numDependents = in.readInt();
-					for (int j=0; j<numDependents; j++){
-						v = in.readUTF();
-						IResource dependent = root.findMember(v);
-						if (dependent == null){
-							Tracing.log(NLS.bind(errorMessage, v));
-						}
-						int numVal = in.readInt();
-						for (int k=0; k<numVal; k++){
-							String id = in.readUTF();
-							if (dependent != null && dependsOn != null)add(id, dependent, dependsOn);
-						}
-					}					
-				}				
-			}
-			catch (IOException e){
-				error = true;
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-			finally {
-				Misc.close(in);
-				if (error){
-					_dependsOn = new HashMap<IResource,Set<Depends>>(100);
-					_dependents = new HashMap<IResource,Set<Depends>>(100);
-					f.delete();
-				}
-			}			
-		}
-	}
-
-	public synchronized void clear(IProject project) {
-		init();
-		for (Map.Entry<IResource,Set<Depends>> me : _dependents.entrySet()){
-			if (me.getKey().getProject() == project){
-				for (Depends d : me.getValue()){
-					if (d.delete())_dirty = true;
-				}
-			}
-		}
-	}
-
-	public synchronized IResource[] get(String validatorId, IResource dependsOn) {
-		init();
-		List<IResource> list = new LinkedList<IResource>();
-		Set<Depends> set = getSet(_dependsOn, dependsOn);
-		for (Depends d : set){
-			for (String id : d.getValidators()){
-				if (validatorId.equals(id))list.add(d.getDependent());
-			}
-		}
-		
-		if (list.size() == 0)return EmptyResources;
-		IResource[] resources = new IResource[list.size()];
-		list.toArray(resources);
-		return resources;
-	}
-
-	
-	public synchronized List<DependentResource> get(IResource dependsOn) {
-		init();
-		List<DependentResource> list = new LinkedList<DependentResource>();
-		Set<Depends> set = getSet(_dependsOn, dependsOn);
-		ValManager vm = ValManager.getDefault();
-		for (Depends d : set){
-			for (String id : d.getValidators()){
-				Validator v = vm.getValidator(id, d.getDependent().getProject());
-				if (v != null)list.add(new DependentResource(d.getDependent(), v));
-			}
-		}
-		return list;
-	}
-
-
-	public synchronized void set(String id, IResource dependent, IResource[] dependsOn) {
-		init();
-		Set<Depends> set = getSet(_dependents, dependent);
-		for (Depends d : set){
-			if (d.delete(id))_dirty = true;
-		}
-		if (dependsOn != null){
-			for (IResource d : dependsOn)add(id, dependent, d);
-		}
-	}
-		
-	public boolean isDependedOn(IResource resource) {
-		init();
-		Set<Depends> set = _dependsOn.get(resource);
-		if (set == null || set.size() == 0)return false;
-		return true;
-	}
-
-	public void doneSaving(ISaveContext context) {	
-	}
-	
-	public void prepareToSave(ISaveContext context) throws CoreException {	
-	}
-	
-	public void rollback(ISaveContext context) {
-	}
-	
-	/**
-	 * Persist the dependency index. See the class comment for the structure.
-	 */
-	public synchronized void saving(ISaveContext context) throws CoreException {
-		if (!_dirty)return;
-		_dirty = false;
-		
-		DataOutputStream out = null;
-		try {
-			File f = getIndexLocation();
-			out = new DataOutputStream(new FileOutputStream(f));
-			out.writeInt(CurrentVersion);
-			Map<String, Set<DependsResolved>> map = compress(_dependsOn);
-			out.writeInt(map.size());
-			for (Map.Entry<String, Set<DependsResolved>> me : map.entrySet()){
-				out.writeUTF(me.getKey());
-				Set<DependsResolved> set = me.getValue();
-				out.writeInt(set.size());
-				for (DependsResolved d : set){
-					out.writeUTF(d.resource);
-					out.writeInt(d.validators.size());
-					for (String id : d.validators){
-						out.writeUTF(id);
-					}
-				}
-			}
-		}
-		catch (IOException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		finally {
-			Misc.close(out);
-		}
-	}
-
-	private Map<String, Set<DependsResolved>> compress(Map<IResource, Set<Depends>> dependsOn) {
-		Map<String, Set<DependsResolved>> map = new HashMap<String, Set<DependsResolved>>(dependsOn.size());
-		for (Map.Entry<IResource, Set<Depends>> me : dependsOn.entrySet()){
-			Set<DependsResolved> set = new HashSet<DependsResolved>(me.getValue().size());
-			for (Depends d : me.getValue()){
-				IPath path = d.getDependent().getFullPath();
-				if (path != null){
-					DependsResolved dr = new DependsResolved();
-					dr.resource = path.toPortableString();
-					if (d.getValidators().size() > 0){
-						dr.validators = d.getValidators();
-						set.add(dr);
-					}
-				}				
-			}
-			if (set.size() > 0){
-				IResource res = me.getKey();
-				if (res != null){
-					IPath path = res.getFullPath();
-					if (path != null)map.put(path.toPortableString(), set);
-				}
-			}
-		}
-		return map;
-	}
-
-	private File getIndexLocation() {
-		IPath path = ValidationPlugin.getPlugin().getStateLocation().append("dep.index"); //$NON-NLS-1$
-		return path.toFile();
-	}
-
-	/**
-	 * Keep track of a relationship between a dependent and the thing that it
-	 * depends on.
-	 * 
-	 * @author karasiuk
-	 * 
-	 */
-	private static class Depends {
-
-		/** The resource that is being depended on, for example a.xsd */
-		private IResource _dependsOn;
-
-		/** The resource that is dependent, for example a.xml */
-		private IResource _dependent;
-
-		/** The id's of the validators that have asserted the dependency. */
-		private Set<String> _validators;
-
-		public Depends(IResource dependent, IResource dependsOn) {
-			_dependent = dependent;
-			_dependsOn = dependsOn;
-			_validators = new HashSet<String>(5);
-		}
-
-		/**
-		 * Answer true if the id was deleted.
-		 */
-		public boolean delete(String id) {
-			return _validators.remove(id);
-		}
-
-		/**
-		 * Delete all the dependency assertions for all of your validators.
-		 * @return false if there was nothing to delete
-		 */
-		public boolean delete() {
-			boolean deleted = _validators.size() > 0;
-			if (deleted)_validators.clear();
-			return deleted;
-		}
-
-		public IResource getDependsOn() {
-			return _dependsOn;
-		}
-
-		public IResource getDependent() {
-			return _dependent;
-		}
-
-		public Set<String> getValidators() {
-			return _validators;
-		}
-}
-
-	private static class DependsResolved {
-		String 		resource;
-		Set<String> validators;
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Deserializer.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Deserializer.java
deleted file mode 100644
index b1af963..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Deserializer.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-/**
- * A simple deserializer that knows how to retrieve booleans, integers and strings, from a string
- * that was encoded by the Serializer class.
- * 
- *  @see Serializer
- * @author karasiuk
- *
- */
-public class Deserializer {
-	private char[] 	_buffer;
-	private int		_posn;
-	
-	public Deserializer(String value){
-		_buffer = value.toCharArray();
-	}
-	
-	public boolean getBoolean(){
-		boolean result = false;
-		if (_buffer[_posn] == 'T')result = true;
-		else if (_buffer[_posn] == 'F')result = false;
-		else throw new IllegalStateException(ValMessages.DecodeError1);
-		
-		_posn++;
-		return result;
-	}
-	
-	public String getString(){
-		int len = getInt();
-		String result = new String(_buffer, _posn, len);
-		_posn += len;
-		return result;		
-	}
-	
-	public int getInt(){
-		Integer len = new Integer(String.valueOf(_buffer[_posn]));
-		_posn++;
-		
-		String s = String.valueOf(_buffer, _posn, len+1);
-		_posn += len+1;
-		return Integer.parseInt(s);
-	}
-
-	/**
-	 * Are there any more items?
-	 * @return
-	 */
-	public boolean hasNext() {
-		if (_posn >= _buffer.length)return false;
-		return true;
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DisabledResourceManager.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DisabledResourceManager.java
deleted file mode 100644
index 120180f..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DisabledResourceManager.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * Validators can assert that certain resources (usually folders) are not validated. This class keeps track of those
- * assertions.
- * @author karasiuk
- *
- */
-public class DisabledResourceManager implements IProjectChangeListener {
-	
-	public static DisabledResourceManager getDefault(){
-		return Singleton.disabledResourceManager;
-	}
-	
-	private Set<IResource> _disabled = new HashSet<IResource>(100);
-	private Set<IProject>	_loadedProjects = new HashSet<IProject>(40);
-	
-	private DisabledResourceManager(){
-		EventManager.getManager().addProjectChangeListener(this);
-	}
-	
-	public void disableValidation(IResource resource){
-		// We check for two reasons, 1) we may save some work, 2) we force the project to be loaded 
-		if (isDisabled(resource))return;
-		
-		Set<IResource> copy = new HashSet<IResource>(_disabled.size()+2);
-		copy.addAll(_disabled);
-		copy.add(resource);
-		save(copy, resource.getProject());
-		_disabled = copy;
-	}
-	
-	public void enableValidation(IResource resource){
-		// We check for two reasons, 1) we may save some work, 2) we force the project to be loaded 
-		if (!isDisabled(resource))return;
-		
-		Set<IResource> copy = new HashSet<IResource>(_disabled.size()+2);
-		copy.addAll(_disabled);
-		copy.remove(resource);
-		save(copy, resource.getProject());
-		_disabled = copy;		
-	}
-		
-	private void save(Set<IResource> disabled, IProject project) {
-		Serializer ser = new Serializer(200);
-		for (IResource resource : disabled){
-			if (project == resource.getProject()){
-				ser.put(resource.getProjectRelativePath().toPortableString());
-			}
-		}
-		PreferencesWrapper prefs = PreferencesWrapper.getPreferences(project, null);
-		prefs.put(PrefConstants.disabled, ser.toString());
-		try {
-			prefs.flush();
-		}
-		catch (BackingStoreException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-	
-	private void load(IProject project){
-		Set<IResource> copy = new HashSet<IResource>(_disabled.size()+10);
-		copy.addAll(_disabled);
-		PreferencesWrapper prefs = PreferencesWrapper.getPreferences(project, null);
-		String disabled = prefs.get(PrefConstants.disabled, ""); //$NON-NLS-1$
-		if (disabled.length() > 0){
-			Deserializer des = new Deserializer(disabled);
-			while(des.hasNext()){
-				String pathString = des.getString();
-				IPath path = Path.fromPortableString(pathString);
-				IResource resource = project.findMember(path);
-				copy.add(resource);
-			}
-		}
-		_disabled = copy;
-	}
-
-	public void dispose(){
-		EventManager.getManager().removeProjectChangeListener(this);
-	}
-	
-	/**
-	 * Answer true if this resource should not be validated.
-	 * 
-	 * @param resource the resource that is being tested.
-	 * @return true if the resource should not be validated.
-	 */
-	public boolean isDisabled(IResource resource){
-		IProject project = resource.getProject();
-		if (_loadedProjects.contains(project))return _disabled.contains(resource);
-		return isDisabled(resource, project); 		
-	}
-	
-	private synchronized boolean isDisabled(IResource resource, IProject project){
-		if (!_loadedProjects.contains(project)){
-			load(project);
-			_loadedProjects.add(project);
-		}
-		return _disabled.contains(resource);
-	}
-	
-	public void addDisabled(IResource resource){
-		_disabled.add(resource);
-	}
-
-	public void projectChanged(IProject project, int type) {
-		switch (type) {
-		case IProjectChangeListener.ProjectDeleted:
-		case IProjectChangeListener.ProjectClosed:
-			projectRemoved(project);
-			break;
-			
-		}
-		
-	}
-	
-	private synchronized void projectRemoved(IProject project) {
-		_loadedProjects.remove(project);
-		Set<IResource> copy = new HashSet<IResource>(100);
-		for (IResource resource : _disabled){
-			if (resource.getProject() != project)copy.add(resource);
-		}
-		_disabled = copy;
-	}
-	
-	/**
-	 * Store the singleton for the DisabledResourceManager. This approach is used to avoid having to synchronize the
-	 * DisabledResourceManager.getDefault() method.
-	 * 
-	 * @author karasiuk
-	 *
-	 */
-	private static class Singleton {
-		static DisabledResourceManager disabledResourceManager = new DisabledResourceManager();
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DisabledValidatorManager.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DisabledValidatorManager.java
deleted file mode 100644
index 7505e88..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DisabledValidatorManager.java
+++ /dev/null
@@ -1,125 +0,0 @@
-package org.eclipse.wst.validation.internal;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.atomic.AtomicInteger;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.internal.model.IValidatorVisitor;
-
-/**
- * Keep track of the disabled validators.
- * @author karasiuk
- *
- */
-public final class DisabledValidatorManager implements IValChangedListener {
-	
-	private static final AtomicInteger _counter = new AtomicInteger();
-	private static final int CacheSize = 5;
-	
-	private final Map<IResource, LRUSet> _map = Collections.synchronizedMap(new HashMap<IResource, LRUSet>(5));
-	
-	public static DisabledValidatorManager getDefault(){
-		return Singleton.disabledValidatorManager;
-	}
-	
-	private DisabledValidatorManager(){
-		ValPrefManagerProject.addListener(this);
-	}
-	
-	/*
-	 * Although this is currently not called, it should be if this ever stops being a singleton.
-	 */
-	public void dispose(){
-		ValPrefManagerProject.removeListener(this);
-	}
-
-	public Set<Validator> getDisabledValidatorsFor(IResource resource) {
-		LRUSet set = _map.get(resource);
-		if (set != null){
-			set.counter = _counter.getAndIncrement();
-			return set.validators;
-		}
-		
-		DisabledValidationFinder dvf = new DisabledValidationFinder();
-		Set<Validator> vset = dvf.findDisabledValidatorsFor(resource);
-		insert(resource, vset);
-		return vset;		
-	}
-	
-	private synchronized void insert(IResource resource, Set<Validator> vset) {
-		if (_map.size() >= CacheSize ){
-			IResource oldest = null;
-			int current = Integer.MAX_VALUE;
-			for (Map.Entry<IResource, LRUSet> me : _map.entrySet()){
-				if (me.getValue().counter < current){
-					oldest = me.getKey();
-					current = me.getValue().counter;
-				}
-			}
-			_map.remove(oldest);
-		}
-		LRUSet set = new LRUSet();
-		set.counter = _counter.getAndIncrement();
-		set.validators = vset;
-		_map.put(resource, set);		
-	}
-
-
-	private final static class LRUSet {
-		int counter;
-		Set<Validator> validators;
-	}
-	
-	private final static class DisabledValidationFinder implements IValidatorVisitor {
-		
-		private Map<String, Validator> _validators;
-
-		public void visit(Validator validator, IProject project, ValType valType, ValOperation operation,
-				IProgressMonitor monitor) {
-			
-			_validators.remove(validator.getId());
-			
-		}
-		
-		public Set<Validator> findDisabledValidatorsFor(IResource resource) {
-			ValManager vm = ValManager.getDefault();
-			Validator[] vals = vm.getValidatorsCopy();
-			_validators = new HashMap<String, Validator>(100);
-			for (Validator v : vals)_validators.put(v.getId(), v);
-						
-			IProject project = resource.getProject();
-			vm.accept(this, project, resource, ValType.Build, new ValOperation(), new NullProgressMonitor());
-			Set<Validator> set = new HashSet<Validator>(_validators.size());
-			set.addAll(_validators.values());
-			return set;
-		}
-		
-		
-	}
-
-	public void validatorsForProjectChanged(IProject project, boolean configSettingChanged) {
-		_map.clear();
-	}
-	
-	
-	/**
-	 * Store the singleton for the DisabledValidatorManager. This approach is used to avoid having to synchronize the
-	 * DisabledValidatorManager.getDefault() method.
-	 * 
-	 * @author karasiuk
-	 *
-	 */
-	private final static class Singleton {
-		final static DisabledValidatorManager disabledValidatorManager = new DisabledValidatorManager();
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ExtensionConstants.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ExtensionConstants.java
deleted file mode 100644
index e702471..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ExtensionConstants.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-/**
- * Constants used in the extension points.
- * @author karasiuk
- *
- */
-public interface ExtensionConstants {
-	
-	/** validatorV2 - extension point for registering validators that use version 2 of the validation framework. */
-	String validator = "validatorV2"; //$NON-NLS-1$
-	
-	/** exclude - extension point for adding extra exclusion filters to a validator. */ 
-	String excludeExtension = "exclude"; //$NON-NLS-1$
-	
-	/** build - is the validator enabled by default for build based validations? true or false */
-	String build = "build"; //$NON-NLS-1$
-	
-	/** class - name of the attribute that holds the validator class. */
-	String AttribClass = "class"; //$NON-NLS-1$
-	
-	/** manual - is the validator enabled by default for manual based validations? true or false */
-	String manual = "manual"; //$NON-NLS-1$
-	
-	/** 
-	 * markerId - the marker id that the framework should use when creating customized markers for this validator.
-	 * This is an optional attribute. If it is not supplied than the standard validation marker type will be used.
-	 */
-	String markerId = "markerId"; //$NON-NLS-1$
-	
-	/** 
-	 * sourceid - If this validator also serves as an as-you-type validator (also know as an ISourceValidator) 
-	 * then it's source id is specified here, so that the two validators can be associated with one 
-	 * another. By source id, we mean the id that is used in the org.eclipse.wst.sse.ui.sourceValidation 
-	 * extension point.
-	 */
-	String sourceId = "sourceid"; //$NON-NLS-1$
-	
-	/** 
-	 * version - the version of this definition. The attribute is a simple integer, and if not specified it
-	 * is assumed to be 1. This allows the filter settings to be changed in the future.
-	 */
-	String version = "version";  //$NON-NLS-1$
-	
-	/** 
-	 * include - a group of inclusion rules. At least one rule in this group needs to match in order for the resource
-	 * to to considered to be validated.
-	 */
-	String include = "include"; //$NON-NLS-1$
-	
-	/** exclude - a group of exclusion rules. If any of these rules match the resource is not validated. */
-	String exclude = "exclude"; //$NON-NLS-1$
-	
-	/** rules - a group of inclusion or exclusion rules. */
-	String rules = "rules"; //$NON-NLS-1$
-	
-	/** rules - extension point to declare a validator group */
-	String group = "validatorGroup"; //$NON-NLS-1$
-	
-	interface Group {
-		/*
-		 * The group sub-element for either the validatorGroup or validator
-		 * extension points.
-		 */
-		String elementGroup = "group"; //$NON-NLS-1$
-		// a validator group identifier
-		String attId = "id"; //$NON-NLS-1$
-		// the listener sub-element
-		String elementListener = "listener"; //$NON-NLS-1$
-		// the group listener class name
-		String attClass = "class"; //$NON-NLS-1$
-	}
-	
-	/** Different types of rules for filtering validation. */
-	interface Rule {
-		
-		/** projectNature - filter by project nature. */
-		String projectNature = "projectNature"; //$NON-NLS-1$
-		
-		/** fileext - filter by file extension. */
-		String fileext = "fileext"; //$NON-NLS-1$
-		
-		/** file - a file name, it can include path information as well. */
-		String file = "file"; //$NON-NLS-1$
-		
-		/** facet - filter by facet id. */
-		String facet = "facet"; //$NON-NLS-1$
-		
-		/** contentType - filter by content type. */
-		String contentType = "contentType"; //$NON-NLS-1$
-		
-		/** pattern - filter paths by regular expression. */
-		String pattern = "pattern"; //$NON-NLS-1$
-	}
-	
-	/** Rule attributes */
-	interface RuleAttrib {
-		
-		/** caseSensitive - true or false. */
-		String caseSensitive = "caseSensitive"; //$NON-NLS-1$
-		
-		/** 
-		 * exactMatch - true or false, default is true. It is used to decide whether content types need to match
-		 * exactly, or whether sub types should also be considered.
-		 */
-		String exactMatch = "exactMatch"; //$NON-NLS-1$
-		
-		/** ext - a file extension, for example "html". */
-		String ext = "ext"; //$NON-NLS-1$
-		
-		/** id - an identifier. */
-		String id = "id"; //$NON-NLS-1$
-		
-		/** name - a file name. */
-		String name = "name"; //$NON-NLS-1$
-		
-		/** regex - a Java regular expression. */
-		String regex = "regex"; //$NON-NLS-1$
-		
-		/** 
-		 * type - the type of file to be matched:
-		 * <ul>
-		 * <li>folder - project relative folder name
-		 * <li>file - simple file name
-		 * <li>full - fully qualified, project relative file name
-		 * </ul>
-		 */
-		String fileType = "type"; //$NON-NLS-1$
-		
-		/** version - facet version expression. See the facet framework for the exact syntax of this expression. */
-		String version = "version"; //$NON-NLS-1$
-	}
-	
-	interface FileType {
-		/** folder - project relative folder name */
-		String folder = "folder"; //$NON-NLS-1$
-		
-		/** file - simple file name */
-		String file = "file"; //$NON-NLS-1$
-		
-		/** full - fully qualified, project relative file name */
-		String full = "full"; //$NON-NLS-1$
-	}
-	
-	interface MessageCategory {
-		/** messageCategory - name of the message category element. */
-		String name = "messageCategory"; //$NON-NLS-1$
-		
-		/** id - simple id of the message. */
-		String id = "id"; //$NON-NLS-1$
-		
-		/** label = human readable label of the message category. */
-		String label = "label"; //$NON-NLS-1$
-		
-		/** severity - message severity, it must be one of error, warning or ignore. */
-		String severity = "severity"; //$NON-NLS-1$
-		
-		String sevError = "error"; //$NON-NLS-1$
-		String sevWarning = "warning"; //$NON-NLS-1$
-		String sevIgnore = "ignore";  //$NON-NLS-1$
-	}
-	
-	interface Exclude {
-		/** id - fully qualified id of the validator that is being extended. */
-		String id = "id"; //$NON-NLS-1$
-	}
-	
-	/** true */
-	String True = "true"; //$NON-NLS-1$
-	
-	/** false */
-	String False = "false"; //$NON-NLS-1$
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ExtensionValidators.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ExtensionValidators.java
deleted file mode 100644
index 090f4af..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ExtensionValidators.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * The validators that have been defined by the validator extension points.
- * @author karasiuk
- *
- */
-public final class ExtensionValidators {
-	private static ExtensionValidators _me;
-	
-	/** All the registered validators. The key is the validator id and the value is the validator. */
-	private final Map<String, Validator> _map;
-	
-	public synchronized static ExtensionValidators instance(){
-		if (_me == null){
-			_me = new ExtensionValidators();
-		}
-		return _me;
-	}
-
-	private ExtensionValidators(){
-		_map = new HashMap<String, Validator>(100);
-		for (Validator v : ValidatorExtensionReader.getDefault().process()){
-			_map.put(v.getId(), v);
-		}		
-	}
-	
-	/**
-	 * Answer all the v2 validators that have been defined by the extension point. This is the real
-	 * map (not a copy).
-	 * 
-	 * @return The key is the validator id and the value is the validator.
-	 */
-	public Map<String, Validator> getMapV2() {
-		return _map;
-	}
-
-	/**
-	 * Answer all the v2 validators that have been defined by the extension point. This is a copy of
-	 * the map, but not a copy of the validators.
-	 * 
-	 * @return The key is the validator id and the value is the validator.
-	 */
-	public Map<String, Validator> getMapV2Copy() {
-		HashMap<String, Validator> map = new HashMap<String, Validator>(_map.size());
-		map.putAll(_map);
-		return map;
-	}
-	
-	
-	/**
-	 * Answer all the validators that have been defined by extension points. This includes all
-	 * the v2 validators, and all of the v1 validators that have been defined just on this project.
-	 * 
-	 * @return The key is the validator id and the value is the validator.
-	 */
-	public Map<String, Validator> getMap(IProject project) {
-		//TODO I may want to consider caching this, but then again if the v1 validators are going away
-		// it may not be worth it.
-		Map<String, Validator> map = new HashMap<String, Validator>();
-		map.putAll(_map);
-		
-		for (Validator v : getV1Validators(project))map.put(v.getId(), v);
-		
-		return map;
-	}
-	
-	/**
-	 * Answer the v1 validators that have been defined just on this project.
-	 * @param project
-	 * @return
-	 */
-	List<Validator> getV1Validators(IProject project){
-		List<Validator> list = new LinkedList<Validator>();
-		try {
-			ProjectConfiguration pc = new ProjectConfiguration(project);
-			pc.resetToDefault();
-			for (ValidatorMetaData vmd : pc.getValidators()){
-				Validator v = Validator.create(vmd, pc, project);
-				list.add(v);
-			}
-		}
-		catch (InvocationTargetException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-
-		return list;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/FullBuildJob.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/FullBuildJob.java
deleted file mode 100644
index 332a2c7..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/FullBuildJob.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.resources.WorkspaceJob;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-public class FullBuildJob extends WorkspaceJob {
-	
-	public FullBuildJob(){
-		super(ValMessages.JobName);
-	}
-
-	@Override
-	public IStatus runInWorkspace(IProgressMonitor monitor) throws CoreException {
-		try {
-			ResourcesPlugin.getWorkspace().build(IncrementalProjectBuilder.FULL_BUILD, monitor);
-		}
-		catch (Exception e){
-			return new Status(IStatus.ERROR,ValidationPlugin.PLUGIN_ID, e.toString(), e);
-		}
-		return Status.OK_STATUS;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/IProjectChangeListener.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/IProjectChangeListener.java
deleted file mode 100644
index 6788534..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/IProjectChangeListener.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IProject;
-
-/**
- * A call back for listeners that are interested when a project changes.
- * @author karasiuk
- *
- */
-public interface IProjectChangeListener {
-	
-	int ProjectOpened = 1;
-	int ProjectClosed = 2;
-	int ProjectDeleted = 4;
-	
-	/** 8 - Something in the project description has changed. For example, a Nature was added. */
-	int ProjectChanged = 8;
-	
-	/** 16 - The project has been added. */
-	int ProjectAdded = 16;
-	
-	/**
-	 * The project has changed in some way.
-	 * 
-	 * @param project The project that has changed.
-	 * @param type The type of change. This will be one of the Project constants;
-	 */
-	void projectChanged(IProject project, int type);
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/IValChangedListener.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/IValChangedListener.java
deleted file mode 100644
index a2d26d8..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/IValChangedListener.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-/**
- * A class that wants to be notified when the validator preferences change.
- * @author karasiuk
- *
- */
-public interface IValChangedListener {
-	
-	/**
-	 * The validators for the project have changed.
-	 *  
-	 * @param project the project can be null, which means that the global validation preferences have
-	 * changed.
-	 * 
-	 * @param configSettingChanged If true a setting that could effect what gets validated has changed.
-	 * If false, then only other types of settings (like whether to show a results dialog or not) have
-	 * changed. 
-	 */
-	public void validatorsForProjectChanged(org.eclipse.core.resources.IProject project, boolean configSettingChanged);
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/MarkerManager.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/MarkerManager.java
deleted file mode 100644
index 8776525..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/MarkerManager.java
+++ /dev/null
@@ -1,205 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.ValidatorMessage;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-
-/**
- * A central place to manage all of the V2 validation markers.
- * @author karasiuk
- *
- */
-public class MarkerManager {
-	
-	private Set<String> _markers = new HashSet<String>(50);
-	
-	public static MarkerManager getDefault(){
-		return Singleton.markerManager;
-	}
-	
-	private MarkerManager(){
-		_markers.add(ValConstants.ProblemMarker);
-		_markers.add(ConfigurationConstants.VALIDATION_MARKER);
-	}
-	
-	/**
-	 * Clear any validation markers that may have been set by this validator.
-	 * 
-	 * @param resource
-	 *            The resource that may have it's markers cleared. It can be
-	 *            null, in which case the operation is a no-op.
-	 * @param validator
-	 *            The validator that created the marker.
-	 */
-	public void clearMarker(IResource resource, Validator validator) throws CoreException {
-		if (resource == null)return;
-		hook(resource);
-		
-		String id = validator.getMarkerId();
-		if (id != null){
-			try {
-				resource.deleteMarkers(id, true, IResource.DEPTH_ZERO);
-			}
-			catch (CoreException e){
-				// Nothing that we can do. This is not worth logging.
-			}
-			return;
-		}
-				
-		IMarker[] markers = resource.findMarkers(ValConstants.ProblemMarker, true, IResource.DEPTH_ZERO);
-		String valId = validator.getId();
-		for (IMarker marker : markers){
-			id = marker.getAttribute(ValidatorMessage.ValidationId, null);
-			if (valId.equals(id))marker.delete();
-		}
-	}
-	
-	@SuppressWarnings("unchecked")
-	public void createMarker(ValidatorMessage m, String id){
-		try {
-			IResource resource = m.getResource();
-			hook(resource);
-			IMarker marker = resource.createMarker(m.getType());
-			Map map = m.getAttributes();
-			if (map.get(ValidatorMessage.ValidationId) == null)
-				map.put(ValidatorMessage.ValidationId, id);
-			marker.setAttributes(map);
-		}
-		catch (CoreException e){
-			if (!m.getResource().exists())throw new ResourceUnavailableError(m.getResource());
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		
-	}
-	
-	/**
-	 * Delete all the markers on this resource that were created before the
-	 * operation start time.
-	 * 
-	 * @param resource
-	 *            The resource that is having it's markers deleted.
-	 * @param operationStartTime
-	 *            The time as returned by System.currentTimeMillis().
-	 * @param depth
-	 *            The depth of the markers to clear. It is one of the
-	 *            IResource.DEPTH_XXX constants.
-	 */
-	public void deleteMarkers(IResource resource, long operationStartTime, int depth){
-		try {
-			hook(resource); 
-			IMarker[] markers = resource.findMarkers(null, true, depth);
-			String markerType;
-			for (IMarker marker : markers){
-				try {
-					markerType = marker.getType();
-				}
-				catch (CoreException e)
-				{
-					//ignore the marker
-					return;
-				}
-				if (_markers.contains(markerType)){
-					long createTime = marker.getCreationTime();
-					if (createTime < operationStartTime){
-						try {
-							marker.delete();
-						}
-						catch (CoreException e){
-							// eat it - there is nothing we can do about this.
-						}
-					}
-				}
-			}
-		}
-		catch (CoreException e){
-			IProject project = resource.getProject();
-			if (!project.exists() || !project.isOpen())throw new ProjectUnavailableError(project);
-			if (!resource.exists())throw new ResourceUnavailableError(resource);
-			ValidationPlugin.getPlugin().handleException(e);
-		}		
-	}
-	
-	public void makeMarkers(List<IMessage> list){
-		for (IMessage message : list){
-			IResource res = null;
-			Object target = message.getTargetObject();
-			if (target != null && target instanceof IResource)res = (IResource)target;
-			if (res == null){
-				target = message.getAttribute(IMessage.TargetResource);
-				if (target != null && target instanceof IResource)res = (IResource)target;
-			}
-			if (res != null){
-				try {
-					hook(res);
-					String id = message.getMarkerId();
-					if (id == null)id = ConfigurationConstants.VALIDATION_MARKER;
-					IMarker marker = res.createMarker(id);
-					marker.setAttributes(message.getAttributes());
-					marker.setAttribute(IMarker.MESSAGE, message.getText());
-					int markerSeverity = IMarker.SEVERITY_INFO;
-					int sev = message.getSeverity();
-					if ((sev & IMessage.HIGH_SEVERITY) != 0)markerSeverity = IMarker.SEVERITY_ERROR;
-					else if ((sev & IMessage.NORMAL_SEVERITY) != 0)markerSeverity = IMarker.SEVERITY_WARNING;
-					marker.setAttribute(IMarker.SEVERITY, markerSeverity);
-					marker.setAttribute(IMarker.LINE_NUMBER, message.getLineNumber());
-				}
-				catch (CoreException e){
-					ValidationPlugin.getPlugin().handleException(e);
-				}				
-			}
-		}
-	}
-	
-	/**
-	 * A debugging method. A place to put break points, so that you can figure out what sort of marker
-	 * changes are happening.
-	 * 
-	 * @param resource
-	 */
-	public void hook(IResource resource){
-//		String name = "first.test2x";
-//		if (resource.getName().equals(name)){
-//			String markers = Misc.listMarkers(resource);
-//			Tracing.log("MarkerManager has hooked: ", name); //$NON-NLS-1$
-//			RuntimeException rt = new RuntimeException("hooking " + name);
-//			rt.printStackTrace();
-//		}
-	}
-
-	public Set<String> getMarkers() {
-		return _markers;
-	}
-	
-	/**
-	 * Store the singleton for the MarkerManager. This approach is used to avoid having to synchronize the
-	 * MarkerManager.getDefault() method.
-	 * 
-	 * @author karasiuk
-	 *
-	 */
-	private static class Singleton {
-		static MarkerManager markerManager = new MarkerManager();
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Misc.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Misc.java
deleted file mode 100644
index ceafc41..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Misc.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.validation.internal;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.lang.management.ManagementFactory;
-import java.lang.management.ThreadMXBean;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.osgi.util.NLS;
-
-/**
- * Some miscellaneous helper methods. 
- * @author karasiuk
- *
- */
-public final class Misc {
-	
-	public static void close(InputStream in){
-		if (in == null)return;
-		try {
-			in.close();
-		}
-		catch (IOException e){
-			// eat it
-		}
-	}
-
-	public static void close(OutputStream out) {
-		if (out == null)return;
-		try {
-			out.close();
-		}
-		catch (IOException e){
-			// eat it
-		}		
-	}
-	
-	public static boolean debugOptionAsBoolean(String option){
-		String opt = Platform.getDebugOption(option);
-		if (opt == null)return false;
-		opt = opt.toLowerCase();
-		if ("true".equals(opt))return true; //$NON-NLS-1$
-		if ("yes".equals(opt))return true; //$NON-NLS-1$
-		return false;
-	}
-	
-	
-	/**
-	 * Answer a units appropriate string for the time.
-	 * @param time time in nano seconds
-	 */
-	public static String getTimeNano(long time){
-		if (time <= 1000)return NLS.bind(ValMessages.TimeNano, time);
-		if (time <= 1000000)return NLS.bind(ValMessages.TimeMicro, time/1000);
-		return getTimeMS(time/1000000);
-	}
-	
-	/**
-	 * Answer the CPU time consumed by this thread in nano seconds.
-	 * @return -1 if the time can not be determined.
-	 */
-	public static long getCPUTime(){
-		long cpuTime = -1;
-		ThreadMXBean tb = ManagementFactory.getThreadMXBean();
-		if (tb.isCurrentThreadCpuTimeSupported()){
-			cpuTime = tb.getCurrentThreadCpuTime();
-		}
-		return cpuTime;
-	}
-	
-	/**
-	 * Answer a units appropriate string for the time.
-	 * @param time time in milliseconds
-	 */
-	public static String getTimeMS(long time) {
-		if (time <= 1000)return ValMessages.TimeUnder;
-		if (time <= 60000)return NLS.bind(ValMessages.TimeSec, time/1000);
-		return NLS.bind(ValMessages.TimeMin, time/60000);
-	}
-
-	/**
-	 * Used in debugging so we can see what types of markers there are.
-	 * @param resource
-	 */
-	public static String listMarkers(IResource resource){
-		StringBuffer b = new StringBuffer(2000);
-		try {
-			IMarker[] markers = resource.findMarkers(null, true, IResource.DEPTH_ZERO);
-			for (IMarker m : markers){
-				Object o = m.getAttribute(IMarker.MESSAGE);
-				if (o != null){
-					b.append(o);
-				}
-				o = m.getAttribute(IMarker.SEVERITY);
-				if (o != null){
-					b.append(", Severity="); //$NON-NLS-1$
-					b.append(o);
-				}
-				b.append("; "); //$NON-NLS-1$
-			}
-		}
-		catch (CoreException e){
-			
-		}
-		return b.toString();
-	}
-	
-	/**
-	 * Answer true if they are the same. If they are both null then they are the same. 
-	 * @param s1 the string to compare. It can be null.
-	 * @param s2 the string to compare. It can be null.
-	 */
-	public static boolean same(String s1, String s2){
-		if (s1 == null && s2 == null)return true;
-		if (s1 == null)return false;
-		return s1.equals(s2);
-	}
-	
-	public static void niy(String msg){
-		if (msg == null)msg = "Sorry, this function is not implemented yet"; //$NON-NLS-1$
-		throw new RuntimeException(msg);
-	}
-	
-	/**
-	 * Answer the type as a human readable string. This is only used for debugging.
-	 * @param type
-	 * @return
-	 */
-	public static String resourceChangeEventType(int type){
-		StringBuffer b = new StringBuffer(200);
-		if ((type & IResourceChangeEvent.POST_BUILD) != 0)b.append("post_build "); //$NON-NLS-1$
-		if ((type & IResourceChangeEvent.POST_CHANGE) != 0)b.append("post_change "); //$NON-NLS-1$
-		if ((type & IResourceChangeEvent.PRE_BUILD) != 0)b.append("pre_build "); //$NON-NLS-1$
-		if ((type & IResourceChangeEvent.PRE_CLOSE) != 0)b.append("pre_close "); //$NON-NLS-1$
-		if ((type & IResourceChangeEvent.PRE_DELETE) != 0)b.append("pre_delete "); //$NON-NLS-1$
-		return b.toString();
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/NullValidator.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/NullValidator.java
deleted file mode 100644
index 9f057aa..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/NullValidator.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.validation.AbstractValidator;
-import org.eclipse.wst.validation.ValidationResult;
-import org.eclipse.wst.validation.ValidationState;
-
-/**
- * A null validator that is used in error cases. It simply no-ops.
- * @author karasiuk
- *
- */
-public class NullValidator extends AbstractValidator {
-
-	@Override
-	public ValidationResult validate(IResource resource, int kind, ValidationState state, IProgressMonitor monitor) {
-		return null;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/PerformanceMonitor.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/PerformanceMonitor.java
deleted file mode 100644
index f00e93d..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/PerformanceMonitor.java
+++ /dev/null
@@ -1,192 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.validation.IPerformanceMonitor;
-import org.eclipse.wst.validation.PerformanceCounters;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-public class PerformanceMonitor implements IPerformanceMonitor {
-	
-	private CollectionLevel _level = CollectionLevel.None;
-	private boolean			_summaryOnly;
-	
-	/**
-	 * Create a performance monitor.
-	 * 
-	 * @param traceTimes
-	 *            Should the monitor be turned on?
-	 * @param file
-	 *            Should the events be logged to a file. If this is null or the
-	 *            empty string the events will be written to stderr. Otherwise
-	 *            the events are appended to a file with this name.
-	 * 
-	 * @param logInSeconds
-	 *            Set this to true if you want the times that are logged in the
-	 *            trace file normalized to seconds. Otherwise the default units are used,
-	 *            milliseconds for elapsed time and nanoseconds for cpu time.
-	 */
-	public static PerformanceMonitor create(boolean traceTimes, String file, boolean logInSeconds){
-		PerformanceMonitor pm = null;
-		if (file == null || file.length() == 0)pm = new PerformanceMonitor();
-		else pm = new ToFile(file, logInSeconds);
-		
-		if (traceTimes)pm.setCollectionLevel(CollectionLevel.Default);
-		
-		return pm;
-	}
-	
-	private PerformanceMonitor(){};
-	
-	public CollectionLevel getCollectionLevel() {
-		return _level;
-	}
-
-	public void setCollectionLevel(CollectionLevel level) {
-		_level = level;
-	}
-
-	public List<PerformanceCounters> getPerformanceCounters(boolean asSummary) {
-		return new LinkedList<PerformanceCounters>();
-	}
-
-
-	public void resetPerformanceCounters() {
-	}
-
-	public boolean isCollecting() {
-		return _level != CollectionLevel.None;
-	}
-	
-	public boolean isSummaryOnly() {
-		return _summaryOnly;
-	}
-	
-	public void add(PerformanceCounters counters){
-		Tracing.write(counters.toString());
-	}
-	
-	public static class Counters{
-		String	name;
-		int 	numberInvocations;
-		
-		/** Elapsed time in milliseconds. */
-		long	elapsedTime;
-		
-		/** CPU time in nanoseconds, or -1 if unknown. */
-		long	cpuTime;		
-	}
-	
-	public static class ToFile extends PerformanceMonitor {
-		
-		private String 		_fileName;
-		private boolean		_logInSeconds;
-		
-		private PrintWriter _pw;
-		private static final String Comma=","; //$NON-NLS-1$
-		private static DateFormat 	_df = new SimpleDateFormat("HH:mm:ss.SSSS"); //$NON-NLS-1$
-		
-		private ToFile(String fileName, boolean logInSeconds){
-			_fileName = fileName;
-			_logInSeconds = logInSeconds;
-		}
-		
-		@Override
-		public synchronized void add(PerformanceCounters pc) {
-			try {
-				PrintWriter pw = getWriter();
-				pw.print(_df.format(pc.getWhen()) + Comma + 
-					pc.getValidatorId() + Comma + pc.getNumberInvocations() + Comma);
-				if (_logInSeconds){
-					double sec = ((double)pc.getElapsedTime()) / 1000.0;
-					pw.print(sec);
-					pw.print(Comma);
-					sec = ((double)pc.getCpuTime()) / 1000000000.0;
-					pw.print(sec);
-				}
-				else {
-					pw.print(pc.getElapsedTime()+Comma+pc.getCpuTime());
-				}
-				pw.println(Comma + pc.getResourceName());
-				pw.flush();
-			}
-			catch (IOException e){
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-		}
-		
-		private PrintWriter getWriter() throws IOException {
-			if (_pw == null){
-				_pw = new PrintWriter(new FileOutputStream(_fileName, true));
-				DateFormat df = DateFormat.getDateTimeInstance();
-				_pw.println("# " + NLS.bind(ValMessages.LogSession,  //$NON-NLS-1$
-					df.format(new Date(System.currentTimeMillis()))));
-				if (_logInSeconds)
-					_pw.println("# when, id, invocation count, elapsed time (seconds), cpu time (seconds), resource"); //$NON-NLS-1$
-				else 
-					_pw.println("# when, id, invocation count, elapsed time (ms), cpu time (ns), resource"); //$NON-NLS-1$
-			}
-			return _pw;
-			
-		}
-	}
-	
-	public static class Collecting extends PerformanceMonitor {
-		private List<PerformanceCounters>	_counters = new LinkedList<PerformanceCounters>();
-		
-		public void add(PerformanceCounters counters){
-			_counters.add(counters);
-		}
-		
-		public List<PerformanceCounters> getPerformanceCounters(boolean asSummary) {
-			if (asSummary){
-				Map<String, Counters> map = new HashMap<String, Counters>(40);
-				for (PerformanceCounters pc : _counters){
-					Counters c = map.get(pc.getValidatorId());
-					if (c == null){
-						c = new Counters();
-						c.name = pc.getValidatorName();
-						map.put(pc.getValidatorId(), c);
-					}
-					c.numberInvocations += pc.getNumberInvocations();
-					c.elapsedTime += pc.getElapsedTime();
-					if (pc.getCpuTime() != -1)c.cpuTime += pc.getCpuTime();
-					else c.cpuTime = -1;
-				}
-				List<PerformanceCounters> list = new LinkedList<PerformanceCounters>();
-				for (Map.Entry<String, Counters> me : map.entrySet()){
-					Counters c = me.getValue();
-					list.add(new PerformanceCounters(me.getKey(), c.name, null, c.numberInvocations, c.elapsedTime, c.cpuTime));
-				}
-				return list;
-			}
-			return _counters;
-		}
-		
-		public void resetPerformanceCounters() {
-			_counters.clear();
-		}
-
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/PrefConstants.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/PrefConstants.java
deleted file mode 100644
index 3bac075..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/PrefConstants.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-/**
- * The constants that are used in the preference store so save the validator configurations. 
- * <p>
- * The entries in the preference hierarchy are organized something like this:
- * <pre>
- * /instance/frame-work-id/saveAuto=true|false
- * /instance/frame-work-id/suspend=true|false
- * /instance/frame-work-id/vf.version=2
- * /instance/frame-work-id/filters/val-id/build=true|false
- * /instance/frame-work-id/filters/val-id/manual=true|false
- * /instance/frame-work-id/filters/val-id/version=someNumber
- * /instance/frame-work-id/filters/val-id/groups/0/type=include|exclude
- * /instance/frame-work-id/filters/val-id/groups/0/rules/0/type=file|fileext|projectNature|...
- * /instance/frame-work-id/filters/val-id/groups/0/rules/0/pattern=...
- * /instance/frame-work-id/filters/val-id/groups/0/rules/1/type=file|fileext|projectNature|...
- * /instance/frame-work-id/filters/val-id/groups/0/rules/1/pattern=...
- * </pre>
- * <p>
- * New approach
- * <pre>
- * vals/val-id/global=TF[version][len]delegate-id
- * vals/val-id/groups=[groups]
- * </pre>
- * 
- * 
- * @author karasiuk
- *
- */
-public interface PrefConstants {
-	
-	/** filters - node where all the filters are saved. */
-	String filters = "filters"; //$NON-NLS-1$
-	
-	/** build - is the validator enabled for builds? */
-	String build = "build"; //$NON-NLS-1$
-	
-	/** delegate - the delegating implementation to use */
-	String delegate = "delegate"; //$NON-NLS-1$
-	
-	/** disabled - the list of disabled resources in the project. */
-	String disabled = "disabled"; //$NON-NLS-1$
-	
-	/** exactMatch - must the content type match exactly? */
-	String exactMatch = "exactMatch"; //$NON-NLS-1$
-	
-	/** manual - is the validator enabled for manual validation? */
-	String manual = "manual"; //$NON-NLS-1$
-	
-	/** msgs - node where all the message severity mappings are stored. */
-	String msgs = "msgs"; //$NON-NLS-1$
-	
-	/** 
-	 * version - version of the filter definition. This is something that a client can use to keep track
-	 * of changes that they might make to their validation extension.
-	 */
-	String version = "version"; //$NON-NLS-1$
-	
-	/** vf.version - version of the validation framework. */
-	String frameworkVersion = "vf.version"; //$NON-NLS-1$
-	
-	/** groups - filter group. */
-	String groups = "groups"; //$NON-NLS-1$
-	
-	/** type - type of group, either include or exclude. */
-	String type = "type"; //$NON-NLS-1$
-	
-	/** type - the type of rule. */
-	String ruleType = "type"; //$NON-NLS-1$
-	
-	/** rules - a filter rule. */
-	String rules = "rules"; //$NON-NLS-1$
-	
-	/** pattern - the pattern part of the rule. */
-	String pattern = "pattern"; //$NON-NLS-1$
-	
-	/** saveAuto - can we save all the resources automatically? true/false */
-	String saveAuto = "saveAuto"; //$NON-NLS-1$
-	
-	/** stateTS - plug-in state time stamp */
-	String stateTS = "stateTS"; //$NON-NLS-1$
-	
-	/** suspend - suspend all validation? true/false */
-	String suspend = "suspend"; //$NON-NLS-1$
-	
-	/** case - is this case sensitive? */
-	String caseSensitive = "case"; //$NON-NLS-1$
-	
-	/** fileType - the type of file, see FilterRule.File */
-	String fileType = "fileType"; //$NON-NLS-1$
-	
-	/** confirmDialog - should we show a confirmation dialog when doing a manual validation? */
-	String confirmDialog = "confirmDialog"; //$NON-NLS-1$
-	
-	/** override - should we show projects to override the global preferences? */
-	String override = "override"; //$NON-NLS-1$
-	
-	/** vals - the validators are grouped under this node. */
-	String vals = "vals"; //$NON-NLS-1$
-	
-	/** global - some global validation settings. */
-	String global = "global"; //$NON-NLS-1$
-	
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/PreferencesWrapper.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/PreferencesWrapper.java
deleted file mode 100644
index 0f3a5e7..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/PreferencesWrapper.java
+++ /dev/null
@@ -1,431 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.atomic.AtomicReference;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.validation.ValidationFramework;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.osgi.service.prefs.BackingStoreException;
-import org.osgi.service.prefs.Preferences;
-
-/**
- * The subset of the IEclipsePreferences interface that the framework needs to
- * be able to persist preferences.
- * @author karasiuk
- *
- */
-public abstract class PreferencesWrapper {
-	
-	private static final WrapperManger _manager = new WrapperManger();
-	
-	/**
-	 * Answer the preferences for the project. If project is null answer the global preferences.
-	 * @param project
-	 * @param persistent if null the default preferences are returned, if True the persisted 
-	 * preferences are return and if False the transient preferences are returned.
-	 * @return
-	 */
-	public static PreferencesWrapper getPreferences(IProject project, Boolean persistent){
-		return _manager.get(project, persistent);
-	}
-		
-	/**
-	 * These are the names of the node entries.
-	 * @return
-	 * @throws BackingStoreException
-	 */
-	public abstract String[] childrenNames() throws BackingStoreException;
-	
-	public void flush() throws BackingStoreException {
-	}
-	
-	public abstract boolean getBoolean(String key, boolean def);
-	
-	public abstract String get(String key, String def);
-	
-	public abstract int getInt(String key, int def);
-	
-	public abstract long getLong(String key, long def);
-
-	public abstract String[] keys() throws BackingStoreException;
-
-	public boolean isPersistent(){
-		return false;
-	}
-
-	public boolean isTransient(){
-		return false;
-	}
-	
-	public abstract void put(String key, String value);
-	
-	public abstract void putBoolean(String key, boolean value);
-	
-	public abstract void putLong(String key, long value);
-	
-	public abstract void putInt(String key, int value);
-	
-	/**
-	 * Unlike the more sophisticated org.osgi.service.prefs.Preferences support, 
-	 * this is currently limited to simple node names.
-	 */
-	public abstract PreferencesWrapper node(String nodeName);
-	
-	public abstract boolean nodeExists();
-	
-	public abstract boolean nodeExists(String pathName)  throws BackingStoreException;
-	
-	public abstract void removeNode()  throws BackingStoreException;
-
-
-public final static class PreferencesWrapperPersistent extends PreferencesWrapper {
-	
-	private final Preferences _preferences;
-	
-	public PreferencesWrapperPersistent(Preferences preferences){
-		_preferences = preferences;
-	}
-	
-	@Override
-	public String[] childrenNames() throws BackingStoreException {
-		return _preferences.childrenNames();
-	}
-	
-	public void flush() throws BackingStoreException {
-		_preferences.flush();
-	}
-	
-	@Override
-	public String get(String key, String def) {
-		return _preferences.get(key, def);
-	}
-	
-	@Override
-	public boolean getBoolean(String key, boolean def) {
-		return _preferences.getBoolean(key, def);
-	}
-	
-	@Override
-	public int getInt(String key, int def) {
-		return _preferences.getInt(key, def);
-	}
-	
-	@Override
-	public long getLong(String key, long def) {
-		return _preferences.getLong(key, def);
-	}
-	
-	@Override
-	public String[] keys() throws BackingStoreException {
-		return _preferences.keys();
-	}
-	
-	@Override
-	public boolean isPersistent() {
-		return true;
-	}
-	
-	@Override
-	public void put(String key, String value) {
-		_preferences.put(key, value);
-	}
-	
-	@Override
-	public PreferencesWrapper node(String path) {
-		Preferences prefs = _preferences.node(path);
-		return new PreferencesWrapperPersistent(prefs);
-	}
-	
-	@Override
-	public boolean nodeExists() {
-		try {
-			return nodeExists(""); //$NON-NLS-1$
-		}
-		catch (BackingStoreException e){
-		
-		}
-		return false;
-	}
-	
-	@Override
-	public boolean nodeExists(String pathName) throws BackingStoreException  {
-		return _preferences.nodeExists(pathName);
-	}
-	
-	public void putBoolean(String key, boolean value) {
-		_preferences.putBoolean(key, value);	
-	}
-	
-	public void putLong(String key, long value){
-		_preferences.putLong(key, value);
-	}
-	
-	@Override
-	public void putInt(String key, int value) {
-		_preferences.putInt(key, value);
-	}
-	
-	@Override
-	public void removeNode() throws BackingStoreException {
-		_preferences.removeNode();
-	}
-}
-
-public final static class PreferencesWrapperTransient extends PreferencesWrapper {
-	
-	private final PreferencesWrapperTransient _parent;
-	private final Map<String, String> _children = Collections.synchronizedMap(new HashMap<String, String>(10));
-	private final Map<String, PreferencesWrapperTransient> _nodes = Collections.synchronizedMap(new HashMap<String, PreferencesWrapperTransient>(10));
-	
-	public PreferencesWrapperTransient(PreferencesWrapperTransient parent){
-		_parent = parent;
-	}
-	
-	public PreferencesWrapperTransient(PreferencesWrapper pw, PreferencesWrapperTransient parent) {
-		_parent = parent;
-		try {
-			for (String key : pw.keys()){
-				put(key, pw.get(key, null));
-			}
-			
-			
-			for (String nodeName : pw.childrenNames()){
-				PreferencesWrapper p = pw.node(nodeName);
-				PreferencesWrapperTransient pwt = new PreferencesWrapperTransient(p, this);
-				_nodes.put(nodeName, pwt);
-			}
-		}
-		catch (BackingStoreException e){
-			
-		}
-	}
-
-	@Override
-	public String[] childrenNames() throws BackingStoreException {
-		Set<String> keys = _nodes.keySet();
-		String names[] = new String[keys.size()];
-		keys.toArray(names);
-		return names;
-	}
-	
-	@Override
-	public String get(String key, String def) {
-		String value = _children.get(key);
-		if (value != null)return value;
-		return def;
-	}
-	
-	@Override
-	public boolean getBoolean(String key, boolean def) {
-		String value = _children.get(key);
-		if (value == null)return def;
-		value = value.toLowerCase();
-		if ("true".equals(value))return true; //$NON-NLS-1$
-		if ("false".equals(value))return false; //$NON-NLS-1$
-		return def;
-	}
-	
-	@Override
-	public int getInt(String key, int def) {
-		String value = _children.get(key);
-		if (value == null)return def;
-		try {
-			return Integer.parseInt(value);
-		}
-		catch (NumberFormatException e){
-		}
-		return def;
-	}
-	
-	@Override
-	public long getLong(String key, long def) {
-		String value = _children.get(key);
-		if (value == null)return def;
-		try {
-			return Long.parseLong(value);
-		}
-		catch (NumberFormatException e){
-		}
-		return def;
-	}
-	
-	@Override
-	public boolean isTransient() {
-		return true;
-	}
-	
-	@Override
-	public synchronized String[] keys() throws BackingStoreException {
-		String[] keys = new String[_children.size()];
-		_children.keySet().toArray(keys);
-		return keys;
-	}
-	
-	@Override
-	public synchronized PreferencesWrapper node(String name) {
-		PreferencesWrapperTransient pw  = _nodes.get(name);
-		if (pw != null)return pw;
-		pw = new PreferencesWrapperTransient(this);
-		_nodes.put(name, pw);
-		return pw;
-	}
-	
-	@Override
-	public boolean nodeExists() {
-		return true;
-	}
-	
-	@Override
-	public boolean nodeExists(String key) throws BackingStoreException {
-		PreferencesWrapperTransient pw = _nodes.get(key);
-		if (pw != null)return true;
-		return false;
-	}
-	
-	@Override
-	public void put(String key, String value) {
-		_children.put(key, value);
-	}
-	
-	@Override
-	public void putBoolean(String key, boolean bool) {
-		String value = bool ? "true" : "false";  //$NON-NLS-1$//$NON-NLS-2$
-		_children.put(key, value);
-	}
-	
-	@Override
-	public void putInt(String key, int value) {
-		_children.put(key, String.valueOf(value));
-	}
-	
-	@Override
-	public void putLong(String key, long value) {
-		_children.put(key, String.valueOf(value));
-	}
-	
-	@Override
-	public void removeNode() throws BackingStoreException {
-		if (_parent == null)return;
-		_parent.removeNode(this);
-	}
-	
-	private synchronized void removeNode(PreferencesWrapperTransient node){
-		String key = null;
-		for (Map.Entry<String, PreferencesWrapperTransient> me : _nodes.entrySet()){
-			if (me.getValue().equals(node)){
-				key = me.getKey();
-				break;
-			}
-		}
-		if (key != null)_nodes.remove(key);
-	}
-}
-
-private final static class WrapperManger implements IProjectChangeListener {
-	
-	private final Map<IProject, PreferencesWrapper> _map = new HashMap<IProject, PreferencesWrapper>(20); 
-	private final AtomicReference<PreferencesWrapper> _global = new AtomicReference<PreferencesWrapper>();
-	
-	private WrapperManger(){
-		EventManager.getManager().addProjectChangeListener(this);
-	}
-	
-	/**
-	 * Currently this object never goes away, but if that was ever to change then we would need to dispose it.
-	 */
-	@Override
-	protected void finalize() throws Throwable {
-		dispose();
-	}
-	
-	public void dispose(){
-		EventManager.getManager().removeProjectChangeListener(this);
-	}
-
-	public PreferencesWrapper get(IProject project, Boolean persistent) {
-		if (project == null)return globalPreferences(persistent);
-		PreferencesWrapper pw = null;
-		synchronized(_map){
-			pw = _map.get(project);
-		}
-		
-		if (pw != null && (persistent == null || persistent == pw.isPersistent()))return pw;
-		
-		if (pw == null)pw = new PreferencesWrapperPersistent(ValidationPlugin.getPreferences(project));
-		if (persistent != null && persistent && pw.isTransient())pw = new PreferencesWrapperPersistent(ValidationPlugin.getPreferences(project));
-		if (persistent != null && !persistent && pw.isPersistent())pw = new PreferencesWrapperTransient(pw, null);
-		
-		synchronized(_map){
-			_map.put(project, pw);
-		}
-		
-		return pw;
-	}
-
-	/**
-		 * Answer the appropriate global preferences.
-		 * 
-		 * @param persistent
-		 *            If null then answer the current saved global preferences,
-		 *            creating a new persistent one if there is none. If True,
-		 *            then ensure that the preferences are persistent. If False,
-		 *            ensure that the preferences are transient.
-		 * @return
-		 */
-	private PreferencesWrapper globalPreferences(Boolean persistent) {
-		PreferencesWrapper pw = _global.get();
-		
-		while(pw == null){
-			PreferencesWrapper newPW = createGlobal(persistent);
-			if (_global.compareAndSet(null, newPW))pw = newPW;
-			else pw = _global.get();
-		}
-		
-		while (persistent != null && !persistent && !pw.isTransient()){
-			PreferencesWrapper newPW = new PreferencesWrapperTransient(pw, null);
-			if (_global.compareAndSet(pw, newPW))pw = newPW;
-			else pw = _global.get();
-		}
-		
-		while (persistent != null && persistent && !pw.isPersistent()){
-			PreferencesWrapper newPW = new PreferencesWrapperPersistent(ValidationFramework.getDefault().getPreferenceStore());
-			if (_global.compareAndSet(pw, newPW))pw = newPW;
-			else pw = _global.get();			
-		}
-		return pw;
-	}
-	
-	private PreferencesWrapper createGlobal(Boolean persistent){
-		PreferencesWrapper pw = new PreferencesWrapperPersistent(ValidationFramework.getDefault().getPreferenceStore());
-		if (persistent == null || persistent)return pw;
-		return new PreferencesWrapperTransient(pw, null);
-	}
-
-	public void projectChanged(IProject project, int type) {
-		int interested = IProjectChangeListener.ProjectClosed | IProjectChangeListener.ProjectDeleted;
-		if ((type & interested) != 0){
-			synchronized (_map) {
-				_map.remove(project);
-			}
-		}
-		
-	}
-	
-}
-
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ProjectUnavailableError.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ProjectUnavailableError.java
deleted file mode 100644
index 03e2b65..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ProjectUnavailableError.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IProject;
-
-/**
- * This internal error is used to signal that a project is now unavailable.
- * <p>
- * We could be in the middle of validating a large project, and the project could be closed. 
- * This error is used to "exit" the validation framework.
- * <p>
- * This is an error rather than a runtime exception, because some parts of Eclipse like to
- * trap RuntimeExceptions and log them.
- * @author karasiuk
- *
- */
-public class ProjectUnavailableError extends Error {
-	
-	private IProject _project;
-
-	private static final long serialVersionUID = 200801281118L;
-	
-	public ProjectUnavailableError(IProject project){
-		super();
-		_project = project;
-	}
-
-	public IProject getProject() {
-		return _project;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ResourceUnavailableError.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ResourceUnavailableError.java
deleted file mode 100644
index 9543670..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ResourceUnavailableError.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IResource;
-
-/**
- * This internal error is used to signal that a resource is now unavailable.
- * <p>
- * This error is used to "exit" the validation framework. 
- * <p>
- * This is an error rather than a runtime exception, because some parts of Eclipse like to
- * trap RuntimeExceptions and log them.
- * @author karasiuk
- *
- */
-public class ResourceUnavailableError extends Error {
-
-	private static final long serialVersionUID = 200801290853L;
-	
-	private IResource _resource;
-	
-	public ResourceUnavailableError(IResource resource){
-		super();
-		_resource = resource;
-	}
-
-	public IResource getResource() {
-		return _resource;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Serializer.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Serializer.java
deleted file mode 100644
index 22da768..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Serializer.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-/**
- * A simple encoder that knows how to convert booleans, integers and strings, into a single string.
- * 
- * @see Deserializer
- * @author karasiuk
- *
- */
-public class Serializer {
-	private StringBuffer _buffer;
-	
-	public Serializer(int size){
-		_buffer = new StringBuffer(size);
-	}
-	
-	public void put(boolean bool){
-		_buffer.append(bool ? 'T' : 'F');
-	}
-	
-	public void put(String string){
-		put(string.length());
-		_buffer.append(string);
-	}
-	
-	public void put(int anInt){
-		String s = String.valueOf(anInt);
-		int len = s.length();
-		_buffer.append(len-1);
-		_buffer.append(s);
-	}
-	
-	@Override
-	public String toString() {
-		return _buffer.toString();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/SummaryReporter.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/SummaryReporter.java
deleted file mode 100644
index 5a19332..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/SummaryReporter.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.validation.internal.operations.WorkbenchReporter;
-import org.eclipse.wst.validation.internal.provisional.core.IMessage;
-import org.eclipse.wst.validation.internal.provisional.core.IValidator;
-
-/**
- * This class extends the workbench reporter by capturing some summary information about any added
- * messages.
- * @author karasiuk
- *
- */
-public class SummaryReporter extends WorkbenchReporter {
-	
-	private int _severityHigh;
-	private int _severityNormal;
-	private int	_severityLow;
-
-	public SummaryReporter(IProject project, IProgressMonitor monitor) {
-		super(project, monitor);
-	}
-	
-	@Override
-	public void addMessage(IValidator validator, IMessage message) {
-		super.addMessage(validator, message);
-		switch (message.getSeverity()){
-		case IMessage.HIGH_SEVERITY: 
-			_severityHigh++;
-			break;
-		case IMessage.NORMAL_SEVERITY: 
-			_severityNormal++;
-			break;
-		case IMessage.LOW_SEVERITY:
-			_severityLow++;
-			break;
-		}
-	}
-
-	public int getSeverityHigh() {
-		return _severityHigh;
-	}
-
-	public int getSeverityNormal() {
-		return _severityNormal;
-	}
-
-	public int getSeverityLow() {
-		return _severityLow;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Tracing.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Tracing.java
deleted file mode 100644
index 77e49cb..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/Tracing.java
+++ /dev/null
@@ -1,208 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * Control the tracing that this plug-in performs. This is used for service.
- * @author karasiuk
- *
- */
-public final class Tracing {
-	
-	private final static DateFormat _df = new SimpleDateFormat("HH:mm:ss.SSSS"); //$NON-NLS-1$
-	private final static boolean	_isLogging = ValidationPlugin.getPlugin().isDebugging();
-	private final static boolean	_traceMatches = Misc.debugOptionAsBoolean(DebugConstants.TraceMatches);
-	private final static boolean	_traceV1 = Misc.debugOptionAsBoolean(DebugConstants.TraceV1);
-	private final static String		_extraValDetail = Platform.getDebugOption(DebugConstants.ExtraValDetail);
-	private final static int 		_tracingLevel;
-	
-	private final static String		_filter = Platform.getDebugOption(DebugConstants.FilterAllExcept);
-	
-	static {
-		String traceLevel = Platform.getDebugOption(DebugConstants.TraceLevel);
-		int level = 0;
-		if (traceLevel != null){
-			try {
-				level = Integer.parseInt(traceLevel);
-			}
-			catch (Exception e){
-			}
-		}
-		_tracingLevel = level;
-	}
-	
-	/**
-	 * Answer true if the filters allow this validator to be enabled. Normally this method will answer true.
-	 * It is only when filters are activated via the debugging options, that this method might return false.
-	 * This is used to aid in debugging by making it look like only one validator has been registered.
-	 * 
-	 * @param validatorId the validator id.
-	 * @return true if the validator should be registered via an extension point.
-	 */
-	public static boolean isEnabled(String validatorId){
-		if (_filter == null || _filter.length() == 0)return true;
-		return (_filter.equals(validatorId));		
-	}
-	
-	/**
-	 * Are we in logging/debugging mode?
-	 */
-	public static boolean isLogging(){
-		return _isLogging;
-	}
-	
-	/**
-	 * Answer true if we are in logging mode, and if the current logging level is greater than or
-	 * equal to level.
-	 * @param level The logging level that we are testing. The higher the level the more verbose
-	 * the tracing.
-	 */
-	public static boolean isLogging(int level){
-		if (_isLogging){
-			return _tracingLevel >= level;
-		}
-		return false;
-	}
-	
-	public static boolean isTraceMatches(){
-		return _traceMatches;
-	}
-	
-	public static boolean isTraceV1(){
-		return _traceV1;
-	}
-	
-	public static boolean matchesExtraDetail(String validatorId){
-		if (_extraValDetail == null)return false;
-		return _extraValDetail.equals(validatorId);
-	}
-
-	/**
-	 * Write a line to the console for debugging, if in debugging mode.
-	 * @param line
-	 */
-	public static void log(String line){
-		if (isLogging())write(line);
-	}
-	
-	public static void log(Object... parts){
-		if (isLogging()){
-			StringBuffer b = new StringBuffer(200);
-			for (Object p : parts)b.append(p);
-			write(b.toString());
-		}
-	}
-
-	/**
-	 * Write a line to the log. Include a time stamp with the line.
-	 * @param line
-	 */
-	public static void write(String line){
-		System.err.println(timestampIt(line));
-	}
-
-	public static String timestampIt(String line){
-		Date date = new Date();
-		String thread = Thread.currentThread().getName();
-		return _df.format(date) + " " + thread + " " + line;  //$NON-NLS-1$//$NON-NLS-2$		
-	}
-
-	/**
-	 * If we are in logging mode, log the item, and then reset the string buffer.
-	 */
-	public static void log(StringBuffer b){
-		log(b.toString());
-		b.setLength(0);
-	}
-
-	/**
-	 * This method doesn't do anything, and will be removed.
-	 * 
-	 * @deprecated
-	 */
-	public static void setForceLogging(boolean forceLogging) {
-	}
-	
-	/**
-	 * Log up to maxNumber deltas to the log.
-	 * @param delta The deltas to log.
-	 * @param maxNumber The maximum number of deltas to log.
-	 */
-	public static void logResourceDeltas(IResourceDelta delta, int maxNumber){
-		if (!isLogging())return;
-		if (delta == null)Tracing.log("  ResourceDelta: null"); //$NON-NLS-1$
-		else {
-			DeltaLogger logger = new DeltaLogger(maxNumber);
-			try {
-				delta.accept(logger);
-				if (logger.getCount() == 0)Tracing.log("  ResourceDelta: no deltas"); //$NON-NLS-1$
-			}
-			catch (CoreException e){
-				// eat it
-			}
-		}
-	}
-	
-	/**
-	 * A debugging class that prints out some resource delta's.
-	 * @author karasiuk
-	 *
-	 */
-	private final static class DeltaLogger implements IResourceDeltaVisitor {
-		
-		private final int 	_max;
-		private int 		_count;
-		public int getCount() {
-			return _count;
-		}
-
-		private StringBuffer _b = new StringBuffer(200);
-		
-		public DeltaLogger(int max){
-			_max = max;
-		}
-
-		public boolean visit(IResourceDelta delta) throws CoreException {
-			if (_count++ > _max)return false;
-			int kind = delta.getKind();
-			String type = "unknown"; //$NON-NLS-1$
-			switch (kind){
-			case IResourceDelta.ADDED:
-				type = "Added"; //$NON-NLS-1$
-				break;
-			case IResourceDelta.CHANGED:
-				type = "Changed"; //$NON-NLS-1$
-				break;
-			case IResourceDelta.REMOVED:
-				type = "Removed"; //$NON-NLS-1$
-				break;				
-			}
-			_b.append("  ResourceDelta "); //$NON-NLS-1$
-			_b.append(type);
-			_b.append(' ');
-			_b.append(delta.getResource());
-			Tracing.log(_b);
-			return true;
-		}
-		
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValBuilderJob.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValBuilderJob.java
deleted file mode 100644
index 5aafeee..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValBuilderJob.java
+++ /dev/null
@@ -1,345 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.LinkedList;
-import java.util.Queue;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.IResourceProxy;
-import org.eclipse.core.resources.IResourceProxyVisitor;
-import org.eclipse.core.resources.IResourceVisitor;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.resources.WorkspaceJob;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.SubMonitor;
-import org.eclipse.wst.validation.DependentResource;
-import org.eclipse.wst.validation.Friend;
-import org.eclipse.wst.validation.IDependencyIndex;
-import org.eclipse.wst.validation.ValidationEvent;
-import org.eclipse.wst.validation.ValidationFramework;
-import org.eclipse.wst.validation.ValidationState;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.internal.model.IValidatorVisitor;
-import org.eclipse.wst.validation.internal.operations.ValidationBuilder;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-
-/**
- * Run all the v2 validators through this job.
- * <p>
- * This is the main class for supporting build based validation. When triggered it looks at all of the
- * resource changes and determines what needs to be validated. 
- * </p>
- * @author karasiuk
- *
- */
-public final class ValBuilderJob extends WorkspaceJob {
-	
-	private static ValBuilderJob _job;
-	private static Queue<ValidationRequest> _work = new LinkedList<ValidationRequest>();
-	
-	private final ValOperation _operation = new ValOperation();
-		
-	/** The types of changes we are interested in. */
-	private final static int	InterestedFlags = IResourceDelta.CONTENT | IResourceDelta.ENCODING |
-		IResourceDelta.MOVED_FROM | IResourceDelta.MOVED_TO;
-	
-	public static synchronized void validateProject(IProject project, IResourceDelta delta, int buildKind){
-		ValidationRequest request = new ValidationRequest(project, delta, buildKind);
-		if (_job == null){
-			_job = new ValBuilderJob();
-			_job.add(request);
-			_job.schedule();
-		}
-		else {
-			_job.add(request);
-		}
-	}
-	
-	private static synchronized ValidationRequest getRequest(){
-		ValidationRequest request = _work.poll();
-		if (request == null){
-			_job = null;
-		}
-		return request;
-	}
-	
-	/**
-	 * Each validation run is done in it's own job.
-	 * 
-	 * @param project the project that is being validated
-	 * @param delta the delta that is being validated. This may be null, in which case we do a 
-	 * full validation of the project.
-	 * 
-	 * @param buildKind the kind of build.
-	 * @see org.eclipse.core.resources.IncrementalProjectBuilder#AUTO_BUILD
-	 * @see org.eclipse.core.resources.IncrementalProjectBuilder#CLEAN_BUILD
-	 * @see org.eclipse.core.resources.IncrementalProjectBuilder#FULL_BUILD
-	 * @see org.eclipse.core.resources.IncrementalProjectBuilder#INCREMENTAL_BUILD
-	 * 
-	 * @param operation some global context for the validation operation
-	 * 
-	 */
-	private ValBuilderJob(){
-		super(ValMessages.JobName);
-	}
-	
-	private void add(ValidationRequest request){
-		_work.add(request);
-	}
-	
-	@Override
-	public boolean belongsTo(Object family) {
-		if (family == ResourcesPlugin.FAMILY_MANUAL_BUILD)return true;
-		if (family == ValidationBuilder.FAMILY_VALIDATION_JOB){
-			return true;
-		}
-			
-		return super.belongsTo(family);
-	}
-
-	@Override
-	public IStatus runInWorkspace(IProgressMonitor monitor) {
-		Tracing.log("ValBuilderJob-01: Starting"); //$NON-NLS-1$
-		
-		try {
-			startingValidation(monitor);
-			
-			ValidationRequest request = getRequest();
-			while(request != null){
-				run(request, monitor);
-				request = getRequest();
-			}
-		}
-		finally {
-			finishingValidation(monitor);
-		}
-		
-		Tracing.log("ValBuilderJob-02: Finished"); //$NON-NLS-1$
-		return Status.OK_STATUS;
-	}
-
-	private void startingValidation(IProgressMonitor monitor) {
-        IValidatorVisitor startingVisitor = new IValidatorVisitor(){
-
-            public void visit(Validator validator, IProject project, ValType valType, 
-                ValOperation operation, IProgressMonitor monitor) {
-                
-                validator.validationStarting(project, operation.getState(), monitor);                   
-            }               
-        };
-
-        ValManager.getDefault().accept(startingVisitor, null, ValType.Build, getOperation(), monitor);
-	}
-	
-	private void finishingValidation(IProgressMonitor monitor) {
-		
-		IValidatorVisitor finishedVisitor = new IValidatorVisitor(){
-
-		    public void visit(Validator validator, IProject project, ValType valType,
-		      ValOperation operation, IProgressMonitor monitor) {
-
-		      validator.validationFinishing(project, operation.getState(), monitor);              
-		    }           
-		  };
-		  ValManager.getDefault().accept(finishedVisitor, null, ValType.Build, getOperation(), monitor);
-	}
-
-	private void run(ValidationRequest request, IProgressMonitor monitor){
-		setName(ValMessages.JobName + " " + request.getProject().getName()); //$NON-NLS-1$
-		try {		
-	        IValidatorVisitor startingVisitor = new IValidatorVisitor(){
-
-	            public void visit(Validator validator, IProject project, ValType valType, 
-	                ValOperation operation, IProgressMonitor monitor) {
-	                
-	                validator.validationStarting(project, operation.getState(), monitor);                   
-	            }               
-	        };
-
-	        ValManager.getDefault().accept(startingVisitor, request.getProject(), ValType.Build, getOperation(), monitor);
-		  
-			if (request.getDelta() == null)fullBuild(request, monitor);
-			else deltaBuild(request, monitor);
-
-			
-		}
-		catch (ProjectUnavailableError e){
-			ValidationPlugin.getPlugin().handleProjectUnavailableError(e);
-		}
-		catch (ResourceUnavailableError e){
-			ValidationPlugin.getPlugin().handleResourceUnavailableError(e);
-		}
-		catch (CoreException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		finally {
-		  IValidatorVisitor finishedVisitor = new IValidatorVisitor(){
-
-		    public void visit(Validator validator, IProject project, ValType valType,
-		      ValOperation operation, IProgressMonitor monitor) {
-
-		      validator.validationFinishing(project, operation.getState(), monitor);              
-		    }           
-		  };
-          ValManager.getDefault().accept(finishedVisitor, request.getProject(), ValType.Build, getOperation(), monitor);
-		}
-		
-	}
-
-	private void deltaBuild(ValidationRequest request, IProgressMonitor monitor) throws CoreException {
-		ResourceCounter counter = new ResourceCounter();
-		request.getDelta().accept(counter);
-		SubMonitor subMonitor = SubMonitor.convert(monitor, counter.getCount());
-		Visitor vistitor = new Visitor(request, subMonitor, monitor, getOperation());
-		request.getDelta().accept(vistitor);		
-	}
-
-	private void fullBuild(ValidationRequest request, IProgressMonitor monitor) throws CoreException {
-		ResourceCounter counter = new ResourceCounter();
-		request.getProject().accept(counter, 0);
-		SubMonitor subMonitor = SubMonitor.convert(monitor, counter.getCount());
-		Visitor vistitor = new Visitor(request, subMonitor, monitor, getOperation());
-		request.getProject().accept(vistitor);
-		
-	}
-	
-	private ValOperation getOperation(){
-		return _operation;
-	}
-
-	static final class ResourceCounter implements IResourceProxyVisitor, IResourceDeltaVisitor {
-		
-		private int _count;
-
-		public int getCount() {
-			return _count;
-		}
-
-		public boolean visit(IResourceProxy proxy) throws CoreException {
-			_count++;
-			return true;
-		}
-
-		public boolean visit(IResourceDelta delta) throws CoreException {
-			_count++;
-			return true;
-		}		
-	}
-	
-	static final class ValidationRequest {
-		/** The project that is being built. */
-		private final IProject 			_project;
-		
-		/** The resource delta that triggered the build, it will be null for a full build. */
-		private final IResourceDelta	_delta;
-		
-		/** 
-		 * The kind of build.
-		 * 
-		 *  @see org.eclipse.core.resources.IncrementalProjectBuilder
-		 */
-		private final int					_buildKind;
-		
-		public ValidationRequest(IProject project, IResourceDelta delta, int buildKind){
-			_project = project;
-			_delta = delta;
-			_buildKind = buildKind;
-		}
-
-		public IProject getProject() {
-			return _project;
-		}
-
-		public IResourceDelta getDelta() {
-			return _delta;
-		}
-
-		public int getBuildKind() {
-			return _buildKind;
-		}
-	}
-	
-	private final static class Visitor implements IResourceDeltaVisitor, IResourceVisitor{
-		
-		private final ValidationRequest 	_request;
-		private final SubMonitor 			_subMonitor;
-		private final IProgressMonitor 		_monitor;
-		private final ValOperation			_operation;
-		
-		public Visitor(ValidationRequest request, SubMonitor subMonitor, IProgressMonitor monitor, ValOperation operation){
-			_request = request;
-			_subMonitor = subMonitor;
-			_monitor = monitor;
-			_operation = operation;
-		}
-		
-		public boolean visit(IResource resource) throws CoreException {
-			try {
-				if (DisabledResourceManager.getDefault().isDisabled(resource)){
-					MarkerManager.getDefault().deleteMarkers(resource, _operation.getStarted(), IResource.DEPTH_INFINITE);
-					return false;
-				}
-				ValManager.getDefault().validate(_request.getProject(), resource, IResourceDelta.NO_CHANGE, ValType.Build, 
-					_request.getBuildKind(), _operation, _subMonitor.newChild(1));
-			}
-			catch (ResourceUnavailableError e){
-				if (Tracing.isLogging())Tracing.log("ValBuilderJob-02: " + e.toString()); //$NON-NLS-1$
-				return false;
-			}
-			return true;
-		}
-		
-		@SuppressWarnings("deprecation")
-		public boolean visit(IResourceDelta delta) throws CoreException {
-			IResource resource = delta.getResource();
-			if (DisabledResourceManager.getDefault().isDisabled(resource)){
-				MarkerManager.getDefault().deleteMarkers(resource, _operation.getStarted(), IResource.DEPTH_INFINITE);
-				return false;
-			}
-			int kind = delta.getKind();
-			boolean isChanged = (kind & IResourceDelta.CHANGED) != 0;
-			if (isChanged &&  (delta.getFlags() & InterestedFlags) == 0)return true;
-			
-			if ((kind & (IResourceDelta.ADDED | IResourceDelta.CHANGED)) != 0){
-				ValManager.getDefault().validate(_request.getProject(), resource, delta.getKind(), ValType.Build, 
-					_request.getBuildKind(), _operation, _subMonitor.newChild(1));
-			}
-					
-			IDependencyIndex index = ValidationFramework.getDefault().getDependencyIndex();
-			if (index.isDependedOn(resource)){
-				MarkerManager mm = MarkerManager.getDefault();
-				for (DependentResource dr : index.get(resource)){
-					Validator val = dr.getValidator();
-					if (Friend.shouldValidate(val, dr.getResource(), ValType.Build, new ContentTypeWrapper())){
-						_operation.getState().put(ValidationState.TriggerResource, resource);
-						ValidationEvent event = new ValidationEvent(dr.getResource(), IResourceDelta.NO_CHANGE, delta);
-						if (val.shouldClearMarkers(event))mm.clearMarker(dr.getResource(), val); 
-						ValManager.getDefault().validate(val, _operation, dr.getResource(), 
-							IResourceDelta.NO_CHANGE, _monitor, event);
-					}
-				}
-			}
-					
-			return true;
-		}
-
-		
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValConstants.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValConstants.java
deleted file mode 100644
index ab2aebf..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValConstants.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-public interface ValConstants {
-	/** problem marker for version 2 of the validation framework. */
-	String ProblemMarker =  ValidationPlugin.PLUGIN_ID +".problemmarker2"; //$NON-NLS-1$
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValManager.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValManager.java
deleted file mode 100644
index 9214a19..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValManager.java
+++ /dev/null
@@ -1,1291 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.BitSet;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeSet;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentMap;
-import java.util.concurrent.atomic.AtomicInteger;
-import java.util.concurrent.atomic.AtomicReference;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceStatus;
-import org.eclipse.core.resources.IResourceVisitor;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.QualifiedName;
-import org.eclipse.core.runtime.SafeRunner;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.SubMonitor;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.common.project.facet.core.FacetedProjectFramework;
-import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent;
-import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener;
-import org.eclipse.wst.validation.Friend;
-import org.eclipse.wst.validation.IPerformanceMonitor;
-import org.eclipse.wst.validation.IValidatorGroupListener;
-import org.eclipse.wst.validation.PerformanceCounters;
-import org.eclipse.wst.validation.ValidationEvent;
-import org.eclipse.wst.validation.ValidationFramework;
-import org.eclipse.wst.validation.ValidationResult;
-import org.eclipse.wst.validation.ValidationState;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.internal.model.GlobalPreferences;
-import org.eclipse.wst.validation.internal.model.GlobalPreferencesValues;
-import org.eclipse.wst.validation.internal.model.IValidatorVisitor;
-import org.eclipse.wst.validation.internal.model.ProjectPreferences;
-import org.eclipse.wst.validation.internal.operations.ManualValidatorsOperation;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * A central place to keep track of all the validators.
- * @author karasiuk
- *
- */
-public final class ValManager implements IValChangedListener, IFacetedProjectListener, IProjectChangeListener {
-	
-	/**
-	 * Projects may be allowed to override the global validation settings. If that is the case then those
-	 * project specific settings are saved here. If the key exists, but the value is null, then that
-	 * means that the project has been checked and it does not have any specific settings.
-	 */
-	private final Map<IProject, ProjectPreferences> _projectPreferences = 
-		Collections.synchronizedMap(new HashMap<IProject, ProjectPreferences>(50));
-	
-	private final AtomicReference<GlobalPreferences> _globalPreferences = new AtomicReference<GlobalPreferences>();
-		
-	/**
-	 * This number increases each time any of the validation configurations change. It is used to determine
-	 * if information that we have cached in the ValProperty is stale or not. This starts off at zero, each time
-	 * the workbench is started.
-	 */
-	private final AtomicInteger _configNumber = new AtomicInteger();
-	
-	private final ValidatorIdManager _idManager = new ValidatorIdManager();
-	private final ValidatorCache 	_cache = new ValidatorCache();
-		
-	private static final QualifiedName StatusBuild = new QualifiedName(ValidationPlugin.PLUGIN_ID, "sb"); //$NON-NLS-1$
-	private static final QualifiedName StatusManual = new QualifiedName(ValidationPlugin.PLUGIN_ID, "sm"); //$NON-NLS-1$
-
-	
-	public static ValManager getDefault(){
-		return Singleton.valManager;
-	}
-	
-	private ValManager(){
-		ValPrefManagerGlobal.getDefault().addListener(this);
-		ValPrefManagerProject.addListener(this);
-		FacetedProjectFramework.addListener(this, IFacetedProjectEvent.Type.PROJECT_MODIFIED);
-		EventManager.getManager().addProjectChangeListener(this);
-	}
-	
-	/**
-	 * This needs to be called if the ValManager is ever deleted.
-	 */
-	public void dispose(){
-		// currently nobody calls this method, because this instance is never removed, but the method is
-		// here for completeness none the less.
-		ValPrefManagerGlobal.getDefault().removeListener(this);
-		ValPrefManagerProject.removeListener(this);
-		FacetedProjectFramework.removeListener(this);
-		EventManager.getManager().removeProjectChangeListener(this);	
-	}
-	
-	/**
-	 * Answer all the registered validators. If you are planning on making changes to the validators,
-	 * and then saving them in a preference store then you probably want the getValidatorsCopy method.
-	 * Because if you make changes to the original validators, and since we only save differences,
-	 * there won't be any differences. 
-	 * 
-	 * @return Answer the validators in name sorted order. Answer an empty array if there are no validators.
-	 * 
-	 * @see #getValidatorsCopy()
-	 */
-	public Validator[] getValidators(){
-		return getValidators(null);
-	}
-	
-	/**
-	 * Answer copies of all the registered validators. If you are going to be making changes to the validators
-	 * and then saving them backing into the preference store, then this is the method to use.
-	 * 
-	 * @return Answer an empty array if there are no validators.
-	 */
-	public Validator[] getValidatorsCopy(){
-		Validator[] orig = getValidators();
-		Validator[] copy = new Validator[orig.length];
-		for (int i=0; i<orig.length; i++)copy[i] = orig[i].copy();
-		return copy;
-	}
-	
-	/**
-	 * Answer all the validators for the given project.
-	 * <p>
-	 * Individual projects may override the global validation preference
-	 * settings. If the project has it's own settings, then those validators are
-	 * returned via this method.
-	 * </p>
-	 * <p>
-	 * The following approach is used. For version 1 validators, the validator
-	 * is only returned if it is defined to operate on this project type. This
-	 * is the way that the previous version of the framework did it. For version
-	 * 2 validators, they are all returned.
-	 * </p>
-	 * 
-	 * @param project
-	 *            this may be null, in which case the global preferences are
-	 *            returned.
-	 * @param respectOverrideSettings
-	 *            if this is true then the validators that get returned are
-	 *            based on the override settings. So for example, if the global
-	 *            preferences do not allow project overrides then none of the
-	 *            project settings are used. Normal validation would set this to true.
-	 *            The properties page would set this to false.
-	 *            
-	 * @deprecated Use {@link #getValidatorsNotCached(IProject)} instead            
-	 */
-	public Validator[] getValidators(IProject project, boolean respectOverrideSettings) throws ProjectUnavailableError {
-		return getValidators(project);
-	}
-	
-	/**
-	 * Answer a cached copy of the the validators for a given project. This is a front end method, 
-	 * for the getValidatorsNotCached() method.
-	 * <p>
-	 * Individual projects may override the global validation preference
-	 * settings. If the project has it's own settings, then those validators are
-	 * returned via this method.
-	 * </p>
-	 * <p>
-	 * The following approach is used. For version 1 validators, the validator
-	 * is only returned if it is defined to operate on this project type. This
-	 * is the way that the previous version of the framework did it. For version
-	 * 2 validators, they are all returned.
-	 * </p>
-	 * 
-	 * @param project
-	 *            This may be null, in which case the global preferences are
-	 *            returned.
-	 * 
-	 * @return The validators in name sorted order.
-	 */
-	public Validator[] getValidators(IProject project) throws ProjectUnavailableError {
-		return _cache.getValidatorsCached(project);
-	}
-	
-	/**
-	 * Answer all the validators for the given project.
-	 * <p>
-	 * Individual projects may override the global validation preference
-	 * settings. If the project has it's own settings, then those validators are
-	 * returned via this method.
-	 * </p>
-	 * <p>
-	 * The following approach is used. For version 1 validators, the validator
-	 * is only returned if it is defined to operate on this project type. This
-	 * is the way that the previous version of the framework did it. For version
-	 * 2 validators, they are all returned.
-	 * </p>
-	 * 
-	 * @param project
-	 *            This may be null, in which case the global preferences are
-	 *            returned.
-	 * 
-	 * @return The validators in name sorted order.
-	 */
-	private Validator[] getValidatorsNotCached(IProject project) throws ProjectUnavailableError {
-		Map<String,Validator> v2Vals = getV2Validators(project, UseProjectPreferences.Normal);
-		TreeSet<Validator> sorted = new TreeSet<Validator>();
-		sorted.addAll(v2Vals.values());
-		
-		try {
-			ValidationConfiguration vc = ConfigurationManager.getManager().getConfiguration(project);
-			if (project == null){
-				// If the project is null we need to use this approach, since you can not use new ManualValidatorsOperation(null)
-				ValidatorMetaData[] vmds = vc.getValidators();
-				for (ValidatorMetaData vmd : vmds){
-					Validator v = Validator.create(vmd, vc, project);
-					sorted.add(v);
-				}
-			}
-			else {
-				ManualValidatorsOperation mvo = new ManualValidatorsOperation(project);
-				Set<ValidatorMetaData> vmds = mvo.getEnabledValidators();
-				for (ValidatorMetaData vmd : vmds){
-					Validator v = Validator.create(vmd, vc, project);
-					sorted.add(v);
-				}
-			}
-		}
-		catch (InvocationTargetException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		
-		Validator[] vals = new Validator[sorted.size()];
-		sorted.toArray(vals);
-		return vals;
-	}
-	/**
-	 * Validators can use project level settings (Project natures and facets) to
-	 * determine if they are applicable to the project or not.
-	 * 
-	 * @param project
-	 *            The project that the configuration is based on.
-	 * @param mustUseProjectSettings
-	 *            Force the project properties to be used. There is a case where the user has toggled the
-	 *            Enable project specific settings checkbox in the dialog, but has not yet committed the
-	 *            changes. This allows that setting to be passed through.
-	 * @return The validators that are configured to run on this project based
-	 *         on the project level settings. These are the "live" validators, they are not copies.
-	 * @throws ProjectUnavailableError
-	 * 
-	 * @deprecated Use getValidatorsConfiguredForProject(IProject project, UseProjectPreferences useProject)
-	 */
-	public Validator[] getValidatorsConfiguredForProject(IProject project, boolean mustUseProjectSettings) throws ProjectUnavailableError {
-		UseProjectPreferences useProject = UseProjectPreferences.Normal;
-		return getValidatorsConfiguredForProject(project, useProject);
-	}
-	
-	/**
-	 * Validators can use project level settings (Project natures and facets) to
-	 * determine if they are applicable to the project or not.
-	 * 
-	 * @param project
-	 *            The project that the configuration is based on.
-	 * @param useProject
-	 *            Specifies how to use the project preferences. This can be used
-	 *            to force the project properties to be used. There is a case
-	 *            where the user has toggled the Enable project specific
-	 *            settings checkbox in the dialog, but has not yet committed the
-	 *            changes. This allows that setting to be passed through.
-	 * @return The validators that are configured to run on this project based
-	 *         on the project level settings. These are the "live" validators,
-	 *         they are not copies.
-	 * @throws ProjectUnavailableError
-	 */
-	public Validator[] getValidatorsConfiguredForProject(IProject project, UseProjectPreferences useProject) throws ProjectUnavailableError {
-		Map<String,Validator> v2Vals = getV2Validators(project, useProject);
-		TreeSet<Validator> sorted = new TreeSet<Validator>();
-		sorted.addAll(v2Vals.values());
-		
-		if (useProject == UseProjectPreferences.MustNotUse){
-			sorted.addAll(ExtensionValidators.instance().getV1Validators(project));
-		}
-		else {
-			try {
-				ValidationConfiguration vc = ConfigurationManager.getManager().getProjectConfiguration(project);
-				ValidatorMetaData[] vmds = vc.getValidators();
-				for (ValidatorMetaData vmd : vmds) {
-					Validator v = Validator.create(vmd, vc, project);
-					sorted.add(v);
-				}
-			}
-			catch (InvocationTargetException e){
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-		}
-				
-		List<Validator> list = new LinkedList<Validator>();
-		for (Validator v : sorted){
-			if (v.shouldValidateProject(project, false, false))list.add(v);
-		}
-		
-		Validator[]vals = new Validator[list.size()];
-		list.toArray(vals);
-		return vals;
-	}
-	
-	/**
-	 * Answer the V2 validators that are in effect for this project. The
-	 * following approach is used:
-	 * <ol>
-	 * <li>The validators that are defined by the extension point are loaded.</li>
-	 * <li>They are customized by any global preferences.</li>
-	 * <li>If project customizations are allowed, they are customized by the
-	 * project preferences.
-	 * </ol>
-	 * 
-	 * @param project
-	 *            This may be null, in which case only the global preferences
-	 *            are used.
-	 * @param useProject
-	 *            Specifies how to use the project preferences. This can be used
-	 *            to force the project properties to be used. There is a case
-	 *            where the user has toggled the Enable project specific
-	 *            settings checkbox in the dialog, but has not yet committed the
-	 *            changes. This allows that setting to be passed through.
-	 *            
-	 * @return
-	 */
-	private Map<String,Validator> getV2Validators(IProject project, UseProjectPreferences useProject){
-		Map<String,Validator> extVals = ExtensionValidators.instance().getMapV2Copy();
-		try {
-			List<Validator> vals = ValPrefManagerGlobal.getDefault().getValidators();
-			for (Validator v : vals)extVals.put(v.getId(), v);
-			
-			if (useProject != UseProjectPreferences.MustNotUse){
-				if (useProject == UseProjectPreferences.MustUse || !mustUseGlobalValidators(project)){
-					//TODO should probably cache this vpm
-					ValPrefManagerProject vpm = new ValPrefManagerProject(project);
-					vals = vpm.getValidators(extVals);
-					for (Validator v : vals)extVals.put(v.getId(), v);
-					
-					for (Validator v : getProjectPreferences(project).getValidators())extVals.put(v.getId(), v);
-				}	
-			}
-		}
-		catch (BackingStoreException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-		return extVals;
-	}
-	
-
-	/**
-	 * Answer true if we must use the global settings for this project. If the global preferences do not
-	 * allow overrides, or if this project does not allow overrides then the global preferences must be used.
-	 *  
-	 * @param project project that is being tested. It can be null, in which case the global preferences must be used.
-	 * @return true if the global preferences must be used.
-	 */
-	public boolean mustUseGlobalValidators(IProject project){
-		if (project == null)return true;
-		if (!getGlobalPreferences().getOverride())return true;
-		ProjectPreferences pp = _projectPreferences.get(project);
-		if (pp != null)return !pp.getOverride();
-		
-		ValPrefManagerProject vpm = new ValPrefManagerProject(project);
-		return !vpm.getOverride();
-	}
-	
-	/**
-	 * Answer the validator with the given id that is in effect for the given project.
-	 * 
-	 * @param id The validator id.
-	 * @param project
-	 * @return null if the validator is not found
-	 */
-	public Validator getValidator(String id, IProject project){
-		Validator[] vals = getValidators(project);
-		for (Validator v : vals){
-			if (v.getId().equals(id))return v;
-		}
-		return null;
-	}
-	
-	/**
-	 * @see ValidationFramework#getValidator(String, IProject)
-	 */
-	public Validator getValidatorWithId(String id, IProject project){
-		Validator[] vals = getValidators(project);
-		for (Validator v : vals){
-			if (v.getId().equals(id))return v;
-		}
-		return null;
-	}
-					
-	/**
-	 * Answer true if the resource has any enabled validators.
-	 * 
-	 * @param resource a file, folder or project.
-	 * 
-	 * @param isManual if true then the validator must be turned on for manual validation. 
-	 * If false then the isManualValidation setting isn't used to filter out validators.
-	 *   
-	 * @param isBuild if true then the validator must be turned on for build based validation.
-	 * If false then the isBuildValidation setting isn't used to filter out validators.  
-	 */
-	public boolean hasValidators(IResource resource, boolean isManual, boolean isBuild){
-		if (resource instanceof IProject){
-			IProject project = (IProject)resource;
-			return ValManager.getDefault().getValidators(project).length > 0;
-		}
-		else if (resource instanceof IFolder){
-			IFolder folder = (IFolder)resource;
-			HasValidatorVisitor v = new HasValidatorVisitor(isManual, isBuild);
-			return v.hasValidator(folder);
-		}
-		else {
-			ContentTypeWrapper ctw = new ContentTypeWrapper();
-			for (Validator val : ValManager.getDefault().getValidators(resource.getProject())){
-				if (Friend.shouldValidate(val, resource, isManual, isBuild, ctw))return true;
-			}			
-		}
-		return false;
-	}
-	
-	/**
-	 * Answer true if the project has disabled all of it's validators, or if project overrides are not
-	 * allowed if global validation has been disabled.
-	 * 
-	 * @param project the project that is being consulted, or null if only the global settings are to be 
-	 * checked.
-	 */
-	public boolean isDisabled(IProject project){
-		GlobalPreferences gp = getGlobalPreferences();
-		if (!gp.getOverride() || project == null)return gp.getDisableAllValidation();
-		
-		ProjectPreferences pp = _projectPreferences.get(project);
-		if (pp == null)return gp.getDisableAllValidation();
-		return pp.getSuspend();		
-	}
-			
-	/**
-	 * Answer all the registered validators as they were defined by the extension points. That is
-	 * answer the validators as if the user has never applied any customizations.
-	 * 
-	 * @return Answer an empty array if there are no validators.
-	 */
-	public static Validator[] getDefaultValidators() throws InvocationTargetException {
-		Map<String,Validator> extVals = ExtensionValidators.instance().getMapV2();
-		TreeSet<Validator> sorted = new TreeSet<Validator>();
-		for (Validator v : extVals.values())sorted.add(v);
-		
-		IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-		GlobalConfiguration gc = new GlobalConfiguration(root);
-		gc.resetToDefault();
-		for (ValidatorMetaData vmd : gc.getValidators()){
-			Validator v = Validator.create(vmd, gc, null);
-			v.setBuildValidation(vmd.isBuildValidation());
-			v.setManualValidation(vmd.isManualValidation());
-			sorted.add(v);
-		}
-		
-		Validator[] val = new Validator[sorted.size()];
-		sorted.toArray(val);
-		return val;
-	}
-	
-	public static Validator[] getDefaultValidators(IProject project) throws InvocationTargetException {
-		Map<String,Validator> extVals = ExtensionValidators.instance().getMap(project);
-		Validator[] val = new Validator[extVals.size()];
-		extVals.values().toArray(val);
-		return val;
-	}
-
-	/**
-	 * Answer all the registered validators.
-	 * 
-	 * @param project the project to use for getting the version 1 validator settings. This can
-	 * be null in which case the global preferences are used.
-	 * 
-	 * @return Answer an empty array if there are no validators.
-	 */
-//	Validator[] getValidators2(IProject project) throws ProjectUnavailableError {
-//		// If I use a local variable I don't need to synchronize the method.
-//		
-//		Validator[] validators = _validators;
-//		if (project == null && validators != null)return validators;
-//				
-//		Validator[] val = loadExtensions(false, project);
-//		ValPrefManagerGlobal vpm = ValPrefManagerGlobal.getDefault();
-//		if (!vpm.loadPreferences(val)){
-//			val = restoreDefaults2(project);
-//			saveStateTimestamp();				
-//		}
-//		else {
-//			if (getGlobalPreferences().getStateTimeStamp() != Platform.getStateStamp())
-//				val = migrateSettings(val, project);
-//		}
-//		
-//		TreeSet<Validator> set = new TreeSet<Validator>();
-//		for (Validator v : val)set.add(v);
-//		
-//		List<Validator> list = new LinkedList<Validator>();
-//		try {
-//			ValidationConfiguration vc = ConfigurationManager.getManager().getConfiguration(project);
-//			for (ValidatorMetaData vmd : vc.getValidators()){
-//				list.add(Validator.create(vmd, vc, project));
-//			}							
-//			
-//		}
-//		catch (InvocationTargetException e){
-//			if (project != null && (!project.exists() || !project.isOpen()))
-//				throw new ProjectUnavailableError(project);
-//			ValidationPlugin.getPlugin().handleException(e);
-//		}
-//		
-//		set.addAll(list);
-//		val = new Validator[set.size()];
-//		set.toArray(val);
-//		if (project == null)_validators = val;
-//		return val;
-//	}
-	
-	/**
-	 * This method needs to be called whenever the validation configuration has changed.
-	 */
-	private void configHasChanged(){
-		_configNumber.incrementAndGet();
-		ValidatorProjectManager.reset();
-		_cache.reset();
-	}
-		
-	/**
-	 * Answer the global validation preferences.
-	 */
-	public GlobalPreferences getGlobalPreferences(){
-		GlobalPreferences gp = _globalPreferences.get();
-		if (gp == null){
-			ValPrefManagerGlobal vpm = ValPrefManagerGlobal.getDefault();
-			gp = vpm.loadGlobalPreferences();
-			if (!_globalPreferences.compareAndSet(null, gp))gp = _globalPreferences.get();
-		}
-		return gp;
-	}
-	
-	/**
-	 * Update the global preferences, but only if something has actually changed.
-	 * @param values The global settings.
-	 * @return a bit mask of the changes between the old values and the new values. See the GlobalPreferences
-	 * constants for the bit mask values. If a zero is return there were no changes.
-	 */
-	public int replace(GlobalPreferencesValues values){
-		GlobalPreferences gp = new GlobalPreferences(values);
-		GlobalPreferences old = getGlobalPreferences();
-		int changes = old.compare(gp);
-		if (changes != 0){
-			_globalPreferences.set(gp);
-		}
-		return changes;
-	}
-		
-	/**
-	 * Answer the project preferences for this project.
-	 * @param project The project, this may be null.
-	 */
-	public ProjectPreferences getProjectPreferences(IProject project) {
-		ProjectPreferences pp = _projectPreferences.get(project);
-		if (pp != null)return pp;
-		
-		/* hopefully we rarely get this far */
-		
-		Map<String,Validator> extVals = ExtensionValidators.instance().getMapV2Copy();
-		try {
-			List<Validator> vals = ValPrefManagerGlobal.getDefault().getValidators();
-			for (Validator v : vals)extVals.put(v.getId(), v);
-			
-			pp = getProjectPreferences(project, extVals);
-		}
-		catch (BackingStoreException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}	
-		return pp;
-	}
-
-	/**
-	 * 
-	 * @param project The project, this may be null.
-	 * @param baseValidators
-	 */
-	private ProjectPreferences getProjectPreferences(IProject project, Map<String, Validator> baseValidators) 
-		throws BackingStoreException {
-		ProjectPreferences pp = _projectPreferences.get(project);
-		if (pp != null)return pp;
-		
-		ValPrefManagerProject vpm = new ValPrefManagerProject(project);
-		pp = vpm.loadProjectPreferences(project, baseValidators);
-		_projectPreferences.put(project, pp);
-		return pp;		
-	}
-		
-	/**
-	 * Restore all the validation defaults, as defined by the individual validators via the
-	 * validation extension point.
-	 */
-//	public synchronized void restoreDefaults() {
-//		getGlobalPreferences().resetToDefault();
-//		_validators = null;
-//		getValidators(true);
-//	}
-	
-
-	/**
-	 * Run all the validators that are applicable to this resource.
-	 * <p>
-	 * If this is a manual validation both the version 1 and version 2 validators are run. If it
-	 * is a build validation, then only the version 2 validators are run, because the old framework handles
-	 * the running of the old validators.
-	 * </p>
-	 * 
-	 * @param project project that is being validated
-	 * 
-	 * @param resource the resource that is being validated
-	 * 
-	 * @param kind the kind of resource delta. It will be one of the IResourceDelta constants, like
-	 * IResourceDelta.CHANGED for example.
-	 * 
-	 * @param valType The type of validation request.
-	 * @param buildKind the kind of build that triggered this validation. See IncrementalProjectBuilder for values.
-	 * @param operation the operation that this validation is running under
-	 * @param monitor the monitor to use to report progress 
-	 */
-	public void validate(IProject project, final IResource resource, final int kind, ValType valType, 
-		int buildKind, ValOperation operation, final IProgressMonitor monitor) {
-		
-		MarkerManager.getDefault().deleteMarkers(resource, operation.getStarted(), IResource.DEPTH_ZERO);
-		
-		IValidatorVisitor visitor = new IValidatorVisitor(){
-
-			public void visit(Validator validator, IProject project, ValType vt,
-				ValOperation operation, IProgressMonitor monitor) {
-								
-				Validator.V1 v1 = validator.asV1Validator();
-				if (vt == ValType.Build && v1 != null)return;
-				
-				SubMonitor subMonitor = SubMonitor.convert(monitor);
-				String task = NLS.bind(ValMessages.LogValStart, validator.getName(), resource.getName());
-				subMonitor.beginTask(task, 1);
-				validate(validator, operation, resource, kind, subMonitor.newChild(1), null);
-			}			
-		};
-		SubMonitor sm = SubMonitor.convert(monitor, getValidators(project).length);
-		accept(visitor, project, resource, valType, operation, sm);
-		
-	}
-	
-	/**
-	 * Validate a single resource with a single validator. This will call the validator whether the validator
-	 * is enabled or not.
-	 * <p>
-	 * Callers of this method should ensure that the shouldValidate was tested before making this call.
-	 * 
-	 * @param validator the validator
-	 * @param operation the operation that the validation is running in.
-	 * @param resource the resource to validate
-	 * @param kind the kind of resource change. See IResourceDelta.
-	 * @param monitor
-	 */
-	public void validate(Validator validator, ValOperation operation, IResource resource, int kind, 
-			IProgressMonitor monitor, ValidationEvent event){
-		if (operation.isValidated(validator.getId(), resource))return;
-		long time = 0;
-		long cpuTime = -1;
-		String msg1 = NLS.bind(ValMessages.LogValStart, validator.getName(), resource.getName());
-		monitor.subTask(msg1);
-		IPerformanceMonitor pm = ValidationFramework.getDefault().getPerformanceMonitor();
-		if (pm.isCollecting()){
-			time = System.currentTimeMillis();
-			cpuTime = Misc.getCPUTime();
-		}
-		
-		if (Tracing.matchesExtraDetail(validator.getId())){
-			Tracing.log("ValManager-03: validating ", resource); //$NON-NLS-1$
-		}
-		ValidationResult vr = validator.validate(resource, kind, operation, monitor, event);
-		if (pm.isCollecting()){
-			if (cpuTime != -1){
-				cpuTime = Misc.getCPUTime() - cpuTime;
-			}
-			int num = 0;
-			if (vr != null)num = vr.getNumberOfValidatedResources();
-			PerformanceCounters pc = new PerformanceCounters(validator.getId(), 
-				validator.getName(), resource.getName(),
-				num, System.currentTimeMillis()-time, cpuTime);
-			pm.add(pc);
-		}
-		if (ValidationPlugin.getPlugin().isDebugging() && !pm.isCollecting()){
-			String msg = time != 0 ? 
-				NLS.bind(ValMessages.LogValEndTime,	new Object[]{validator.getName(), 
-					validator.getId(), resource, Misc.getTimeMS(System.currentTimeMillis()-time)}) :
-				NLS.bind(ValMessages.LogValEnd, validator.getName(), resource);
-			Tracing.log("ValManager-01: " + msg); //$NON-NLS-1$
-		}
-		if (vr != null){
-			operation.mergeResults(vr);
-			if (vr.getSuspendValidation() != null)operation.suspendValidation(vr.getSuspendValidation(), validator);
-		}
-	}
-	
-	/**
-	 * Accept a visitor for all the validators that are enabled for the given project.
-	 * 
-	 * @param visitor
-	 * @param project
-	 * @param valType the type of validation
-	 * @param operation
-	 * @param monitor
-	 */
-	public void accept(IValidatorVisitor visitor, IProject project, ValType valType, 
-		ValOperation operation, IProgressMonitor monitor){
-		
-		if (isDisabled(project))return;
-		
-		for (Validator val : getValidators(project)){
-			if (monitor.isCanceled())return;
-			if (!ValidatorProjectManager.get().shouldValidate(val, project, valType))continue;
-			if (operation.isSuspended(val, project))continue;
-			try {
-				visitor.visit(val, project, valType, operation, monitor);
-			}
-			catch (Exception e){
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-		}		
-	}
-	
-	/**
-	 * Accept a visitor for all the validators that are enabled for the given project, resource, 
-	 * and validation mode.
-	 * 
-	 * @param valType the type of validation request
-	 */
-	public void accept(IValidatorVisitor visitor, IProject project, IResource resource, 
-			ValType valType, ValOperation operation, IProgressMonitor monitor){
-		
-		if (isDisabled(project))return;
-		
-		Map<String,IValidatorGroupListener[]> groupListeners = new HashMap<String,IValidatorGroupListener[]>();
-		
-		ValProperty vp = getValProperty(resource, valType, _configNumber.get());
-		if (vp != null){
-			BitSet bs = vp.getConfigSet();
-			for (Validator val : getValidators(project)){
-				if (!monitor.isCanceled()) {
-					if (!bs.get(_idManager.getIndex(val.getId())))continue;
-					if (operation.isSuspended(val, project))continue;
-					Validator.V2 v2 = val.asV2Validator();
-					if (v2 != null) {
-						notifyGroupListenersStarting(resource, operation.getState(), monitor, groupListeners, v2);
-					}
-					try {
-						visitor.visit(val, project, valType, operation, monitor);
-					}
-					catch (Exception e){
-						ValidationPlugin.getPlugin().handleException(e);
-					}
-				}
-			}
-			notifyGroupFinishing(resource, operation.getState(), monitor, groupListeners);
-			return;
-		}
-		
-		vp = new ValProperty();
-		vp.setConfigNumber(_configNumber.get());
-		ContentTypeWrapper ctw = new ContentTypeWrapper();
-		for (Validator val : getValidators(project)){
-			if (!monitor.isCanceled()) {
-				if (!ValidatorProjectManager.get().shouldValidate(val, project, valType))continue;
-				if (Friend.shouldValidate(val, resource, valType, ctw)){
-					vp.getConfigSet().set(_idManager.getIndex(val.getId()));
-					// we do the suspend check after figuring out if it needs to be validated, because we save
-					// this information for the session.
-					if (operation.isSuspended(val, project))continue;
-					Validator.V2 v2 = val.asV2Validator();
-					if (v2 != null) {
-						notifyGroupListenersStarting(resource, operation.getState(), monitor, groupListeners, v2);
-					}
-					try {
-						visitor.visit(val, project, valType, operation, monitor);
-					}
-					catch (Exception e){
-						ValidationPlugin.getPlugin().handleException(e);
-					}
-				}
-			}
-		}
-		notifyGroupFinishing(resource, operation.getState(), monitor, groupListeners);
-		putValProperty(vp, resource, valType);
-	}
-
-	/**
-	 * Let the group listeners know that validation might be starting for the group of validators. 
-	 */
-	private void notifyGroupListenersStarting(final IResource resource,	 
-			final ValidationState state, final IProgressMonitor monitor, 
-			Map<String, IValidatorGroupListener[]> groupListeners, Validator.V2 v2) {
-		
-		String[] groups = v2.getValidatorGroups();
-		for (String group : groups) {
-			if (!groupListeners.containsKey(group)) {
-				IValidatorGroupListener[] createdListeners = null;
-				try {
-					createdListeners = ValidatorGroupExtensionReader.getDefault().createListeners(group);
-				}
-				catch (CoreException e){
-					String msg = NLS.bind(ValMessages.ErrConfig, v2.getId());
-					Status status = new Status(IStatus.ERROR, ValidationPlugin.PLUGIN_ID, msg);
-					CoreException core = new CoreException(status);
-					ValidationPlugin.getPlugin().handleException(core);
-					ValidationPlugin.getPlugin().handleException(e);
-					
-					// we create this to ensure that we don't signal the same exception over and over. 
-					createdListeners = new IValidatorGroupListener[0];
-				}
-				
-				// create and notify just this once
-				final IValidatorGroupListener[] listeners = createdListeners;
-					
-				groupListeners.put(group, listeners);
-				for (final IValidatorGroupListener listener : listeners) {
-					SafeRunner.run(new ISafeRunnable() {
-						public void run() throws Exception {
-							listener.validationStarting(resource, monitor, state);
-						}
-
-						public void handleException(Throwable exception) {
-							ValidationPlugin.getPlugin().handleException(exception);
-						}
-					});
-				}
-			}
-		}
-	}
-
-	/**
-	 * Let the group listeners know that validation is finished for the group of validators. 
-	 */
-	private void notifyGroupFinishing(final IResource resource, 
-			final ValidationState state, final IProgressMonitor monitor,
-			Map<String, IValidatorGroupListener[]> groupListeners) {
-		for (final IValidatorGroupListener[] listeners : groupListeners.values()) {
-			for (final IValidatorGroupListener listener : listeners) {
-				SafeRunner.run(new ISafeRunnable() {
-					public void run() throws Exception {
-						listener.validationFinishing(resource, monitor, state);
-					}
-
-					public void handleException(Throwable exception) {
-						ValidationPlugin.getPlugin().handleException(exception);
-					}
-				});
-			}
-		}
-	}
-
-	private ValProperty getValProperty(IResource resource, ValType valType, int configNumber) {
-		ValProperty vp = null;
-		try {
-			if (valType == ValType.Build)vp = (ValProperty)resource.getSessionProperty(StatusBuild);
-			else if (valType == ValType.Manual)vp = (ValProperty)resource.getSessionProperty(StatusManual);
-		}
-		catch (CoreException e){
-			// don't care about this one
-		}
-		if (vp == null)return null;
-		if (vp.getConfigNumber() != _configNumber.get())return null;
-		return vp;
-	}
-	
-	/**
-	 * Let the validation manager know that a project has been changed.
-	 * 
-	 * @param project The project that has been opened, created, or had it's description change.
-	 */
-	public void projectChanged(IProject project){
-		ValidatorProjectManager.reset();
-		_projectPreferences.remove(project);
-		_cache.reset(project);
-	}
-	
-	/**
-	 * Let the validation manager know that a project has been removed.
-	 * 
-	 * @param project The project that has been closed or deleted.
-	 * 
-	 */
-	public void projectRemoved(IProject project){
-		ValidatorProjectManager.reset();
-		_projectPreferences.remove(project);
-		_cache.reset(project);
-	}
-	
-	private void putValProperty(ValProperty vp, IResource resource, ValType valType) {
-		try {
-			if (valType == ValType.Build)resource.setSessionProperty(StatusBuild, vp);
-			else if (valType == ValType.Manual)resource.setSessionProperty(StatusManual, vp);
-		} 
-		catch (CoreException e) {
-	        // If the resource is not found, it is likely just been deleted 
-	        // and there is no need to do anything. 
-	        // See https://bugs.eclipse.org/bugs/show_bug.cgi?id=269022
-	        if (!e.getStatus().equals(IResourceStatus.RESOURCE_NOT_FOUND)) {
-	                ValidationPlugin.getPlugin().handleException(e, IStatus.WARNING);
-	        }
-		}
-	}
-
-	/**
-	 * Let each of the enabled validators know that a clean has been requested.
-	 * 
-	 * @param project the project that is being cleaned, or null if the entire workspace is being cleaned.
-	 * @param monitor
-	 */
-	void clean(final IProject project, final ValOperation operation, final IProgressMonitor monitor) {
-		IValidatorVisitor visitor = new IValidatorVisitor(){
-
-			public void visit(Validator validator, IProject project, ValType valType,
-				ValOperation operation, IProgressMonitor monitor) {
-				validator.clean(project, operation, monitor);					
-			}
-			
-		};
-		accept(visitor, project, ValType.Build, operation, monitor);
-	}
-	
-	/**
-	 * Let each of the enabled validators know that a clean has been requested.
-	 * 
-	 * @param project the project that is being cleaned, or null if the entire workspace is being cleaned.
-	 * @param monitor
-	 */
-	public void clean(IProject project, IProgressMonitor monitor){
-		IValidatorVisitor visitor = new IValidatorVisitor(){
-
-			public void visit(Validator validator, IProject project, ValType valType,
-				ValOperation operation, IProgressMonitor monitor) {
-				validator.clean(project, operation, monitor);					
-			}
-			
-		};
-		ValidationFramework.getDefault().getDependencyIndex().clear(project);
-		ValOperation operation = new ValOperation();
-		accept(visitor, project, ValType.Build, operation, monitor);
-	}
-
-	public void validatorsForProjectChanged(IProject project, boolean validationSettingChanged) {
-		if (validationSettingChanged){
-			if (project != null)_projectPreferences.remove(project);
-			configHasChanged();
-		}
-	}
-	
-	private final class HasValidatorVisitor implements IResourceVisitor {
-		
-		private boolean 			_hasValidator;
-		private final boolean		_isManual;
-		private final boolean		_isBuild;
-		
-		public HasValidatorVisitor(boolean isManual, boolean isBuild){
-			_isManual = isManual;
-			_isBuild = isBuild;			
-		}
-		
-		public boolean hasValidator(IFolder folder){
-			try {
-				folder.accept(this);
-			}
-			catch (CoreException e){
-				ValidationPlugin.getPlugin().handleException(e);
-			}
-			return _hasValidator;
-		}
-
-		public boolean visit(IResource resource) throws CoreException {
-			if (resource instanceof IFolder)return true;
-			if (hasValidators(resource, _isManual, _isBuild)){
-				_hasValidator = true;
-				return false;
-			}
-			return true;
-		}
-	}
-	
-	/**
-	 * Map validator id's to an index number on a bit set, so that we can quickly determine if a
-	 * particular validator needs to validate a particular resource.
-	 * @author karasiuk
-	 *
-	 */
-	private final static class ValidatorIdManager {
-		
-		/**
-		 * Map validator id's to Integers. The integers correspond to bits in the ValProperty instances.
-		 */
-		private final Map<String, Integer> _map = new HashMap<String, Integer>(100);
-		private final Map<Integer, String> _reverseMap = new HashMap<Integer, String>(100);
-		
-		/** Next available bit. */
-		private int _next;
-		
-		/**
-		 * Answer the index number for this validator. If we haven't seen it yet allocate a new index number.
-		 * @param id validator id.
-		 * @return index into the validator bit mask.
-		 */
-		public synchronized int getIndex(String id){
-			Integer i = _map.get(id);
-			if (i != null)return i;
-			
-			i = _next++;
-			_map.put(id, i);
-			_reverseMap.put(i, id);
-			
-			return i;
-		}
-		
-		/**
-		 * Answer the validator id for the index.
-		 * @param index
-		 * @return null if the index number has not been set.
-		 */
-		public synchronized String getId(Integer index){
-			return _reverseMap.get(index);
-		}
-		
-		public synchronized void reset(){
-			_map.clear();
-			_reverseMap.clear();
-			_next = 0;
-		}
-		
-		/**
-		 * Answer the ids for the bit in the bitset. This is used for debugging. 
-		 * @param bs
-		 */
-		public synchronized String[] getIds(BitSet bs){
-			List<String> list = new LinkedList<String>();
-			for(int i=bs.nextSetBit(0); i>=0; i=bs.nextSetBit(i+1)) {
-				String id = getId(i);
-				if (id != null)list.add(id);
-			}
-			String[] s = new String[list.size()];
-			return list.toArray(s);
-		}		
-	}
-	
-	/**
-	 * This is used to keep track of which validators are enabled with which projects. We want to ensure
-	 * that we don't activate a validator (and it's plug-in) if it has nothing to validate in the workspace.
-	 * This is an immutable object.
-	 * @author karasiuk
-	 *
-	 */
-	private final static class ValidatorProjectManager {
-		
-		private final static AtomicReference<ValidatorProjectManager> _me = new AtomicReference<ValidatorProjectManager>();
-		private final static AtomicInteger _counter = new AtomicInteger();
-		
-		private final ValProjectMap _manual = new ValProjectMap(ValType.Manual);
-		private final ValProjectMap _build = new ValProjectMap(ValType.Build);
-		private final int _sequence;
-		
-		/**
-		 * Answer the most current ValidatorProjectManager creating a new one if you have to.
-		 * @return
-		 */
-		public static ValidatorProjectManager get(){
-			ValidatorProjectManager vpm = _me.get();
-			if (vpm != null)return vpm;
-			
-			int next = _counter.incrementAndGet();
-			ValidatorProjectManager newVpm = null;
-			boolean looking = true;
-			while(looking){
-				vpm = _me.get();
-				if (vpm == null || next > vpm.getSequence()){
-					if (newVpm == null)newVpm = new ValidatorProjectManager(next);
-					if (_me.compareAndSet(vpm, newVpm))return newVpm;
-				}
-				else looking = false;
-			}
-			return vpm;
-		}
-		
-		/**
-		 * Reset the ValidatorProjectManager to null, which will force a newer one to be created the next time
-		 * that it is requested.
-		 */
-		public static void reset(){
-			int next = _counter.incrementAndGet();
-			ValidatorProjectManager vpm = _me.get();
-			if ( vpm == null)return;
-			if (next > vpm.getSequence())_me.compareAndSet(vpm, null);
-		}
-		
-		private ValidatorProjectManager(int sequence){
-			_sequence = sequence;
-		}
-		
-		int getSequence(){
-			return _sequence;
-		}
-		
-		/**
-		 * Should this validator attempt to validate any resources in this project?
-		 * 
-		 * @param validator
-		 *            The validator that is being tested.
-		 * @param project
-		 *            The project that is being tested. This can be null, which
-		 *            means that all projects will be tested.
-		 * @param type
-		 *            The type of validation operation.
-		 * @return true if the validator should attempt to validate.
-		 */
-		public boolean shouldValidate(Validator validator, IProject project, ValType type){
-			if (type == ValType.Build)return _build.shouldValidate(validator, project);
-			if (type == ValType.Manual)return _manual.shouldValidate(validator, project);
-				
-			return false;
-		}		
-				
-		/**
-		 * This is used to keep track of which validators are enabled for which projects. We want to ensure
-		 * that we don't activate a validator (and it's plug-in) if it has nothing to validate in the workspace.
-		 * <p>
-		 * There are two reasons why a validator may not be enabled. It's current project level filters may not match
-		 * the project. Or the entire validator may have been turned off for the project. 
-		 * </p>
-		 * @author karasiuk
-		 *
-		 */
-		private final static class ValProjectMap {
-			/**
-			 * Map a validator to the projects that it validates. This is an immutable object.
-			 * <p>
-			 * I've gone back and forth on whether the key should
-			 * be a Validator or the validator id. I'm back to it being the id because I was
-			 * running into cases where because of copying I wasn't getting the matches that I expected and I
-			 * want to ensure that I don't leak validators. If I run into
-			 * false matches, it is probably because reset isn't being called when it should be.
-			 * </p>
-			 */
-			private final Map<String, Set<IProject>> _map;
-			
-			private final ValType _type;
-						
-			public ValProjectMap(ValType type){
-				_type = type;
-				_map = load();
-			}
-			
-			/**
-			 * Should this validator attempt to validate any resources in this project?
-			 * 
-			 * @param validator
-			 *            The validator that is being tested.
-			 * @param project
-			 *            The project that is being tested. This can be null, which
-			 *            means that all projects will be tested, and if any of them return true, 
-			 *            then true is answered for this method.
-			 *            
-			 * @return true if the validator should attempt to validate.
-			 */
-			public boolean shouldValidate(Validator validator, IProject project){
-				String vid = validator.getId();
-				Set<IProject> projects = _map.get(vid);
-				if (projects == null)return false;
-				if (project == null)return projects.size() > 0;
-				return projects.contains(project);
-			}
-			
-			/**
-			 * For each of the projects in the workspace, load which validators are currently prepared to validate things.
-			 */
-			private Map<String, Set<IProject>> load() {
-				Map<String, Set<IProject>> map = new HashMap<String, Set<IProject>>(50);
-				ValManager vm = ValManager.getDefault();
-				IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-				Tracing.log("ValManager-02: loading " + projects.length + " projects");  //$NON-NLS-1$//$NON-NLS-2$
-				for (IProject project : projects){
-					if (!project.isOpen())continue;
-					Validator[] vals = vm.getValidators(project);
-					for (Validator v : vals){
-						String vid = v.getId();
-						Set<IProject> set = map.get(vid);
-						if (set == null){
-							set = new HashSet<IProject>(50);
-							map.put(vid, set);
-						}
-						
-						if (v.shouldValidateProject(project, _type))set.add(project);
-					}					
-				}
-				return map;
-			}
-			
-		}
-		
-	}
-
-	public void handleEvent(IFacetedProjectEvent event) {
-		projectChanged(event.getProject().getProject());
-	}
-
-	public void projectChanged(IProject project, int type) {
-		switch (type){
-		case IProjectChangeListener.ProjectClosed:
-		case IProjectChangeListener.ProjectDeleted:
-			projectRemoved(project);
-			break;
-		case IProjectChangeListener.ProjectOpened:
-		case IProjectChangeListener.ProjectChanged:
-		case IProjectChangeListener.ProjectAdded:
-			projectChanged(project);
-			break;
-		}		
-	}
-	
-	/**
-	 * Store the singleton for the ValManager. This approach is used to avoid having to synchronize the
-	 * ValManager.getDefault() method.
-	 * 
-	 * @author karasiuk
-	 *
-	 */
-	private static class Singleton {
-		static ValManager valManager = new ValManager();
-	}
-	
-	private final class ValidatorCache {
-		private final ConcurrentMap<IProject, Validator[]> _cache = new ConcurrentHashMap<IProject, Validator[]>(50);
-		private final AtomicReference<Validator[]> _global = new AtomicReference<Validator[]>();
-		
-		public Validator[] getValidatorsCached(IProject project) throws ProjectUnavailableError {
-			Validator[] vals = null;
-			if (project == null){
-				vals = _global.get();
-				if (vals == null){				
-					vals = getValidatorsNotCached(project);
-					_global.set(vals);
-				}
-			}
-			else {
-				vals = _cache.get(project);
-				if (vals == null){
-					vals = getValidatorsNotCached(project);
-					_cache.put(project, vals);
-				}
-			}
-			return vals;
-		}
-		
-		public void reset(){
-			_cache.clear();
-			_global.set(null);
-		}
-		
-		public void reset(IProject project){
-			if (project != null)_cache.remove(project);
-		}
-
-	}
-	
-	public enum UseProjectPreferences {Normal, MustUse, MustNotUse}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValMessages.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValMessages.java
deleted file mode 100644
index 02aabe1..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValMessages.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import org.eclipse.osgi.util.NLS;
-
-public class ValMessages extends NLS {
-	
-	private static final String BUNDLE_NAME = "org.eclipse.wst.validation.internal.messages"; //$NON-NLS-1$
-	   
-	public static String ConfigError;
-	
-	public static String DecodeError1;
-	public static String Error20;
-	
-	public static String ErrConfig;	
-	public static String ErrFilterRule;	  
-	public static String ErrGroupName;
-	public static String ErrDependencyVersion;
-	
-	public static String ErrGroupNoType;
-	public static String ErrGroupInvalidType;
-	
-	public static String ErrPatternAttrib;
-	public static String ErrTypeReq;
-	public static String ErrType;
-	
-	public static String VbfExcSyntaxNoValClass;
-	public static String VbfExcSyntaxNoValRun;
-	public static String VbfExcSyntaxNoValNull;
-	
-	public static String GroupInclude;
-	
-	public static String GroupExclude;
-	
-	public static String JobName;
-	public static String JobNameMonitor;
-	
-	public static String JobIndexSave;
-	
-	public static String LogValStart;
-	public static String LogValEnd;
-	public static String LogValEndTime;
-	public static String LogValSummary;
-	public static String LogValSummary2;
-	public static String LogSession;
-	
-	public static String MigrationJobName;
-	
-	public static String RuleProjectNature;
-	public static String RuleFileExt;
-	public static String RuleFile;
-	public static String RuleFolder;
-	public static String RuleFull;
-	public static String RuleContentType;
-	public static String RuleFacet;
-	
-	public static String ContentTypeExact;
-	public static String ContentTypeNotExact;
-	
-	public static String FileExtWithCase;
-	public static String FileExtWithoutCase;
-
-	public static String SevError;
-	public static String SevWarning;
-	public static String SevIgnore;
-
-	public static String TimeUnder;
-	public static String TimeNano;
-	public static String TimeMicro;
-	public static String TimeSec;
-	public static String TimeMin;
-	
-	public static String TypeInclude;
-	public static String TypeExclude;
-	
-	static {
-		NLS.initializeMessages(BUNDLE_NAME, ValMessages.class);
-	  }
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValOperation.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValOperation.java
deleted file mode 100644
index 44c78ec..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValOperation.java
+++ /dev/null
@@ -1,205 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.wst.validation.ValidationResult;
-import org.eclipse.wst.validation.ValidationResults;
-import org.eclipse.wst.validation.ValidationState;
-import org.eclipse.wst.validation.Validator;
-
-/**
- * This represents a validation operation, i.e. the running of a set of validators in response to some change. 
- * It may be a large operation, as would happen on a clean build, or it may be the validation of just a single
- * resource.
- * <p>
- * The operation can, but doesn't need to, span multiple projects.
- * </p>
- * <p>
- * Once the operation has finished, this object goes away.
- * </p>     
- * @author karasiuk
- *
- */
-public final class ValOperation {
-	
-	private final ValidationState 	_state = new ValidationState();
-	private final ValidationResult	_result = new ValidationResult();
-	
-	/**
-	 * Each project can have a set of validators that are suspended for the duration of the validation operation.
-	 * The set contains the validator's id.
-	 */
-	private final Map<IProject, Set<String>> _suspended = new HashMap<IProject, Set<String>>(40);
-	
-	/** The time that the operation started. */
-	private final long	_started = System.currentTimeMillis();
-	
-	/** 
-	 * Are we in a multi project validation? That is, could we be validating several
-	 * projects at the same time? This can be triggered by either clean all or 
-	 * if auto build is turned off, a build all. 
-	 */
-	private final boolean	_multiProject;
-	
-	/** 
-	 * Holds all the resources that have been validated as a side-effect of running other validations.
-	 * The key is the validator id and the value is a Set of IResources.
-	 */
-	private final Map<String, Set<IResource>> 	_validated = new HashMap<String, Set<IResource>>(20);
-	
-	public ValOperation(){
-		_multiProject = false;
-	}
-	
-	/**
-	 * 
-	 * @param multiProject Set to true if we could be validating several projects at the same time.
-	 */
-	public ValOperation(boolean multiProject){
-		_multiProject = multiProject;
-	}
-	
-	public ValidationState getState() {
-		return _state;
-	}
-	
-	/**
-	 * Answer a summary of the validation results.
-	 * @return
-	 */
-	public ValidationResultSummary getResult() {
-		synchronized(_result){
-			ValidationResultSummary vrs = new ValidationResultSummary(_result.getSeverityError(), 
-				_result.getSeverityWarning(), _result.getSeverityInfo());
-			return vrs;
-		}
-	}
-		
-	/**
-	 * Answer a copy of the ValidationResult.
-	 * @return
-	 */
-	public ValidationResults getResults(){
-		return new ValidationResults(_result);
-	}
-	
-	/**
-	 * Remember that this resource has already been validated as a side-effect.
-	 *  
-	 * @param id id of the validator
-	 * @param resource resource that has been validated.
-	 */
-	public void addValidated(String id, IResource resource){
-		synchronized(_validated){
-			Set<IResource> set = _validated.get(id);
-			if (set == null){
-				set = new HashSet<IResource>(20);
-				_validated.put(id, set);
-			}
-			set.add(resource);
-		}
-	}
-	
-	/**
-	 * Answer if this resource has already been validated as a side-effect of some other validation by the
-	 * given validator.
-	 * 
-	 * @param id
-	 * @param resource
-	 */
-	public boolean isValidated(String id, IResource resource){
-		synchronized(_validated){
-			Set<IResource> set = _validated.get(id);
-			if (set == null)return false;
-			
-			return set.contains(resource);
-		}
-	}
-
-	/**
-	 * Has this validator been suspended for the duration of this operation on this project?
-	 * 
-	 * @param val
-	 *            The validator that is being checked.
-	 * @param project
-	 *            Can be null, in which case we return false.
-	 * 
-	 * @return true if this validator should not run on this project.
-	 */
-	public boolean isSuspended(Validator val, IProject project) {
-		if (project == null)return false;
-		synchronized(_suspended){
-			Set<String> set = getSuspended(project);		
-			return set.contains(val.getId());
-		}
-	}
-	
-	private Set<String> getSuspended(IProject project){
-		Set<String> set = _suspended.get(project);
-		if (set == null){
-			set = new HashSet<String>(5);
-			_suspended.put(project, set);
-		}
-		return set;
-	}
-
-	void suspendValidation(IProject project, Validator validator) {
-		if (project == null)return;
-		if (validator == null)return;
-		getSuspended(project).add(validator.getId());
-	}
-
-	public long getStarted() {
-		return _started;
-	}
-
-	public boolean isMultiProject() {
-		return _multiProject;
-	}
-
-	/**
-	 * Indicate if the operation was canceled.
-	 * 
-	 * @param canceled
-	 * 		Set to true if it was canceled and false if it was not canceled.
-	 */
-	public void setCanceled(boolean canceled) {
-		synchronized (_result) {
-			_result.setCanceled(canceled);
-		}
-		
-	}
-
-	/**
-	 * Was the operation canceled before it completed? For example if the validation is being run through the
-	 * user interface, the end user can cancel the operation through the progress monitor.
-	 * 
-	 * @return true if the operation was canceled
-	 */
-	public boolean isCanceled() {
-		synchronized (_result) {
-			return _result.isCanceled();
-		}
-	}
-
-	public void mergeResults(ValidationResult vr) {
-		synchronized (_result) {
-			_result.mergeResults(vr);
-		}
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValPrefManagerGlobal.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValPrefManagerGlobal.java
deleted file mode 100644
index 5fcbaf3..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValPrefManagerGlobal.java
+++ /dev/null
@@ -1,653 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.CopyOnWriteArraySet;
-import java.util.concurrent.atomic.AtomicReference;
-
-import org.eclipse.wst.validation.Friend;
-import org.eclipse.wst.validation.MessageSeveritySetting;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.Validator.V2;
-import org.eclipse.wst.validation.internal.model.FilterGroup;
-import org.eclipse.wst.validation.internal.model.GlobalPreferences;
-import org.eclipse.wst.validation.internal.model.GlobalPreferencesValues;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * A class that knows how to manage the global persisted validation settings.
- * @author karasiuk
- */
-public final class ValPrefManagerGlobal {
-	
-	/** 
-	 * Version of the framework properties.
-	 * <ul>
-	 * <li>Version 2 - used the filter approach
-	 * <li>Version 3 - switched to a difference based approach. (See Bugzilla 224179)
-	 * </ul>
-	 * 
-	 */
-	public final static int frameworkVersion = 3;
-	
-	private final Set<IValChangedListener> _listeners = new CopyOnWriteArraySet<IValChangedListener>();
-	
-	private final AtomicReference<List<Validator>> _validators = new AtomicReference<List<Validator>>();
-	
-	private ValPrefManagerGlobal(){}
-	
-	public static ValPrefManagerGlobal getDefault(){
-		return Singleton.valPrefManagerGlobal;
-	}
-	
-	public void addListener(IValChangedListener listener){
-		_listeners.add(listener);
-	}
-	
-	public void removeListener(IValChangedListener listener){
-		_listeners.remove(listener);
-	}
-	
-	private void updateListeners(boolean validationSettingChanged){
-		for (IValChangedListener cl : _listeners)cl.validatorsForProjectChanged(null, validationSettingChanged); 
-	}
-			
-	/**
-	 * Update the validator filters from the preference store.
-	 *  
-	 * @param val
-	 * 
-	 * @return false if there are no preferences, that means that the user has never changed any
-	 * of the default settings. Also answer false if there was some sort of error, which essentially
-	 * means that the preferences aren't valid for whatever reason.   
-	 * 
-	 * @deprecated
-	 */
-//	public boolean loadPreferences(Validator[] val) {
-//	
-//		try {
-//			IEclipsePreferences pref = ValidationFramework.getDefault().getPreferenceStore();
-//			if (!pref.nodeExists(PrefConstants.filters))return false;
-//		
-//			Preferences filters = pref.node(PrefConstants.filters);
-//			for (Validator v : val){
-//				String id = v.getId();
-//				if (filters.nodeExists(id)){
-//					Preferences vp = filters.node(id);
-//					loadPreferences(v, vp);
-//				}
-//			}			
-//		}
-//		catch (Exception e){
-//			ValidationPlugin.getPlugin().handleException(e);
-//			return false;
-//		}
-//		
-//		return true;
-//	}
-	
-	/**
-	 * Answer the v2 validators that have been overridden by the global preferences.
-	 */
-	public List<Validator> getValidators() throws BackingStoreException {
-		List<Validator> vals = _validators.get();
-		while (vals == null){
-			vals = loadValidators();
-			if (!_validators.compareAndSet(null, vals))vals = _validators.get();
-		}
-		return vals;
-	}
-	
-	/**
-	 * Load the validators from the preference store.
-	 * @return the validators that have been overridden by the global references.
-	 */
-	private List<Validator> loadValidators() throws BackingStoreException {
-		LinkedList<Validator> list = new LinkedList<Validator>();
-		PreferencesWrapper pref = PreferencesWrapper.getPreferences(null, null);
-		if (pref.nodeExists(PrefConstants.vals)){
-			PreferencesWrapper vals = pref.node(PrefConstants.vals);
-			for (String id : vals.childrenNames()){
-				Validator base = ExtensionValidators.instance().getMapV2().get(id);
-				Validator v = loadValidator(id, vals, base);
-				if (v != null){
-					V2 v2 = v.asV2Validator();
-					if (v2 != null)v2.setLevel(Validator.Level.Global);					
-					list.add(v);
-				}
-			}
-		}
-		return list;
-	}
-
-	/**
-	 * Answer a copy of the validator that has been updated with the given preferences.
-	 * 
-	 * @param id
-	 *            Validator id.
-	 * @param valsNode
-	 *            The /vals node in the preference store.
-	 * @param base
-	 *            The base validator that is being customized. This can be null,
-	 *            in which case null will be returned.
-	 * 
-	 * @return A new validator that is a copy of the extension point validator
-	 *         with the updates from the preference store.
-	 */
-	static Validator loadValidator(String id, PreferencesWrapper valsNode, Validator base) {
-		if (base == null)return null;
-		
-		PreferencesWrapper vp = valsNode.node(id);
-		base = base.copy();
-		V2 v2 = base.asV2Validator();
-
-		String global = vp.get(PrefConstants.global, ""); //$NON-NLS-1$
-		if (global.length() > 0){
-		Global g = new Global(global);
-			base.setBuildValidation(g.isBuild());
-			base.setManualValidation(g.isManual());
-			base.setDelegatingId(g.getDelegating());
-		}
-		
-		if (v2 != null){
-			String groups = vp.get(PrefConstants.groups, ""); //$NON-NLS-1$
-			if (groups.length() > 0){
-				List<FilterGroup> list = new LinkedList<FilterGroup>();
-				Deserializer des = new Deserializer(groups);
-				while(des.hasNext())list.add(FilterGroup.create(des));
-				v2.setGroups(list);
-			}
-		}					
-		return base;
-	}
-
-	/**
-	 * The only valid way to get the global preferences is through the ValManager.
-	 * 
-	 * @see ValManager#getGlobalPreferences()
-	 */
-	public GlobalPreferences loadGlobalPreferences() {
-		PreferencesWrapper pref = PreferencesWrapper.getPreferences(null, null);
-		GlobalPreferencesValues gp = new GlobalPreferencesValues();
-		gp.saveAutomatically = pref.getBoolean(PrefConstants.saveAuto, GlobalPreferences.DefaultAutoSave);
-		gp.disableAllValidation = pref.getBoolean(PrefConstants.suspend, GlobalPreferences.DefaultSuspend);
-		gp.confirmDialog = pref.getBoolean(PrefConstants.confirmDialog, GlobalPreferences.DefaultConfirm);
-		gp.override = pref.getBoolean(PrefConstants.override, GlobalPreferences.DefaultOverride);
-		gp.version = pref.getInt(PrefConstants.frameworkVersion, GlobalPreferences.DefaultFrameworkVersion);
-		gp.stateTimeStamp = pref.getLong(PrefConstants.stateTS, 0);
-		
-		if (gp.version != frameworkVersion)migrate(gp.version, pref);
-		return new GlobalPreferences(gp);
-	}
-	
-	/**
-	 * If necessary migrate the preferences.
-	 * @param version The incoming version of the preferences.
-	 * @param pref the root of the preference store
-	 */
-	static void migrate(int version, PreferencesWrapper pref) {
-		try {
-			boolean update = false;
-			if (version == 2){
-				if (pref.nodeExists(PrefConstants.filters)){
-					pref.node(PrefConstants.filters).removeNode();
-					update = true;
-				}
-				if (pref.nodeExists(PrefConstants.msgs)){
-					pref.node(PrefConstants.msgs).removeNode();
-					update = true;
-				}
-			}
-			if (update){
-				pref.putInt(PrefConstants.frameworkVersion, frameworkVersion);
-				pref.flush();
-			}
-		}
-		catch (BackingStoreException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}		
-	}
-
-	/**
-	 * Load the preferences for a validator.
-	 * 
-	 * @param v the validator that is being built up
-	 * @param p the node in the preference tree for the validator, 
-	 * 	e.g. /instance/validator-framework-id/filters/validator-id
-	 * 
-	 * @deprecated
-	 */
-//	static void loadPreferences(Validator v, Preferences p) throws BackingStoreException {
-//		v.setBuildValidation(p.getBoolean(PrefConstants.build, true));
-//		v.setManualValidation(p.getBoolean(PrefConstants.manual, true));
-//		v.setVersion(p.getInt(PrefConstants.version, 1));
-//		v.setDelegatingId(p.get(PrefConstants.delegate, null));
-//		
-//		Validator.V2 v2 = v.asV2Validator();
-//		if (v2 == null)return;
-//		if (!p.nodeExists(PrefConstants.groups))return;
-//		
-//		Preferences groupNode = p.node(PrefConstants.groups);
-//		for (String groupName : groupNode.childrenNames()){
-//			Preferences group = groupNode.node(groupName);
-//			String type = group.get(PrefConstants.type, null);
-//			if (type == null)throw new IllegalStateException(ValMessages.ErrGroupNoType);
-//			FilterGroup fg = FilterGroup.create(type);
-//			if (fg == null)throw new IllegalStateException(NLS.bind(ValMessages.ErrGroupInvalidType, type));
-//			v2.add(fg);
-//			
-//			if (group.nodeExists(PrefConstants.rules)){
-//				Preferences ruleNode = group.node(PrefConstants.rules);
-//				for (String ruleName : ruleNode.childrenNames()){
-//					Preferences rule = ruleNode.node(ruleName);
-//					FilterRule fr = FilterRule.create(rule.get(PrefConstants.ruleType, null));
-//					if (fr != null){
-//						fr.load(rule);
-//						fg.add(fr);
-//					}
-//				}
-//			}
-//		}		
-//	}
-	
-	/**
-	 * Save the validator into the preference store.
-	 * 
-	 * @param validator
-	 *            The validator being saved.
-	 * 
-	 * @param root
-	 *            The top of the preference tree for validators, i.e.
-	 *            /instance/validator-framework-id/vals for workspace validators
-	 *            and /vals for project validators.
-	 *            
-	 * @param baseValidators
-	 *            A map of the validators that are one level higher in the
-	 *            storage hierarchy. So if we are updating the preference page
-	 *            validators, then this map would be the extension point
-	 *            validators. If we are updating a project's validators, then
-	 *            this map would be the preference page validators.
-	 */
-	static void save(Validator validator, PreferencesWrapper root, Map<String, Validator> baseValidators) throws BackingStoreException {
-		Validator.V2 v2 = validator.asV2Validator();
-		if (v2 == null)return;
-		
-		final String id = validator.getId();
-		boolean hasNode = root.nodeExists(id);
-		
-		if (validator.sameConfig(baseValidators.get(id))){
-			if (hasNode){
-				PreferencesWrapper vp = root.node(id);
-				vp.removeNode();
-			}
-			return;
-		}
-		if (!validator.isChanged())return;
-		PreferencesWrapper vp = root.node(id);
-		if (validator.hasGlobalChanges()){
-			Global g = new Global(validator.isManualValidation(), validator.isBuildValidation(), validator.getVersion(),
-				validator.getDelegatingId());
-			vp.put(PrefConstants.global, g.serialize());
-			Friend.setMigrated(validator, false);
-		}
-		
-		if (validator.getChangeCountMessages() > 0){
-			Collection<MessageSeveritySetting> msgs = validator.getMessageSettings().values();
-			if (msgs.size() > 0){
-				vp.put(PrefConstants.msgs, Msgs.serialize(msgs));
-			}
-		}
-		
-		if (v2.getChangeCountGroups() > 0){
-			FilterGroup[] groups = v2.getGroups();
-			if (groups.length > 0){
-				Serializer ser = new Serializer(500);
-				for (FilterGroup group : groups)group.save(ser);
-				vp.put(PrefConstants.groups, ser.toString());
-			}
-		}
-	}
-	/**
-	 * Save the validator into the preference store.
-	 * 
-	 * @param validator
-	 *            The validator being saved.
-	 * 
-	 * @param root
-	 *            The top of the preference tree for validators, i.e.
-	 *            /instance/validator-framework-id/vals for workspace validators
-	 *            and /vals for project validators.
-	 *            
-	 * @param baseValidators
-	 *            A map of the validators that are one level higher in the
-	 *            storage hierarchy. So if we are updating the preference page
-	 *            validators, then this map would be the extension point
-	 *            validators. If we are updating a project's validators, then
-	 *            this map would be the preference page validators.
-	 */
-	static void save(ValidatorMutable validator, PreferencesWrapper root, Map<String, Validator> baseValidators) throws BackingStoreException {
-		if (!validator.isV2Validator())return;
-		
-		PreferencesWrapper vp = root.node(validator.getId());
-		if (validator.sameConfig(baseValidators.get(validator.getId()))){
-			vp.removeNode();
-			return;
-		}
-		if (!validator.isChanged())return;
-		if (validator.hasGlobalChanges()){
-			Global g = new Global(validator.isManualValidation(), validator.isBuildValidation(), validator.getVersion(),
-				validator.getDelegatingId());
-			vp.put(PrefConstants.global, g.serialize());
-//			Friend.setMigrated(validator, false);
-		}
-				
-		if (validator.getChangeCountGroups() > 0){
-			FilterGroup[] groups = validator.getGroups();
-			if (groups.length > 0){
-				Serializer ser = new Serializer(500);
-				for (FilterGroup group : groups)group.save(ser);
-				vp.put(PrefConstants.groups, ser.toString());
-			}
-		}
-	}
-	
-	public void saveAsPrefs(Validator[] val) {
-		try {
-			PreferencesWrapper pref = PreferencesWrapper.getPreferences(null, null);
-			PreferencesWrapper vals = pref.node(PrefConstants.vals);
-			Map<String, Validator> base = ExtensionValidators.instance().getMapV2();
-			for (Validator v : val)save(v, vals, base);
-			pref.flush();
-			_validators.set(null);
-			updateListeners(true);
-		}
-		catch (BackingStoreException e){
-			throw new RuntimeException(e);
-		}
-	}
-
-	
-	/**
-	 * Save the global preferences and the validators.
-	 */
-	public synchronized void savePreferences(GlobalPreferences gp, Validator[] validators){
-		try {
-			PreferencesWrapper prefs = PreferencesWrapper.getPreferences(null, null);
-			savePreferences(prefs, gp);
-			PreferencesWrapper vals = prefs.node(PrefConstants.vals);
-
-			Map<String, Validator> base = ExtensionValidators.instance().getMapV2();
-			for (Validator v : validators)save(v, vals, base);
-			prefs.flush();
-			_validators.set(null);
-			updateListeners(true);
-		}
-		catch (BackingStoreException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-	
-	/**
-	 * Save the global preferences and the validators.
-	 */
-	public synchronized void savePreferences(GlobalPreferences gp, ValidatorMutable[] validators, Boolean persist){
-		try {
-			PreferencesWrapper prefs = PreferencesWrapper.getPreferences(null, persist);
-			savePreferences(prefs, gp);
-			PreferencesWrapper vals = prefs.node(PrefConstants.vals);
-			Map<String, Validator> base = ExtensionValidators.instance().getMapV2();
-			for (ValidatorMutable v : validators)save(v, vals, base);
-
-			prefs.flush();
-			_validators.set(null);
-			updateListeners(true);
-		}
-		catch (BackingStoreException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-		
-	/**
-	 * Save the V1 preferences, so that the old validators continue to work.
-	 */
-	public static void saveV1Preferences(ValidatorMutable[] validators, Boolean persistent){
-		try {
-			GlobalConfiguration gc = ConfigurationManager.getManager().getGlobalConfiguration();
-			gc.setEnabledManualValidators(getEnabledManualValidators(validators));				
-			gc.setEnabledBuildValidators(getEnabledBuildValidators(validators));
-
-			gc.passivate();
-			gc.store(persistent);
-		}
-		catch (InvocationTargetException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}			
-	}
-
-	/**
-	 * Answer all the V1 validators that are manually enabled.
-	 * @return
-	 */
-	private static ValidatorMetaData[] getEnabledManualValidators(ValidatorMutable[] validators) {
-		List<ValidatorMetaData> list = new LinkedList<ValidatorMetaData>();
-		for (ValidatorMutable v : validators){
-			if (v.isManualValidation() && v.isV1Validator())list.add(v.getVmd());
-		}
-		ValidatorMetaData[] result = new ValidatorMetaData[list.size()];
-		list.toArray(result);
-		return result;
-	}
-
-	/**
-	 * Answer all the V1 validators that are enabled for build.
-	 * @return
-	 */
-	private static ValidatorMetaData[] getEnabledBuildValidators(ValidatorMutable[] validators) {
-		List<ValidatorMetaData> list = new LinkedList<ValidatorMetaData>();
-		for (ValidatorMutable v : validators){
-			if (v.isBuildValidation() && v.isV1Validator())list.add(v.getVmd());
-		}
-		ValidatorMetaData[] result = new ValidatorMetaData[list.size()];
-		list.toArray(result);
-		return result;
-	}
-
-	
-	/**
-	 * Save the global preferences and the validators.
-	 */
-	public synchronized void savePreferences(){
-		try {
-			GlobalPreferences gp = ValManager.getDefault().getGlobalPreferences();
-			PreferencesWrapper prefs = PreferencesWrapper.getPreferences(null, null);
-			savePreferences(prefs, gp);
-			prefs.flush();
-			updateListeners(true);
-		}
-		catch (BackingStoreException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-	
-	/**
-	 * Save the global preferences and the validators.
-	 */
-	private void savePreferences(PreferencesWrapper prefs, GlobalPreferences gp){
-		prefs.putBoolean(PrefConstants.saveAuto, gp.getSaveAutomatically());
-		prefs.putBoolean(PrefConstants.suspend, gp.getDisableAllValidation());
-		prefs.putLong(PrefConstants.stateTS, gp.getStateTimeStamp());
-		prefs.putBoolean(PrefConstants.confirmDialog, gp.getConfirmDialog());
-		prefs.putBoolean(PrefConstants.override, gp.getOverride());
-		prefs.putInt(PrefConstants.frameworkVersion, ValPrefManagerGlobal.frameworkVersion);
-	}
-
-	/**
-	 * Update any message preferences in the map.
-	 * @param validator
-	 * @param settings
-	 */
-	public void loadMessages(Validator validator, Map<String, MessageSeveritySetting> settings) {
-		PreferencesWrapper pref = PreferencesWrapper.getPreferences(null, null);
-		try {
-			loadMessageSettings(validator, settings, pref);
-		}
-		catch (BackingStoreException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-		
-	/**
-	 * Load the message preferences for the validator into the map.
-	 * 
-	 * @param val
-	 * @param settings
-	 * @param root the root of the preference store
-	 */
-	static void loadMessageSettings(Validator val, Map<String, MessageSeveritySetting> settings, PreferencesWrapper root) 
-		throws BackingStoreException {
-		if (!root.nodeExists(PrefConstants.vals))return;
-		
-		PreferencesWrapper vals = root.node(PrefConstants.vals); 
-		if (!vals.nodeExists(val.getId()))return;
-		
-		PreferencesWrapper valPrefs = vals.node(val.getId());
-		String msgs = valPrefs.get(PrefConstants.msgs, ""); //$NON-NLS-1$
-		if (msgs.length() == 0)return;
-		
-		Map<String, MessageSeveritySetting.Severity> map = Msgs.deserialize(msgs);
-		
-		for (Map.Entry<String, MessageSeveritySetting.Severity> me : map.entrySet()){
-			MessageSeveritySetting ms = settings.get(me.getKey());
-			if (ms != null)ms.setCurrent(me.getValue());
-		}		
-	}
-
-	/**
-	 * Save whether the validator is enabled or not. 
-	 * @param validator
-	 * @param prefs up to the filter part of the preference tree
-	 */
-//	private void saveShallowPreference(Validator validator, Preferences prefs) {
-//		if (validator.asV2Validator() == null)return;
-//		Preferences val = prefs.node(validator.getId());
-//		val.putBoolean(PrefConstants.build, validator.isBuildValidation());
-//		val.putBoolean(PrefConstants.manual, validator.isManualValidation());
-//		val.putInt(PrefConstants.version, validator.getVersion());
-//	}
-	
-//	/**
-//	 * Load the customized message settings from the preference store.
-//	 * @param messageSettings
-//	 */
-//	public void loadMessageSettings(Validator val, MessageCategory[] messageSettings) {
-//		try {
-//			loadMessageSettings(val, messageSettings, ValidationFramework.getDefault().getPreferenceStore());
-//		}
-//		catch (Exception e){
-//			ValidationPlugin.getPlugin().handleException(e);
-//		}
-//	}
-	
-	private final static class Global {
-		private final boolean 	_manual;
-		private final boolean 	_build;
-		private final int		_version;
-		private final String	_delegating;
-		
-		public Global(String value){
-			Deserializer d = new Deserializer(value);
-			_manual = d.getBoolean();
-			_build = d.getBoolean();
-			_version = d.getInt();
-			_delegating = d.hasNext() ? d.getString() : null;
-		}
-		
-		public Global(boolean manual, boolean build, int version, String delegating){
-			_manual = manual;
-			_build = build;
-			_version = version;
-			_delegating = delegating;
-		}
-		
-		public String serialize(){
-			Serializer s = new Serializer(50);
-			s.put(_manual);
-			s.put(_build);
-			s.put(_version);
-			if (_delegating != null)s.put(_delegating);
-			return s.toString();
-		}
-
-		public boolean isManual() {
-			return _manual;
-		}
-
-		public boolean isBuild() {
-			return _build;
-		}
-
-		public int getVersion() {
-			return _version;
-		}
-
-		public String getDelegating() {
-			return _delegating;
-		}
-	}
-	
-	private final static class Msgs {
-		public static String serialize(Collection<MessageSeveritySetting> messages){
-			Serializer s = new Serializer(100);
-			for (MessageSeveritySetting ms : messages){
-				s.put(ms.getId());
-				s.put(ms.getCurrent().ordinal());
-			}
-			return s.toString();	
-		}
-		
-		/**
-		 * Answer a map for all the messages.
-		 * The key is the message id and the value is the current setting for that message
-		 * @param v
-		 * @return
-		 */
-		public static Map<String, MessageSeveritySetting.Severity> deserialize(String v){
-			Map<String, MessageSeveritySetting.Severity> map = new HashMap<String, MessageSeveritySetting.Severity>(10);
-			Deserializer d = new Deserializer(v);
-			while(d.hasNext()){
-				String id = d.getString();
-				int sev = d.getInt();
-				map.put(id, MessageSeveritySetting.Severity.values()[sev]);
-			}
-			return map;
-		}
-	}
-	
-	/**
-	 * Store the singleton for the ValPrefManagerGlobal. This approach is used to avoid having to synchronize the
-	 * ValPrefManagerGlobal.getDefault() method.
-	 * 
-	 * @author karasiuk
-	 *
-	 */
-	private final static class Singleton {
-		final static ValPrefManagerGlobal valPrefManagerGlobal = new ValPrefManagerGlobal();
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValPrefManagerProject.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValPrefManagerProject.java
deleted file mode 100644
index c28b031..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValPrefManagerProject.java
+++ /dev/null
@@ -1,388 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.validation.Friend;
-import org.eclipse.wst.validation.IMutableValidator;
-import org.eclipse.wst.validation.MessageSeveritySetting;
-import org.eclipse.wst.validation.MutableProjectSettings;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.Validator.V2;
-import org.eclipse.wst.validation.internal.model.ProjectPreferences;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * A class that knows how to manage the project level persisted validation settings.
- * @author karasiuk
- *
- */
-public final class ValPrefManagerProject {
-	
-	private final IProject	_project;
-	private final static List<IValChangedListener> _listeners = new LinkedList<IValChangedListener>();
-	
-	/**
-	 * The validators that are in the project preference file, but have
-	 * only been configured to the global preference level. That is they have not had
-	 * any project level customizations applied yet.
-	 */
-	private List<Validator> _validators;
-	
-	public ValPrefManagerProject(IProject project){
-		assert project != null;
-		_project = project;
-	}
-	
-	public static void addListener(IValChangedListener listener){
-		if (_listeners.contains(listener))return;
-		_listeners.add(listener);
-	}
-	
-	public static void removeListener(IValChangedListener listener){
-		_listeners.remove(listener);
-	}
-	
-	private static void updateListeners(IProject project){
-		for (IValChangedListener cl : _listeners)cl.validatorsForProjectChanged(project, true); 
-	}
-
-	
-	/**
-	 * Answer whether or not this project has validation settings.
-	 *   
-	 * @return true if it has settings. This does not mean that the settings are enabled, only that it
-	 * has settings.
-	 * 
-	 * @deprecated
-	 */
-	public boolean hasProjectSpecificSettings(){
-		PreferencesWrapper pref = getPreferences(null);
-		
-		if (pref == null)return false;
-		return true;
-	}
-	
-	/**
-	 * Answer the v2 validators that have been overridden by the project
-	 * preferences. The validators will not have the preference store's
-	 * customizations applied yet. The purpose of this method, is to identify the subset of validators 
-	 * that may later be configured.
-	 * 
-	 * @param baseValidators
-	 *            V2 validators from the extension points, and customized by any
-	 *            global preferences.
-	 */
-	public List<Validator> getValidators(Map<String, Validator> baseValidators) throws BackingStoreException {
-		List<Validator> vals = _validators;
-		if (vals == null){
-			vals = loadValidators(baseValidators);
-			_validators = vals;
-		}
-		return vals;
-	}
-	
-	/**
-	 * Load the validators from the preference store. The validators will not have the preference store's
-	 * customizations applied yet. The purpose of this method, is to identify the subset of validators 
-	 * that may later be configured.
-	 * 
-	 * @param baseValidators
-	 *            V2 validators from the extension points, and customized by any
-	 *            global preferences.
-	 * @return the validators that are in the project preference file, but have
-	 *         only been configured to the global preference level. That is they have not had
-	 *         any project level customizations applied yet.
-	 */
-	private List<Validator> loadValidators(Map<String, Validator> baseValidators) throws BackingStoreException {
-		List<Validator> list = new LinkedList<Validator>();
-		PreferencesWrapper pref = getPreferences(null);
-		if (pref.nodeExists(PrefConstants.vals)){
-			PreferencesWrapper vals = pref.node(PrefConstants.vals);
-			for (String id : vals.childrenNames()){
-				Validator base = baseValidators.get(id);
-				Validator v = ValPrefManagerGlobal.loadValidator(id, vals, base);
-				if (v != null){
-					V2 v2 = v.asV2Validator();
-					if (v2 != null)v2.setLevel(Validator.Level.Project);					
-					list.add(v);
-				}
-			}
-		}
-		return list;
-	}
-		
-	/**
-	 * Answer the setting of the getOverride field.
-	 */
-	public boolean getOverride(){
-		PreferencesWrapper pref = getPreferences(null);
-		
-		if (!pref.nodeExists())return ProjectPreferences.DefaultOverride;
-		
-		int version = pref.getInt(PrefConstants.frameworkVersion, 0);
-		if (version == 0){
-			try {
-				ProjectConfiguration pc = ConfigurationManager.getManager().getProjectConfiguration(_project);
-				return pc.getDoesProjectOverride();
-			}
-			catch (InvocationTargetException e){
-				// eat it, if it fails we just go with the defaults
-			}
-		}
-		return pref.getBoolean(PrefConstants.override, ProjectPreferences.DefaultOverride);
-	}
-
-	private ProjectPreferences migrateFromBeforeWTP30(IProject project, Map<String, Validator> baseValidators) {
-		try {
-			ProjectConfiguration pc = ConfigurationManager.getManager().getProjectConfiguration(project);
-			
-			List<Validator> list = migrateFromBeforeWTP30(baseValidators, pc);
-			Validator[] vals = new Validator[list.size()];
-			list.toArray(vals);
-			return new ProjectPreferences(project, pc.getDoesProjectOverride(), pc.isDisableAllValidation(), vals);
-		}
-		catch (InvocationTargetException e){
-			// eat it, if it fails we just go with the defaults
-		}
-		return new ProjectPreferences(project);
-	}
-
-	private List<Validator> migrateFromBeforeWTP30(Map<String, Validator> baseValidators, ProjectConfiguration pc)
-			throws InvocationTargetException {
-				
-		Set<String> build = pc.getEnabledBuildlValidators();
-		Set<String> manual = pc.getEnabledManualValidators();
-		
-		List<Validator> list = new LinkedList<Validator>();
-		for (Validator v : baseValidators.values()){
-			V2 v2 = v.asV2Validator();
-			if (v2 != null){
-				boolean isBuild = build == null || build.contains(v2.getValidatorClassname());
-				boolean isManual = manual == null || manual.contains(v2.getValidatorClassname());
-				if ((v.isBuildValidation() != isBuild) || (v.isManualValidation() != isManual)){
-					V2 copy = v2.copy().asV2Validator();
-					copy.setBuildValidation(isBuild);
-					copy.setManualValidation(isManual);
-					copy.setLevel(Validator.Level.Project);
-					Friend.setMigrated(copy, true);
-					list.add(copy);
-				}
-			}
-		}
-		return list;
-	}
-	
-	
-	/**
-	 * Answer the project preferences from the preference store.
-	 * @return null if the project does not have any specific preferences.
-	 */
-	public ProjectPreferences loadProjectPreferences(IProject project, Map<String, Validator> baseValidators) 
-		throws BackingStoreException {
-		
-		PreferencesWrapper pref = getPreferences(null);
-
-		if (pref == null)return null;
-		int version = pref.getInt(PrefConstants.frameworkVersion, 0);
-		if (version == 0){
-			// This means that we have a project that is before WTP 3.0
-			return migrateFromBeforeWTP30(project, baseValidators);
-		}
-		
-		if (version != ValPrefManagerGlobal.frameworkVersion)ValPrefManagerGlobal.migrate(version, pref);
-
-		if (!pref.nodeExists(PrefConstants.vals)){
-			return new ProjectPreferences(project, pref.getBoolean(PrefConstants.override, ProjectPreferences.DefaultOverride),
-				pref.getBoolean(PrefConstants.suspend, ProjectPreferences.DefaultSuspend), new Validator[0]);
-		}
-		
-		PreferencesWrapper vp = pref.node(PrefConstants.vals);
-		List<Validator> list = new LinkedList<Validator>();
-		for (String id : vp.childrenNames()){
-			Validator base = baseValidators.get(id);
-			Validator v = ValPrefManagerGlobal.loadValidator(id, vp, base);
-			if (v != null){
-				V2 v2 = v.asV2Validator();
-				if (v2 != null)v2.setLevel(Validator.Level.Project);
-				list.add(v);
-			}
-		}
-		Validator[] vals = new Validator[list.size()];
-		list.toArray(vals);
-		return new ProjectPreferences(project, pref.getBoolean(PrefConstants.override, ProjectPreferences.DefaultOverride),
-			pref.getBoolean(PrefConstants.suspend, ProjectPreferences.DefaultSuspend), vals);
-	}
-
-	private PreferencesWrapper getPreferences(Boolean persist) {
-		return PreferencesWrapper.getPreferences(_project, persist);
-	}
-
-	public void savePreferences(ProjectPreferences projectPreferences) {
-		Validator[] validators = projectPreferences.getValidators();
-		PreferencesWrapper pref = getPreferences(null);
-		pref.putBoolean(PrefConstants.suspend, projectPreferences.getSuspend());
-		pref.putBoolean(PrefConstants.override, projectPreferences.getOverride());
-		pref.putInt(PrefConstants.frameworkVersion, ValPrefManagerGlobal.frameworkVersion);
-		PreferencesWrapper vals = pref.node(PrefConstants.vals);
-		try {
-			Validator[] workspaceVals = ValManager.getDefault().getValidators();
-			Map<String, Validator> base = new HashMap<String, Validator>(workspaceVals.length);
-			for (Validator v : workspaceVals)base.put(v.getId(), v);
-			for (Validator v : validators)ValPrefManagerGlobal.save(v, vals, base);
-			pref.flush();
-			ProjectConfiguration pc = ConfigurationManager.getManager()
-				.getProjectConfiguration(projectPreferences.getProject());
-			pc.setEnabledBuildValidators(getEnabledBuildValidators(validators));
-			pc.setEnabledManualValidators(getEnabledManualValidators(validators));
-			pc.passivate();
-			pc.store();
-			updateListeners(_project);
-		}
-		catch (Exception e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}		
-	}
-
-	public void savePreferences(ProjectPreferences projectPreferences, ValidatorMutable[] validators) {
-		PreferencesWrapper pref = getPreferences(null);
-		pref.putBoolean(PrefConstants.suspend, projectPreferences.getSuspend());
-		pref.putBoolean(PrefConstants.override, projectPreferences.getOverride());
-		pref.putInt(PrefConstants.frameworkVersion, ValPrefManagerGlobal.frameworkVersion);
-		try {
-			savePreferences(validators, false, null);
-			pref.flush();
-			updateListeners(_project);
-		}
-		catch (Exception e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}		
-	}
-	
-	public void savePreferences(MutableProjectSettings settings, Boolean persist){
-		IProject project = settings.getProject();
-		PreferencesWrapper pref = PreferencesWrapper.getPreferences(project, persist);
-		pref.putBoolean(PrefConstants.suspend, settings.getSuspend());
-		pref.putBoolean(PrefConstants.override, settings.getOverride());
-		pref.putInt(PrefConstants.frameworkVersion, ValPrefManagerGlobal.frameworkVersion);
-		
-		IMutableValidator[] vms = settings.getValidators();
-		ValidatorMutable[] validators = new ValidatorMutable[vms.length];
-		for (int i=0; i<vms.length;i++)validators[i] = (ValidatorMutable)vms[i];
-		
-		try {
-			savePreferences(validators, false, persist);
-			pref.flush();
-			updateListeners(project);
-		}
-		catch (Exception e){
-			if (project.isAccessible())ValidationPlugin.getPlugin().handleException(e);
-		}
-	}
-	
-	public void savePreferences(ValidatorMutable[] validators, boolean flush, Boolean persist){
-		PreferencesWrapper pref = getPreferences(persist);
-		pref.putInt(PrefConstants.frameworkVersion, ValPrefManagerGlobal.frameworkVersion);
-		PreferencesWrapper vals = pref.node(PrefConstants.vals);
-		try {
-			Validator[] workspaceVals = ValManager.getDefault().getValidators();
-			Map<String, Validator> base = new HashMap<String, Validator>(workspaceVals.length);
-			for (Validator v : workspaceVals)base.put(v.getId(), v);
-			for (ValidatorMutable v : validators)ValPrefManagerGlobal.save(v, vals, base);
-			ProjectConfiguration pc = ConfigurationManager.getManager().getProjectConfiguration(_project);
-			pc.setEnabledBuildValidators(getEnabledBuildValidators(validators));
-			pc.setEnabledManualValidators(getEnabledManualValidators(validators));
-			pc.passivate();
-			pc.store();
-			if (flush){
-				pref.flush();
-				updateListeners(_project);
-			}
-		}
-		catch (Exception e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}		
-		
-	}
-	
-	/**
-	 * Answer all the V1 validators that are enabled for build.
-	 * @return
-	 */
-	private Set<ValidatorMetaData> getEnabledBuildValidators(Validator[] validators) {
-		Set<ValidatorMetaData> set = new HashSet<ValidatorMetaData>(50);
-		for (Validator v : validators){
-			if (v.isBuildValidation()){
-				Validator.V1 v1 = v.asV1Validator();
-				if (v1 != null)set.add(v1.getVmd());
-			}
-		}
-		return set;
-	}
-	
-	/**
-	 * Answer all the V1 validators that are enabled for build.
-	 * @return
-	 */
-	private Set<ValidatorMetaData> getEnabledBuildValidators(ValidatorMutable[] validators) {
-		Set<ValidatorMetaData> set = new HashSet<ValidatorMetaData>(50);
-		for (ValidatorMutable v : validators){
-			if (v.isBuildValidation() && v.isV1Validator())set.add(v.getVmd());
-		}
-		return set;
-	}
-	
-	/**
-	 * Answer all the V1 validators that are enabled for manual validation.
-	 * @return
-	 */
-	private Set<ValidatorMetaData> getEnabledManualValidators(Validator[] validators) {
-		Set<ValidatorMetaData> set = new HashSet<ValidatorMetaData>(50);
-		for (Validator v : validators){
-			if (v.isManualValidation()){
-				Validator.V1 v1 = v.asV1Validator();
-				if (v1 != null)set.add(v1.getVmd());
-			}
-		}
-		return set;
-	}
-	
-	/**
-	 * Answer all the V1 validators that are enabled for manual validation.
-	 * @return
-	 */
-	private Set<ValidatorMetaData> getEnabledManualValidators(ValidatorMutable[] validators) {
-		Set<ValidatorMetaData> set = new HashSet<ValidatorMetaData>(50);
-		for (ValidatorMutable v : validators){
-			if (v.isManualValidation() && v.isV1Validator())set.add(v.getVmd());
-		}
-		return set;
-	}
-	
-	public void loadMessages(Validator validator, Map<String, MessageSeveritySetting> settings) {
-		try {
-			ValPrefManagerGlobal.loadMessageSettings(validator, settings, getPreferences(null));
-		}
-		catch (BackingStoreException e){
-			ValidationPlugin.getPlugin().handleException(e);
-		}		
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValProperty.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValProperty.java
deleted file mode 100644
index fd001dc..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValProperty.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.BitSet;
-
-/**
- * A resource session property, that is used to improve the performance of the validation framework. This is placed
- * on each resource and it enables the framework to quickly determine if the resource needs to be processed.
- * @author karasiuk
- *
- */
-public class ValProperty {
-/*
- * I did some performance measurements on the IResource#setSessionProperty() and IResource#getSessionProperty()
- * methods, and they were very fast. I used a very large workspace (over 17,000) resources, and you could set (or get)
- * a property on all the resources in under 100ms. 
- */
-	
-	private int 	_configNumber;
-	private BitSet	_configSet = new BitSet(100);
-	
-	private int		_validationNumber;
-	private BitSet	_validationSet = new BitSet(100);
-	
-	public int getConfigNumber() {
-		return _configNumber;
-	}
-	public void setConfigNumber(int configNumber) {
-		_configNumber = configNumber;
-	}
-	public BitSet getConfigSet() {
-		return _configSet;
-	}
-	public int getValidationNumber() {
-		return _validationNumber;
-	}
-	public void setValidationNumber(int validationNumber) {
-		_validationNumber = validationNumber;
-	}
-	public BitSet getValidationSet() {
-		return _validationSet;
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValType.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValType.java
deleted file mode 100644
index 8a97136..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValType.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-/**
- * Type of validation. Build or Manual?
- * @author karasiuk
- *
- */
-public enum ValType {
-	/** The validation is triggered via a resource change and the build process. */
-	Build, 
-	
-	/** The user manually requested the validation. */
-	Manual,
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidationResultSummary.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidationResultSummary.java
deleted file mode 100644
index 9e91217..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidationResultSummary.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-/**
- * An immutable object that holds a summary of the validation.
- * @author karasiuk
- *
- */
-public final class ValidationResultSummary {
-	
-	private final int 	_error;
-	private final int 	_warning;
-	private final int	_info;
-	
-	public ValidationResultSummary(int error, int warning, int info){
-		_error = error;
-		_warning = warning;
-		_info = info;
-	}
-
-	public int getSeverityError() {
-		return _error;
-	}
-
-	public int getSeverityWarning() {
-		return _warning;
-	}
-
-	public int getSeverityInfo() {
-		return _info;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidationRunner.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidationRunner.java
deleted file mode 100644
index 01bf297..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidationRunner.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.internal.model.IValidatorVisitor;
-
-/**
- * Run the validators on a selected set of resources.
- * <p>
- * This is used to run manual validations (i.e. the user selects the Validate menu item), 
- * or it is invoked programmatically by a third party through the ValidationFramework API.
- * It is not used for the build based invocation.
- * </p> 
- * @author karasiuk
- *
- */
-public final class ValidationRunner implements IWorkspaceRunnable {
-	
-	private Map<IProject, Set<IResource>>		_projects;
-	private	ValType			_valType;
-	private ValOperation	_valOperation;
-	
-	/**
-	 * Validate the selected projects and/or resources.
-	 * 
-	 * @param projects
-	 *            The selected projects. The key is an IProject and the value is
-	 *            the Set of IResources that were selected. Often this will be
-	 *            every resource in the project.
-	 * 
-	 * @param valType
-	 *            The type of validation that has been requested.
-	 * 
-	 * @param monitor
-	 *            Progress monitor.
-	 * 
-	 * @param atomic
-	 *            Run as an atomic workspace operation?
-	 */
-	public static ValOperation validate(Map<IProject, Set<IResource>> projects, ValType valType, 
-		IProgressMonitor monitor, boolean atomic) throws CoreException{
-		ValidationRunner me = new ValidationRunner(projects, valType);
-		if (atomic)ResourcesPlugin.getWorkspace().run(me, null, IWorkspace.AVOID_UPDATE, monitor);
-		else me.execute(monitor);
-		return me._valOperation;
-	}
-	
-	/**
-	 * Validate the selected file. This is a convenience method, it simply calls the more flexible 
-	 * validate with Map method. 
-	 * 
-	 * @param file
-	 *            The file to be validated.
-	 * 
-	 * @param valType
-	 *            The type of validation that has been requested.
-	 * 
-	 * @param monitor
-	 *            Progress monitor.
-	 * 
-	 * @param atomic
-	 *            Run as an atomic workspace operation?
-	 */
-	public static ValOperation validate(IFile file, ValType valType, IProgressMonitor monitor, boolean atomic) throws CoreException{
-	    final Map<IProject, Set<IResource>> map = new HashMap<IProject, Set<IResource>>(1);
-	      
-	    Set<IResource> set = new HashSet<IResource>(1);
-	    set.add(file);
-	    map.put(file.getProject(), set);
-	    return validate(map, valType, monitor, atomic);		
-	}
-	
-	private ValidationRunner(Map<IProject, Set<IResource>> projects, ValType valType){
-		_projects = projects;
-		_valType = valType;
-		
-	}
-	
-	private ValOperation execute(IProgressMonitor monitor){
-		_valOperation = new ValOperation();
-		ValManager manager = ValManager.getDefault();
-		
-		IValidatorVisitor startingVisitor = new IValidatorVisitor(){
-			public void visit(Validator validator, IProject project, ValType valType,
-				ValOperation operation, IProgressMonitor monitor) {
-				validator.validationStarting(project, operation.getState(), monitor);
-			}			
-		};
-		
-		IValidatorVisitor finishedVisitor = new IValidatorVisitor(){
-
-			public void visit(Validator validator, IProject project, ValType valType,
-				ValOperation operation, IProgressMonitor monitor) {
-
-				validator.validationFinishing(project, operation.getState(), monitor);				
-			}			
-		};
-		
-		manager.accept(startingVisitor, null, _valType, _valOperation, monitor);
-				
-		for (Map.Entry<IProject, Set<IResource>> me : _projects.entrySet()){
-			if (monitor.isCanceled()){
-				_valOperation.setCanceled(true);
-				return _valOperation;
-			}
-			IProject project = me.getKey();
-			manager.accept(startingVisitor, project, _valType, _valOperation, monitor);
-			for (IResource resource : me.getValue()){
-				try {
-					manager.validate(project, resource, IResourceDelta.NO_CHANGE, _valType, 
-							IncrementalProjectBuilder.AUTO_BUILD, _valOperation, monitor);
-				}
-				catch (ResourceUnavailableError error){
-					// if the resource is no longer available, we can't validate it, so we should just move on. 
-				}
-			}
-			manager.accept(finishedVisitor, project, _valType, _valOperation, monitor);
-		}
-		manager.accept(finishedVisitor, null, _valType, _valOperation, monitor);
-		return _valOperation;
-	}
-
-	public void run(IProgressMonitor monitor) throws CoreException {
-		execute(monitor);		
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidatorExtensionReader.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidatorExtensionReader.java
deleted file mode 100644
index c897cfc..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidatorExtensionReader.java
+++ /dev/null
@@ -1,374 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IContributor;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.validation.MessageSeveritySetting;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.Validator.V2;
-import org.eclipse.wst.validation.internal.model.FilterGroup;
-import org.eclipse.wst.validation.internal.model.FilterRule;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * Process the validator (version 2) extension point.
- * 
- * @author karasiuk
- *
- */
-public class ValidatorExtensionReader {
-	
-	private static ValidatorExtensionReader _me = new ValidatorExtensionReader();
-	
-	public  static ValidatorExtensionReader getDefault(){
-		return _me;
-	}
-	
-	private ValidatorExtensionReader(){}
-	
-	/**
-	 * Process the v2 extensions, returning all the v2 validators.
-	 */
-	Collection<Validator> process() {
-		Map<String,Validator> map = new HashMap<String, Validator>(100);
-		IExtensionPoint extensionPoint = getExtensionPoint();
-		if (extensionPoint == null)return map.values();
-				
-		for (IExtension ext : extensionPoint.getExtensions()){
-			for (IConfigurationElement validator : ext.getConfigurationElements()){
-				String id = ext.getUniqueIdentifier();
-				if (Tracing.isEnabled(id)){
-					Validator v = processValidator(validator, id, ext.getLabel(), null);
-					if (v != null)map.put(v.getId(),v);
-				}
-			}
-		}
-		
-		extensionPoint = getExtensionPointExclude();
-		if (extensionPoint != null){
-			for (IExtension ext : extensionPoint.getExtensions()){
-				for (IConfigurationElement validator : ext.getConfigurationElements()){
-					String id = validator.getAttribute(ExtensionConstants.Exclude.id);
-					Validator v = map.get(id);
-					V2 v2 = null;
-					if (v != null)v2 = v.asV2Validator();
-
-					if (v2 == null){
-						String msg = NLS.bind("Plug-in configuration error, extension {0} references validator id {1} but this id does not exist.",  //$NON-NLS-1$
-							extensionPoint.getUniqueIdentifier(), id);
-						CoreException ex = new CoreException(new Status(IStatus.ERROR, ValidationPlugin.PLUGIN_ID, msg));
-						ValidationPlugin.getPlugin().handleException(ex);
-					}
-					else {
-						for (IConfigurationElement exclude : validator.getChildren()){
-							FilterGroup fg = null;
-							try {
-								fg = createFilterGroup(exclude);
-							}
-							catch (Exception e){
-								ValidationPlugin.getPlugin().handleException(e);
-								IContributor contrib = validator.getContributor();
-								String message = NLS.bind(ValMessages.ErrConfig, contrib.getName());
-								ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, message);								
-							}
-							if (fg != null && fg.isExclude()){
-								mergeExcludeGroup(v2, fg);
-							}
-						}
-					}					
-				}
-			}
-			
-		}
-		return map.values();
-		
-	}
-	
-	/**
-	 * Merge the rules from the filter group into the current exclude group, creating a current exclude
-	 * group if need be.
-	 * @param v2
-	 * @param fg
-	 */
-	private void mergeExcludeGroup(V2 v2, FilterGroup fg){
-		FilterGroup existing = null;
-		for (FilterGroup group : v2.getGroups()){
-			if (group.isExclude()){
-				existing = group;
-				break;
-			}
-		}
-		if (existing == null)v2.add(fg);
-		else {
-			List<FilterRule> rules = new LinkedList<FilterRule>();
-			for (FilterRule rule : existing.getRules())rules.add(rule);
-			
-			for (FilterRule rule : fg.getRules())rules.add(rule);
-			
-			FilterRule[] filterRules = new FilterRule[rules.size()];
-			rules.toArray(filterRules);
-			FilterGroup merged = FilterGroup.create(existing.isExclude(), filterRules);
-			
-			v2.replaceFilterGroup(existing, merged);
-		}
-	}
-	
-	/**
-	 * Process the validator element in a validator extension.
-	 * 
-	 * @param validator
-	 *            The validator element.
-	 * 
-	 * @param deep
-	 *            If true load all the configuration elements for each
-	 *            validator, if false do a shallow load, where only the
-	 *            validator class, id and name's are loaded.
-	 * 
-	 * @param project
-	 *            The project that you are defined in. This can be null which
-	 *            means that you are a global validator.
-	 * 
-	 * @return a configured validator or null if there was an error.
-	 */
-	private Validator processValidator(IConfigurationElement validator, String id, String label, IProject project) {
-		Validator.V2 v = null;
-		try {
-			v = Validator.create(validator, project).asV2Validator();
-			v.setLevel(Validator.Level.Extension);
-			v.setId(id);
-			v.setName(label);
-			v.setBuildValidation(getAttribute(validator, ExtensionConstants.build, true));
-			v.setManualValidation(getAttribute(validator, ExtensionConstants.manual, true));
-			v.setMarkerId(validator.getAttribute(ExtensionConstants.markerId));
-			v.setVersion(getAttribute(validator, ExtensionConstants.version, 1));
-			v.setSourceId(validator.getAttribute(ExtensionConstants.sourceId));
-			IConfigurationElement[] children = validator.getChildren();
-			for (IConfigurationElement child : children)processIncludeAndExcludeElement(v, child);
-		}
-		catch (Exception e){
-			ValidationPlugin.getPlugin().handleException(e);
-			IContributor contrib = validator.getContributor();
-			String message = NLS.bind(ValMessages.ErrConfig, contrib.getName());
-			ValidationPlugin.getPlugin().logMessage(IStatus.ERROR, message);
-		}
-		return v;
-	}
-	
-	/**
-	 * Answer all the messages that this validator has defined.
-	 * @param v
-	 * @return an empty list if the validator did not define any messages.
-	 */
-	public List<MessageSeveritySetting> addMessages(Validator v){
-		List<MessageSeveritySetting> list = new LinkedList<MessageSeveritySetting>();
-		IExtensionPoint extensionPoint = getExtensionPoint();
-		if (extensionPoint == null)return list;
-		IExtension ext = extensionPoint.getExtension(v.getId());
-		if (ext == null)return list;
-		
-		for (IConfigurationElement elem : ext.getConfigurationElements()){
-			for (IConfigurationElement ce : elem.getChildren(ExtensionConstants.MessageCategory.name)){
-				list.add(processMessage(ce));
-			}
-		}
-
-		return list;
-	}
-
-	/**
-	 * Answer the extension point for the v2 validators.
-	 * 
-	 * @return null if there is a problem or no extensions.
-	 */
-	private IExtensionPoint getExtensionPoint() {
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		return registry.getExtensionPoint(ValidationPlugin.PLUGIN_ID, ExtensionConstants.validator);
-	}
-
-	/**
-	 * Answer the extension point for adding exclusion filters. This is where another validator can
-	 * further restrict an existing validator.
-	 * 
-	 * @return null if there is a problem or no extensions.
-	 */
-	private IExtensionPoint getExtensionPointExclude() {
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		return registry.getExtensionPoint(ValidationPlugin.PLUGIN_ID, ExtensionConstants.excludeExtension);
-	}
-	
-	/**
-	 * Process a message element for the validator, by creating a MessageCategory for it.
-	 * 
-	 * @param ce a MessageCategory element.
-	 */
-	private MessageSeveritySetting processMessage(IConfigurationElement ce) {
-		String s = ce.getAttribute(ExtensionConstants.MessageCategory.severity);
-		MessageSeveritySetting.Severity sev = null;
-		if (ExtensionConstants.MessageCategory.sevError.equals(s))sev = MessageSeveritySetting.Severity.Error;
-		else if (ExtensionConstants.MessageCategory.sevWarning.equals(s))sev = MessageSeveritySetting.Severity.Warning;
-		else if (ExtensionConstants.MessageCategory.sevIgnore.equals(s))sev = MessageSeveritySetting.Severity.Ignore;
-		
-		return new MessageSeveritySetting(ce.getAttribute(ExtensionConstants.MessageCategory.id), 
-			ce.getAttribute(ExtensionConstants.MessageCategory.label), sev);		
-	}
-
-	/** 
-	 * Process the include and exclude elements.
-	 * 
-	 *  @param v The validator that we are building up.
-	 *  @param group The children of the validator tag. This may included include and exclude elements.
-	 *  Other elements are ignored. 
-	 */
-	private void processIncludeAndExcludeElement(Validator.V2 v, IConfigurationElement group) {
-		FilterGroup fg = createFilterGroup(group);
-		if (fg != null)v.add(fg);
-	}
-	
-	/**
-	 * Process an include or exclude element, returning a filter group for it.
-	 * 
-	 * @param group
-	 *            An include, exclude or some other element. Only include and
-	 *            exclude elements are processed, other types are ignored.
-	 *            
-	 * @return a filter group that corresponds to the include or exclude
-	 *         element, or null if the element was not an include or exclude
-	 *         element.
-	 */
-	private FilterGroup createFilterGroup(IConfigurationElement group){
-		String name = group.getName();
-		if (!FilterGroup.isKnownName(name))return null; 
-		
-		
-		IConfigurationElement[] rules = group.getChildren(ExtensionConstants.rules);
-		// there should only be one
-		List<FilterRule> list = new LinkedList<FilterRule>();
-		for (int i=0; i<rules.length; i++){
-			IConfigurationElement[] r = rules[i].getChildren();
-			for(int j=0; j<r.length; j++){
-				list.add(processRule(r[j]));
-			}
-		}
-		FilterRule[] filterRules = new FilterRule[list.size()];
-		list.toArray(filterRules);
-		return FilterGroup.create(name, filterRules);
-	}
-
-	/**
-	 * Process a rule in one of the rule groups.
-	 * 
-	 * @param rule a rule in the group, like fileext.
-	 */
-	private FilterRule processRule(IConfigurationElement rule) {
-		FilterRule fr = FilterRule.create(rule);
-		if (fr == null){
-			String contributor = ""; //$NON-NLS-1$
-			String name = ""; //$NON-NLS-1$
-			try {
-				contributor = rule.getDeclaringExtension().getContributor().getName();
-				name = rule.getName();
-			}
-			catch (Exception e){
-				// eat it
-			}
-			throw new IllegalStateException(ValMessages.ErrFilterRule + " : " + //$NON-NLS-1$
-					contributor	 + " : " + name); //$NON-NLS-1$
-		}
-		return fr;
-	}
-	
-	/**
-	 * Determine if any of the validators need to be migrated, and if so answer a new
-	 * Validator array.
-	 * 
-	 * @param validators the existing validators (from the preferences).
-	 *  
-	 * @return null if no validators needed to be migrated.
-	 */
-	Validator[] migrate(Validator[] validators, IProject project) {
-		int count = 0;
-		Map<String, Validator> map = new HashMap<String, Validator>(validators.length);
-		for (Validator v : validators)map.put(v.getId(), v);
-		
-		IExtensionPoint extensionPoint = getExtensionPoint();
-		if (extensionPoint == null)return null;
-				
-		for (IExtension ext : extensionPoint.getExtensions()){
-			for (IConfigurationElement validator : ext.getConfigurationElements()){
-				Validator v = processValidator(validator, ext.getUniqueIdentifier(), ext.getLabel(), project);
-				if (v == null)continue;
-				Validator old = map.get(v.getId());
-				if (old == null || old.getVersion() < v.getVersion()){
-					//TODO we may be replacing user preferences, at some point we may want to do a real migration.
-					map.put(v.getId(), v);
-					count++;
-				}
-			}
-		}
-		
-		if (count > 0){
-			Validator[] vals = new Validator[map.size()];
-			map.values().toArray(vals);
-			return vals;
-		}
-		return null;
-	}
-	
-	private boolean getAttribute(IConfigurationElement element, String name, boolean dft){
-		String v = element.getAttribute(name);
-		if (v == null)return dft;
-		if ("true".equalsIgnoreCase(v))return true; //$NON-NLS-1$
-		if ("false".equalsIgnoreCase(v))return false; //$NON-NLS-1$
-		return dft;
-	}
-	
-	private int getAttribute(IConfigurationElement element, String name, int dft){
-		String v = element.getAttribute(name);
-		if (v == null)return dft;
-		try {
-			return Integer.parseInt(v);
-		}
-		catch (Exception e){
-			// eat it.
-		}
-		return dft;
-	}
-	
-//	/**
-//	 * This method is only used for debugging.
-//	 * @param elem
-//	 */
-//	private static void dump(IConfigurationElement elem){
-//		String name = elem.getName();
-//		String[] attribs = elem.getAttributeNames();
-//		String[] vals = new String[attribs.length];
-//		for (int i=0; i<vals.length; i++)vals[i] = elem.getAttribute(attribs[i]);
-//		String v = elem.getValue();
-//		IConfigurationElement[] children = elem.getChildren();
-//		for (int i=0; i<children.length; i++)dump(children[i]);
-//	}
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidatorGroupExtensionReader.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidatorGroupExtensionReader.java
deleted file mode 100644
index 62543f7..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidatorGroupExtensionReader.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.validation.IValidatorGroupListener;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * Process the validator group (for use with validator version 2 only) extension point.
- * 
- * @author nitin
- * 
- */
-public class ValidatorGroupExtensionReader {
-
-	private static final String DOT = "."; //$NON-NLS-1$
-	private static ValidatorGroupExtensionReader _instance;
-
-	public static ValidatorGroupExtensionReader getDefault() {
-		if (_instance == null)_instance = new ValidatorGroupExtensionReader();
-		return _instance;
-	}
-
-	/**
-	 * Map of group IDs to configuration elements
-	 */
-	private Map<String, List<IConfigurationElement>> _map;
-	
-	/**
-	 * Map of group ID's to resolved configuration elements.
-	 */
-	private Map<String, IValidatorGroupListener[]> _resolved;
-
-	private ValidatorGroupExtensionReader() {
-		init();
-	}
-
-	/**
-	 * Answer the listeners with this group id.
-	 * @param groupID
-	 * @return an empty array there are no listeners for this group id.
-	 */
-	IValidatorGroupListener[] createListeners(String groupID) throws CoreException {
-		IValidatorGroupListener[] result = _resolved.get(groupID);
-		if (result != null)return result;
-				
-		List<IConfigurationElement> elements = _map.get(groupID);
-		if (elements == null){
-			_resolved.put(groupID, new IValidatorGroupListener[0]);
-			String msg = NLS.bind("Configuration error, there is no validation listener group with id: {0}", groupID); //$NON-NLS-1$
-			Status status = new Status(IStatus.ERROR, ValidationPlugin.PLUGIN_ID, msg);
-			throw new CoreException(status);
-		}
-		
-		List<IValidatorGroupListener> listeners = new ArrayList<IValidatorGroupListener>(elements.size());
-		for (IConfigurationElement element : elements) {
-			IValidatorGroupListener listener;
-			try {
-				listener = (IValidatorGroupListener) element.createExecutableExtension(ExtensionConstants.Group.attClass);
-				listeners.add(listener);
-			}
-			catch (Exception e) {
-				ValidationPlugin.getPlugin().handleException(e);
-				listeners = new ArrayList<IValidatorGroupListener>();
-			}
-		}
-
-		result = listeners.toArray(new IValidatorGroupListener[listeners.size()]);
-		_resolved.put(groupID, result);
-		return result;
-	}
-
-	/**
-	 * Answer the extension point for the validatorGroups.
-	 * 
-	 * @return null if there is a problem or no extensions.
-	 */
-	private IExtensionPoint getExtensionPoint() {
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		return registry.getExtensionPoint(ValidationPlugin.PLUGIN_ID, ExtensionConstants.group);
-	}
-
-	private void init() {
-		_map = new HashMap<String, List<IConfigurationElement>>(4);
-		_resolved = new HashMap<String, IValidatorGroupListener[]>(4);
-
-		IExtensionPoint extensionPoint = getExtensionPoint();
-		if (extensionPoint != null) {
-			for (IExtension ext : extensionPoint.getExtensions()) {
-				for (IConfigurationElement group : ext.getConfigurationElements()) {
-					processGroupElement(group);
-				}
-			}
-		}
-	}
-
-	private void processGroupElement(IConfigurationElement element) {
-		if (!ExtensionConstants.Group.elementGroup.equals(element.getName()))return;
-		
-		String id = element.getAttribute(ExtensionConstants.Group.attId);
-		if (id == null)throw new IllegalStateException("Configuration error, the " +  //$NON-NLS-1$
-			ExtensionConstants.Group.attId + " is required"); //$NON-NLS-1$
-		// force the use of a qualified ID
-		if (id.indexOf(DOT) < 0) {
-			id = element.getContributor().getName() + DOT + id;
-		}
-		IConfigurationElement[] newElements = element.getChildren(ExtensionConstants.Group.elementListener);
-		if (newElements.length > 0) {
-			List<IConfigurationElement> elements = _map.get(id);
-			if (elements == null) {
-				elements = new ArrayList<IConfigurationElement>();
-				_map.put(id, elements);
-			}
-			elements.addAll(Arrays.asList(newElements));
-		}
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidatorMutable.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidatorMutable.java
deleted file mode 100644
index d18b0c5..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValidatorMutable.java
+++ /dev/null
@@ -1,258 +0,0 @@
-package org.eclipse.wst.validation.internal;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.validation.IMutableValidator;
-import org.eclipse.wst.validation.MessageSeveritySetting;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.Validator.V1;
-import org.eclipse.wst.validation.Validator.V2;
-import org.eclipse.wst.validation.internal.model.FilterGroup;
-
-/**
- * The mutable fields that a user can change through the preference or property page.
- * @author karasiuk
- *
- */
-public final class ValidatorMutable implements IAdaptable, IMutableValidator {
-	
-	private boolean _build;
-	private boolean	_manual;
-	private String _delegatingId;
-	
-	private int _changeCountGroups;
-	private int _changeCountMessages;
-	
-	private final String	_name;
-	private final String 	_sourceId;
-	private final boolean _isV1;
-	private final boolean _isV2;
-	private final ValidatorMetaData _vmd;
-	private final String _id;
-	private final int	_version;
-
-	private FilterGroup[] _groups;
-	private final Map<String, MessageSeveritySetting> _messageSettings;
-	private final String _validatorClassname;
-	
-	private final boolean 	_origBuild;
-	private final boolean 	_origManual;
-	private final String	_origDelegating;
-
-	public ValidatorMutable(Validator validator) {
-		_name = validator.getName();
-		_sourceId = validator.getSourceId();
-		_manual = validator.isManualValidation();
-		_build = validator.isBuildValidation();
-		V2 v2 = validator.asV2Validator();
-		_isV2 = v2 != null;
-		_delegatingId = validator.getDelegatingId();
-		
-		V1 v1 = validator.asV1Validator();
-		_isV1 = v1 != null;
-		_vmd = _isV1 ? v1.getVmd() : null;
-		_id = validator.getId();
-		
-		_origBuild = _build;
-		_origDelegating = _delegatingId;
-		_origManual = _manual;
-		_version = validator.getVersion();
-		_validatorClassname = validator.getValidatorClassname();
-		_messageSettings = new HashMap<String, MessageSeveritySetting>(10); 
-		for (Map.Entry<String, MessageSeveritySetting> me : validator.getMessageSettings().entrySet()){
-			_messageSettings.put(me.getKey(), me.getValue().copy());
-		}
-		
-		if (v2 != null){
-			FilterGroup[] groups = v2.getGroups();
-			_groups = new FilterGroup[groups.length];
-			System.arraycopy(groups, 0, _groups, 0, groups.length);
-		}
-	}
-
-	public ValidatorMutable(ValidatorMutable val) {
-		_build = val._build;
-		_delegatingId = val._delegatingId;
-		FilterGroup[] groups = val.getGroups();
-		_groups = new FilterGroup[groups.length];
-		System.arraycopy(groups, 0, _groups, 0, groups.length);
-		
-		_id = val._id;
-		_isV1 = val._isV1;
-		_isV2 = val._isV2;
-		_manual = val._manual;
-		_messageSettings = new HashMap<String, MessageSeveritySetting>(10); 
-		for (Map.Entry<String, MessageSeveritySetting> me : val.getMessageSettings().entrySet()){
-			_messageSettings.put(me.getKey(), me.getValue().copy());
-		}
-
-		_name = val._name;
-		_origBuild = val._origBuild;
-		_origDelegating = val._origDelegating;
-		_origManual = val._origManual;
-		_sourceId = val._sourceId;
-		_validatorClassname = val._validatorClassname;
-		_version = val._version;
-		_vmd = val._vmd;
-	}
-
-	public void setBuildValidation(boolean build) {
-		_build = build;		
-	}
-
-	public void setManualValidation(boolean manual) {
-		_manual = manual;
-	}
-
-	public String getName() {
-		return _name;
-	}
-
-	public boolean isManualValidation() {
-		return _manual;
-	}
-
-	public boolean isBuildValidation() {
-		return _build;
-	}
-
-	public boolean isV2Validator() {
-		return _isV2;
-	}
-
-	public String getDelegatingId() {
-		return _delegatingId;
-	}
-
-	/**
-	 * The caller of this method must not change the ValidatorMetaData.
-	 */
-	public ValidatorMetaData getVmd() {
-		return _vmd;
-	}
-
-	public boolean isV1Validator() {
-		return _isV1;
-	}
-
-	public String getId() {
-		return _id;
-	}
-
-	/**
-	 * Answer true if any of your settings have changed.
-	 */
-	public boolean isChanged() {
-		if (hasGlobalChanges())return true;
-		if (_changeCountGroups > 0 || _changeCountMessages > 0)return true;
-		return false;
-	}
-
-	public boolean hasGlobalChanges() {
-		if (_origBuild != _build)return true;
-		if (_origManual != _manual)return true;
-		if (!Misc.same(_origDelegating, _delegatingId))return true;
-		return false;
-	}
-
-	public int getVersion() {
-		return _version;
-	}
-
-	public void replaceFilterGroup(FilterGroup existing, FilterGroup merged) {
-		int i = find(existing);
-		if (i == -1)add(merged);  // this should never happen
-		else {
-			_groups[i] = merged;
-			bumpChangeCountGroups();
-		}
-	}
-	
-	public void remove(FilterGroup group) {
-		int i = find(group);
-		if (i == -1)return;
-		
-		FilterGroup[] groups = new FilterGroup[_groups.length-1];
-		if (i > 0)System.arraycopy(_groups, 0, groups, 0, i);
-		if (i < groups.length)System.arraycopy(_groups, i+1, groups, i, groups.length-i);
-		_groups = groups;
-		bumpChangeCountGroups();
-	}
-	
-	private int find(FilterGroup group) {
-		for (int i=0; i<_groups.length; i++)if (group == _groups[i])return i;
-		return -1;
-	}
-
-	public void add(FilterGroup fg) {
-		assert fg != null;
-		FilterGroup[] groups = new FilterGroup[_groups.length+1];
-		System.arraycopy(_groups, 0, groups, 0, _groups.length);
-		groups[_groups.length] = fg;
-		_groups = groups;
-		bumpChangeCountGroups();
-	}
-	
-	private void bumpChangeCountGroups(){
-		_changeCountGroups++;
-	}
-
-	public int getChangeCountGroups() {
-		return _changeCountGroups;
-	}
-	
-	public FilterGroup[] getGroups(){
-		return _groups;
-	}
-
-	public void setDelegatingId(String id) {
-		_delegatingId = id;	
-	}
-
-	public Map<String, MessageSeveritySetting> getMessageSettings() {
-		return _messageSettings;
-	}
-	
-	public void bumpChangeCountMessages(){
-		_changeCountMessages++;
-	}
-
-	public String getValidatorClassname() {
-		return _validatorClassname;
-	}
-
-	@SuppressWarnings("unchecked")
-	public Object getAdapter(Class adapter) {
-		return Platform.getAdapterManager().getAdapter(this, adapter);
-	}
-
-	public boolean sameConfig(Validator validator) {
-		if (validator == null)return false;
-		return hashCodeForConfig() == validator.hashCodeForConfig();
-	}
-
-	private int hashCodeForConfig() {
-		int h = 0;
-		if (_build)h += 101;
-		if (_delegatingId != null)h += _delegatingId.hashCode();
-		if (_manual)h += 201;
-		if (_messageSettings != null){
-			for (MessageSeveritySetting ms : _messageSettings.values())h += ms.hashCode();
-		}
-		if (_sourceId != null)h += _sourceId.hashCode();
-		h += _version;
-		if (_id != null)h += _id.hashCode();
-		for (FilterGroup fg : _groups)h += fg.hashCodeForConfig();
-		return h;
-	}
-
-	@Override
-	public String toString() {
-		return _name;
-	}
-
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/FilterGroup.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/FilterGroup.java
deleted file mode 100644
index 6d20dd5..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/FilterGroup.java
+++ /dev/null
@@ -1,253 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.model;
-
-import java.util.LinkedList;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.validation.internal.ContentTypeWrapper;
-import org.eclipse.wst.validation.internal.Deserializer;
-import org.eclipse.wst.validation.internal.ExtensionConstants;
-import org.eclipse.wst.validation.internal.Serializer;
-import org.eclipse.wst.validation.internal.ValMessages;
-
-/**
- * An immutable group of filter rules.
- * @author karasiuk
- *
- */
-public abstract class FilterGroup implements IAdaptable {
-	
-	private final FilterRule[] _rules;
-	
-	/** The version number of the serialization (in case we ever need to change this) */
-	private static final int SerializationVersion = 1;
-
-	/**
-	 * Answer a filter group based on the type of the group.
-	 * 
-	 * @param name either "include" or "exclude"
-	 * 
-	 * @return null if the name parameter isn't correct.
-	 */
-	public static FilterGroup create(String name, FilterRule[] rules) {
-		if (ExtensionConstants.include.equals(name))return new FilterIncludeGroup(rules);
-		if (ExtensionConstants.exclude.equals(name))return new FilterExcludeGroup(rules);
-		return null;
-	}
-	
-	/**
-	 * Answer a filter group from a deserializer.
-	 * @param des
-	 * 
-	 * @see FilterGroup#save(Serializer)
-	 */
-	public static FilterGroup create(Deserializer des){
-		des.getInt(); // get the version
-		String type = des.getString();
-		
-		int numberRules = des.getInt();
-		List<FilterRule> list = new LinkedList<FilterRule>();
-		for (int i=0; i<numberRules; i++)list.add(FilterRule.create(des));
-		FilterRule[] rules = new FilterRule[list.size()];
-		list.toArray(rules);
-
-		return create(type, rules);
-	}
-
-	/**
-	 * Answer a new filter group.
-	 * 
-	 * @param exclude if true an exclusion group is returned, otherwise an inclusion group is returned.
-	 */
-	public static FilterGroup create(boolean exclude, FilterRule[] rules){
-		if (exclude) return new FilterExcludeGroup(rules);
-		return new FilterIncludeGroup(rules);
-	}
-
-	/**
-	 * Answer true if this is a supported type of group.
-	 * @param name Type of group that is being tested.
-	 * @return
-	 */
-	public static boolean isKnownName(String name) {
-		if (ExtensionConstants.include.equals(name))return true;
-		if (ExtensionConstants.exclude.equals(name))return true;
-		return false;
-	}
-
-	
-	private FilterGroup(FilterRule[] rules){
-		_rules = rules;
-	}
-		
-	/**
-	 * The rules in the group.
-	 */
-	public final FilterRule[] getRules(){
-		FilterRule[] rules = new FilterRule[_rules.length];
-		System.arraycopy(_rules, 0, rules, 0, _rules.length);
-		return rules;
-	}
-		
-	/**
-	 * Answer the internal type of group, e.g. "include" or "exclude".
-	 */
-	public abstract String getType();
-	
-	/** Answer the type as a type that can be displayed to a user, that is it has been localized. */
-	public abstract String getDisplayableType();
-	
-	@SuppressWarnings("unchecked")
-	public Object getAdapter(Class adapter) {
-		return Platform.getAdapterManager().getAdapter(this, adapter);
-	}
-	
-	public static final class FilterIncludeGroup extends FilterGroup {
-		
-		private FilterIncludeGroup(FilterRule[] rules){
-			super(rules);
-		}
-
-		public String getType() {
-			return ExtensionConstants.include;
-		}
-		
-		public String getDisplayableType() {
-			return ValMessages.GroupInclude;
-		}
-		
-		public boolean isInclude() {
-			return true;
-		}
-		
-	}
-	
-	
-	public static final class FilterExcludeGroup extends FilterGroup {
-		
-		private FilterExcludeGroup(FilterRule[] rules){
-			super(rules);
-		}
-		public String getType() {
-			return ExtensionConstants.exclude;
-		}
-		
-		public String getDisplayableType() {
-			return ValMessages.GroupExclude;
-		}
-		
-		public boolean isExclude() {
-			return true;
-		}		
-	}
-		
-	/**
-	 * Save your settings into the serializer.
-	 * @param ser
-	 */
-	public void save(Serializer ser){
-		ser.put(SerializationVersion);
-		ser.put(getType());
-		ser.put(_rules.length);
-		for (FilterRule rule : _rules)rule.save(ser);		
-	}
-
-	/**
-	 * Answer whether or not we should validate the resource based on the filters in this group.
-	 * 
-	 * @param project the project that is being validated.
-	 * @param resource the resource that is being validated. This can be null, in which case
-	 * only the project level checks are performed.
-	 */
-	public boolean shouldValidate(IProject project, IResource resource, ContentTypeWrapper contentTypeWrapper) {
-		boolean exclude = isExclude();
-		boolean include = isInclude();
-		int count = 0;
-		for (FilterRule rule : _rules){
-			if (resource != null){
-				Boolean match = rule.matchesResource(resource, contentTypeWrapper);
-				if (match != null)count++;
-				if (exclude && match != null && match)return false;
-				if (include && match != null && match)return true;
-			}
-			
-			Boolean match = rule.matchesProject(project);
-			if (match != null)count++;
-			if (exclude && match != null && match)return false;
-			if (include && match != null && match)return true;
-		}
-		if (exclude)return true;
-		if (count == 0)return true;
-		return false;
-	}
-
-	/** 
-	 * Answer true if this is an inclusion filter, that is at least one of the rules must
-	 * match in order to validate the resource.
-	 */
-	public boolean isInclude() {
-		return false;
-	}
-
-	/**
-	 * Answer true if this is an exclusion filter, that is if any of the rules match the 
-	 * resource is not validated.
-	 */
-	public boolean isExclude() {
-		return false;
-	}
-	
-	public int hashCodeForConfig() {
-		int h = 0;
-		if (isExclude())h += 13;
-		for (FilterRule fr : _rules)h += fr.hashCodeForConfig();
-		return h;
-	}
-
-	/**
-	 * Create a new group by adding a rule to an existing group.
-	 * @param baseGroup The group that holds the existing rules.
-	 * @param rule The new rule that is being added
-	 * @return
-	 */
-	public static FilterGroup addRule(FilterGroup baseGroup, FilterRule rule) {
-		List<FilterRule> list = new LinkedList<FilterRule>();
-		for (FilterRule r : baseGroup._rules)list.add(r);
-		list.add(rule);
-		
-		FilterRule[] rules = new FilterRule[list.size()];
-		list.toArray(rules);
-		return FilterGroup.create(baseGroup.isExclude(), rules);
-	}
-
-	/**
-	 * Create a new group by removing a rule from an existing group.
-	 * @param baseGroup The group that holds the existing rules.
-	 * @param rule The rule that is being removed
-	 * @return
-	 */
-	public static FilterGroup removeRule(FilterGroup baseGroup,	FilterRule rule) {
-		List<FilterRule> list = new LinkedList<FilterRule>();
-		for (FilterRule r : baseGroup._rules){
-			if (!r.equals(rule))list.add(r);
-		}
-		
-		FilterRule[] rules = new FilterRule[list.size()];
-		list.toArray(rules);
-		return FilterGroup.create(baseGroup.isExclude(), rules);
-	}	
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/FilterRule.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/FilterRule.java
deleted file mode 100644
index 04cf0c2..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/FilterRule.java
+++ /dev/null
@@ -1,536 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.model;
-
-import java.util.regex.Pattern;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.common.project.facet.core.FacetedProjectFramework;
-import org.eclipse.wst.validation.internal.ContentTypeWrapper;
-import org.eclipse.wst.validation.internal.Deserializer;
-import org.eclipse.wst.validation.internal.ExtensionConstants;
-import org.eclipse.wst.validation.internal.Serializer;
-import org.eclipse.wst.validation.internal.Tracing;
-import org.eclipse.wst.validation.internal.ValMessages;
-import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
-
-/**
- * A rule that is used to filter out (or in) validation on a resource.
- * The concrete classes are all immutable.
- * @author karasiuk
- *
- */
-public abstract class FilterRule implements IAdaptable {
-	
-	protected final String _pattern;
-	
-	protected static final String PortableFileDelim = "/"; //$NON-NLS-1$
-	
-	/**
-	 * Create a rule based on a configuration element.
-	 * 
-	 * @param rule
-	 *            The configuration element, see the extension point for details.
-	 * @return null if there is a problem.
-	 */
-	public static FilterRule create(IConfigurationElement rule){
-		String name = rule.getName();
-		if (ExtensionConstants.Rule.fileext.equals(name))return new FileExt(rule);
-		if (ExtensionConstants.Rule.projectNature.equals(name))return new ProjectNature(rule);
-		if (ExtensionConstants.Rule.file.equals(name))return File.createFile(rule);
-		if (ExtensionConstants.Rule.contentType.equals(name))return ContentType.createContentType(rule);
-		if (ExtensionConstants.Rule.facet.equals(name))return new Facet(rule);
-		if (ExtensionConstants.Rule.pattern.equals(name))return FilePattern.createFilePattern(rule);
-		return null;
-	}
-	
-	static FilterRule create(Deserializer des) {
-		String type = des.getString();
-		if (ExtensionConstants.Rule.fileext.equals(type)){
-			String pattern = des.getString();
-			boolean caseSensitive = des.getBoolean();
-			return new FileExt(pattern, caseSensitive);
-		}
-		
-		if (ExtensionConstants.Rule.projectNature.equals(type)){
-			String pattern = des.getString();
-			return new ProjectNature(pattern);
-		}
-		
-		if (ExtensionConstants.Rule.file.equals(type)){
-			String pattern = des.getString();
-			boolean caseSensitive = des.getBoolean();
-			int fileType = des.getInt();
-			return new File(pattern, caseSensitive, fileType);
-		}
-		
-		if (ExtensionConstants.Rule.contentType.equals(type)){
-			String pattern = des.getString();
-			boolean exactMatch = des.getBoolean();
-			return new ContentType(pattern, exactMatch);
-		}
-		
-		if (ExtensionConstants.Rule.facet.equals(type)){
-			String pattern = des.getString();
-			return new Facet(pattern, null);
-		}
-		
-		if (ExtensionConstants.Rule.pattern.equals(type)){
-			String pattern = des.getString();
-			boolean caseSensitive = des.getBoolean();
-			return new FilePattern(pattern, caseSensitive);
-		}
-		return null;
-	}
-
-	
-	public static FilterRule createFile(String pattern, boolean caseSensitive, int type){
-		return new File(pattern, caseSensitive, type);
-	}
-	
-	public static FilterRule createFileExt(String pattern, boolean caseSensitive){
-		FileExt ext = new FileExt(pattern, caseSensitive);
-		return ext;
-	}
-	
-	public static FilterRule createFacet(String facetId){
-		return new Facet(facetId, null);
-	}
-	
-	public static FilterRule createProject(String projectNature){
-		return new ProjectNature(projectNature);
-	}
-	
-	public static FilterRule createContentType(String contentType, boolean exactMatch){
-		return new ContentType(contentType, exactMatch);
-	}
-		
-	protected FilterRule(String pattern){
-		_pattern = pattern;
-	}
-
-	/** 
-	 * Answer true if the rule matches the resource, false if it doesn't, and
-	 * null if the rule does not apply to resources.
-	 * 
-	 * 	@param resource the resource that is being validated.
-	 */
-	public Boolean matchesResource(IResource resource, ContentTypeWrapper contentTypeWrapper){
-		return null;
-	}
-
-	/** 
-	 * Answer true if the rule matches the project, false if it doesn't, and null if the
-	 * rule does not apply.
-	 * 
-	 * 	@param project the project that is being validated.
-	 */
-	public Boolean matchesProject(IProject project){
-		return null;
-	}
-		
-	public String toString() {
-		return getDisplayableType() + ": " + _pattern; //$NON-NLS-1$
-	}
-	
-	/** Answer a name of the rule, that can be displayed to a user. */
-	public String getName(){
-		return toString();
-	}
-	
-	public String getPattern(){
-		return _pattern;
-	}
-	
-	/** Answer the type of rule. */
-	public abstract String getType();
-	
-	/** Answer a type that can be displayed to an end user. */
-	public abstract String getDisplayableType();
-	
-	public static boolean asBoolean(String value, boolean aDefault){
-		if (value == null)return aDefault;
-		if (value.equals(ExtensionConstants.True))return true;
-		if (value.equals(ExtensionConstants.False))return false;
-		return aDefault;
-	}
-	
-	@SuppressWarnings("unchecked")
-	public Object getAdapter(Class adapter) {
-		return Platform.getAdapterManager().getAdapter(this, adapter);
-	}
-	
-	public static abstract class FilterRuleCaseSensitive extends FilterRule {
-				
-		public FilterRuleCaseSensitive(String pattern, boolean caseSensitive) {
-			super(pattern);
-			_caseSensitive = caseSensitive;
-		}
-		
-		private final boolean _caseSensitive;
-				
-		@Override
-		public int hashCodeForConfig() {
-			int h =  super.hashCodeForConfig();
-			if (_caseSensitive)h += 401;
-			return h;
-		}
-				
-		@Override
-		public void save(Serializer ser) {
-			super.save(ser);
-			ser.put(_caseSensitive);
-		}
-						
-		public boolean isCaseSensitive() {
-			return _caseSensitive;
-		}
-				
-	}
-	
-	public static final class ProjectNature extends FilterRule {
-		
-		private ProjectNature(IConfigurationElement rule) {
-			super(rule.getAttribute(ExtensionConstants.RuleAttrib.id));
-			
-		}
-		
-		public ProjectNature(String projectNature) {
-			super(projectNature);
-		}
-
-		public String getDisplayableType() {
-			return ValMessages.RuleProjectNature;
-		}
-		
-		public String getType() {
-			return ExtensionConstants.Rule.projectNature;
-		}
-		
-		public Boolean matchesProject(IProject project) {
-			try {
-				return project.hasNature(_pattern);
-			}
-			catch (CoreException e){
-			}
-			return Boolean.FALSE;
-		}
-		
-	}
-	
-	public static final class FileExt extends FilterRuleCaseSensitive {
-		
-		private FileExt(IConfigurationElement rule){
-			super(rule.getAttribute(ExtensionConstants.RuleAttrib.ext), 
-				asBoolean(rule.getAttribute(ExtensionConstants.RuleAttrib.caseSensitive), false));
-		}
-				
-		private FileExt(String pattern, boolean caseSensitive) {
-			super(pattern, caseSensitive);
-		}
-
-		public String getType() {
-			return ExtensionConstants.Rule.fileext;
-		}
-		
-		public String getDisplayableType() {
-			return ValMessages.RuleFileExt;
-		}
-		
-		public String getName() {
-			return toString();
-		}
-		
-		public String toString() {
-			if (isCaseSensitive())return NLS.bind(ValMessages.FileExtWithCase, getDisplayableType(), _pattern);
-			return NLS.bind(ValMessages.FileExtWithoutCase, getDisplayableType(), _pattern);
-		}
-
-		public Boolean matchesResource(IResource resource, ContentTypeWrapper contentTypeWrapper) {
-			String ext = resource.getFileExtension();
-			if (isCaseSensitive())return _pattern.equals(ext);
-			return _pattern.equalsIgnoreCase(ext);
-		}
-	}
-	
-	/**
-	 * A rule that is used to filter based on file or folder names.
-	 * @author karasiuk
-	 *
-	 */
-	public static final class File extends FilterRuleCaseSensitive {
-		
-		private final String	_patternAsLowercase;
-		
-		/** One of the FileTypeXX constants. */
-		private final int		_type;
-		
-		public static final int FileTypeFile = 1;
-		public static final int FileTypeFolder = 2;
-		public static final int FileTypeFull = 3;
-		
-		private static File createFile(IConfigurationElement rule){
-			String pattern = rule.getAttribute(ExtensionConstants.RuleAttrib.name);
-			if (pattern == null)throw new IllegalStateException(ValMessages.ErrPatternAttrib);
-			String type = rule.getAttribute(ExtensionConstants.RuleAttrib.fileType);
-			if (type == null)throw new IllegalStateException(ValMessages.ErrTypeReq);
-			
-			int myType = -1;
-			if (ExtensionConstants.FileType.file.equals(type))myType = FileTypeFile;
-			else if (ExtensionConstants.FileType.folder.equals(type)){
-				myType = FileTypeFolder;
-				if (!pattern.endsWith(PortableFileDelim))pattern += PortableFileDelim;
-			}
-			else if (ExtensionConstants.FileType.full.equals(type))myType = FileTypeFull;
-			else {
-				Object[] parms = {type, ExtensionConstants.FileType.file, ExtensionConstants.FileType.folder, 
-					ExtensionConstants.FileType.full};
-				throw new IllegalStateException(NLS.bind(ValMessages.ErrType, parms));
-			}
-			boolean caseSensitive = asBoolean(rule.getAttribute(ExtensionConstants.RuleAttrib.caseSensitive), false);
-			return new File(pattern, caseSensitive, myType);
-		}
-		
-		private  File(String pattern, boolean caseSensitive, int type){			
-			super(pattern, caseSensitive);
-			_type = type;
-			_patternAsLowercase = pattern == null ? null : pattern.toLowerCase();
-		}
-				
-		public String getType() {
-			return ExtensionConstants.Rule.file;
-		}
-		
-		public String getDisplayableType() {
-			if (_type == FileTypeFolder)return ValMessages.RuleFolder;
-			if (_type == FileTypeFull)return ValMessages.RuleFull;
-			return ValMessages.RuleFile;
-		}
-		
-		public void setData(IConfigurationElement rule) {
-		}
-		
-		public String toString() {
-			if (isCaseSensitive())return NLS.bind(ValMessages.FileExtWithCase, getDisplayableType(), _pattern);
-			return NLS.bind(ValMessages.FileExtWithoutCase, getDisplayableType(), _pattern);
-		}
-		
-		public Boolean matchesResource(IResource resource, ContentTypeWrapper contentTypeWrapper) {
-			String name = null;
-			switch (_type){
-			case FileTypeFile:
-				name = resource.getName();
-				break;
-				
-			case FileTypeFolder:
-				name = resource.getProjectRelativePath().removeLastSegments(1).toString() + PortableFileDelim;
-				break;
-				
-			case FileTypeFull:
-				name = resource.getProjectRelativePath().toPortableString();
-				break;
-			}
-			
-			if (name == null)return Boolean.FALSE;
-			if (isCaseSensitive())return name.startsWith(_pattern);
-			return name.toLowerCase().startsWith(_patternAsLowercase);
-		}
-								
-		@Override
-		public void save(Serializer ser) {
-			super.save(ser);
-			ser.put(_type);
-		}
-		
-	}
-	
-	public static final class Facet extends FilterRule {
-		
-		private final String _versionExpression;
-		
-		private Facet(IConfigurationElement rule){
-			super(rule.getAttribute(ExtensionConstants.RuleAttrib.id));
-			_versionExpression = rule.getAttribute(ExtensionConstants.RuleAttrib.version);
-			
-		}
-				
-		public Facet(String facetId, String versionExpression) {
-			super(facetId);
-			_versionExpression = versionExpression;
-		}
-
-		public String getType() {
-			return ExtensionConstants.Rule.facet;
-		}
-		
-		public String getDisplayableType() {
-			return ValMessages.RuleFacet;
-		}
-		
-		@Override
-		public Boolean matchesProject(IProject project) {
-			try {
-				if (_versionExpression == null)return FacetedProjectFramework.hasProjectFacet(project, _pattern);
-				return FacetedProjectFramework.hasProjectFacet(project, _pattern, _versionExpression);
-			}
-			catch (CoreException e){
-				if (Tracing.isLogging())ValidationPlugin.getPlugin().handleException(e);
-			}
-			return Boolean.FALSE;
-		}
-		
-		@Override
-		public String toString() {
-			StringBuffer b = new StringBuffer(200);
-			b.append(getDisplayableType());
-			b.append(": "); //$NON-NLS-1$
-			b.append(_pattern);
-			
-			if (_versionExpression !=  null){
-				b.append(" ("); //$NON-NLS-1$
-				b.append(_versionExpression);
-				b.append(")"); //$NON-NLS-1$
-			}
-			return b.toString();
-		}
-		
-	}
-	
-	public static final class ContentType extends FilterRule {
-		
-		private final IContentType 	_type;
-		private final boolean		_exactMatch;
-		
-		private ContentType(String pattern, boolean exactMatch){
-			super(pattern);
-			_type = Platform.getContentTypeManager().getContentType(pattern);
-			_exactMatch = exactMatch;
-		}
-		
-		private static ContentType createContentType(IConfigurationElement rule){
-			String pattern = rule.getAttribute(ExtensionConstants.RuleAttrib.id);
-			boolean exactMatch = true;
-			String exact = rule.getAttribute(ExtensionConstants.RuleAttrib.exactMatch);
-			if (ExtensionConstants.False.equals(exact)) exactMatch = false;
-			
-			return new ContentType(pattern, exactMatch);
-		}
-				
-		public String getType() {
-			return ExtensionConstants.Rule.contentType;
-		}
-		
-		@Override
-		public int hashCodeForConfig() {
-			int h =  super.hashCodeForConfig();
-			if (_exactMatch)h += 301;
-			return h;
-		}
-		
-		public String getDisplayableType() {
-			return ValMessages.RuleContentType;
-		}
-								
-		@Override
-		public void save(Serializer ser) {
-			super.save(ser);
-			ser.put(_exactMatch);
-		}
-
-		public void setData(IConfigurationElement rule) {
-		}
-				
-		public Boolean matchesResource(IResource resource, ContentTypeWrapper contentTypeWrapper) {
-			if (_type == null)return Boolean.FALSE;
-			if (resource instanceof IFile) {
-				IFile file = (IFile) resource;
-				IContentType ct = contentTypeWrapper.getContentType(file);
-				if (ct == null)return Boolean.FALSE;
-				boolean match = false;
-				if (_exactMatch)match = ct.getId().equals(_type.getId());
-				else match = ct.isKindOf(_type);
-				
-				if (match && Tracing.isTraceMatches())
-					Tracing.log("FilterRule-01: ", toString() + " has matched " + resource); //$NON-NLS-1$ //$NON-NLS-2$
-				return match;
-			}
-			return Boolean.FALSE;
-		}
-		
-		@Override
-		public String toString() {
-			if (_exactMatch)return NLS.bind(ValMessages.ContentTypeExact, getDisplayableType(), _pattern);
-			return NLS.bind(ValMessages.ContentTypeNotExact, getDisplayableType(), _pattern);
-		}
-		
-	}
-	
-	public static final class FilePattern extends FilterRuleCaseSensitive {
-		
-		private final Pattern _compiledPattern;
-		
-		private static FilePattern createFilePattern(IConfigurationElement rule){
-			String pattern = rule.getAttribute(ExtensionConstants.RuleAttrib.regex);
-			boolean caseSensitive = asBoolean(rule.getAttribute(ExtensionConstants.RuleAttrib.caseSensitive), false);
-			return new FilePattern(pattern, caseSensitive);
-		}
-		
-		private FilePattern(String pattern, boolean caseSensitive){
-			super(pattern, caseSensitive);
-			int flags = 0;
-			if (caseSensitive)flags = Pattern.CASE_INSENSITIVE;
-			Pattern compiledPattern = Pattern.compile(pattern, flags);				
-			_compiledPattern = compiledPattern;
-		}
-
-		@Override
-		public String getDisplayableType() {
-			// FIXME this should be replaced as soon as we are allowed to change the UI.
-			return ValMessages.RuleFile;
-		}
-
-		@Override
-		public String getType() {
-			return ExtensionConstants.Rule.pattern;
-		}
-		
-		@Override
-		public Boolean matchesResource(IResource resource, ContentTypeWrapper wrapper) {
-			String name = PortableFileDelim + resource.getProjectRelativePath().toPortableString();
-			if (name == null)return Boolean.FALSE;
-			return _compiledPattern.matcher(name).matches();
-		}		
-	}
-	
-	/**
-	 * Save your settings into the serializer.
-	 * @param ser
-	 */
-	public void save(Serializer ser) {
-		ser.put(getType());
-		ser.put(getPattern());		
-	}
-
-	public int hashCodeForConfig() {
-		int h = getType().hashCode();
-		if (_pattern != null)h += _pattern.hashCode();
-		return h;
-	}
-	
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/GlobalPreferences.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/GlobalPreferences.java
deleted file mode 100644
index 2989c2c..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/GlobalPreferences.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.model;
-
-/**
- * This class represents the global Preferences as set on the Validation Preferences page. It doesn't
- * hold any of the individual validator settings, just the global check boxes. It is an immutable object.
- */
-public final class GlobalPreferences {
-	
-	/** false - Default setting for the should all the validation be suspended setting. */ 
-	public static final boolean DefaultSuspend = false;
-	
-	/** false - Default setting for the auto save setting. */ 
-	public static final boolean DefaultAutoSave = false;
-	
-	/** false - Default setting for the confirm dialog setting. */ 
-	public static final boolean DefaultConfirm = true;
-	
-	/** false - Default setting for letting projects override the global settings. */
-	public static final boolean DefaultOverride = true;
-	
-	/** 2 - The version of the framework meta data, if an explicit version isn't found. */
-	public static final int DefaultFrameworkVersion = 2;
-	
-	/** Bit masks for what has changed. */
-	public final static int ConfirmDialogMask = 1;
-	public final static int DisableAllValidationMask = 2;
-	public final static int OverrideMask = 4;
-	public final static int SaveAutomaticallyMask = 8;
-	public final static int StateTimeStampMask = 16;
-	public final static int VersionMask = 32;
-	
-	/**
-	 * The changes that could affect what gets validated.
-	 */
-	public final static int BuildChangeMask = DisableAllValidationMask | OverrideMask;
-	
-
-	private final boolean _confirmDialog;
-	private final boolean _disableAllValidation;
-	private final boolean _override;
-	private final boolean _saveAutomatically;
-	
-	/** The plug-in state time stamp. */
-	private final long	_stateTimeStamp;
-	
-	/** The incoming version of the framework. This is used to determine if a migration is needed.*/
-	private final int		_version;
-			
-	/**
-	 * The only valid way to get the global preferences is through the ValManager.
-	 * 
-	 * @see org.eclipse.wst.validation.internal.ValManager#getGlobalPreferences()
-	 */
-	public GlobalPreferences(GlobalPreferencesValues gp) {
-		_confirmDialog = gp.confirmDialog;
-		_disableAllValidation = gp.disableAllValidation;
-		_override = gp.override;
-		_saveAutomatically = gp.saveAutomatically;
-		_stateTimeStamp = gp.stateTimeStamp;
-		_version = gp.version;
-	}
-	
-	/**
-	 * Answer a copy of the values.
-	 * @return
-	 */
-	public GlobalPreferencesValues asValues(){
-		GlobalPreferencesValues gp = new GlobalPreferencesValues();
-		gp.confirmDialog = _confirmDialog;
-		gp.disableAllValidation = _disableAllValidation;
-		gp.override = _override;
-		gp.saveAutomatically = _saveAutomatically;
-		gp.stateTimeStamp = _stateTimeStamp;
-		gp.version = _version;
-		return gp;
-	}
-
-	public boolean getSaveAutomatically() {
-		return _saveAutomatically;
-	}
-
-
-	/**
-	 * Answer if all validation has been disabled.
-	 */
-	public boolean getDisableAllValidation() {
-		return _disableAllValidation;
-	}
-
-	public boolean getConfirmDialog() {
-		return _confirmDialog;
-	}
-
-	public long getStateTimeStamp() {
-		return _stateTimeStamp;
-	}
-
-	/** Answer whether or not projects are allowed to override the global preferences. */
-	public boolean getOverride() {
-		return _override;
-	}
-
-	public int getVersion() {
-		return _version;
-	}
-
-	/**
-	 * Compare yourself to the other global preferences and answer a bitmask with the differences.
-	 * @param gp
-	 * @return bit mask of the changes. See the xxxMask constants for the values of the bits. A zero means that they are the same.
-	 */
-	public int compare(GlobalPreferences gp) {
-		int changes = 0;
-		if (_confirmDialog != gp.getConfirmDialog())changes |= ConfirmDialogMask;
-		if (_disableAllValidation != gp.getDisableAllValidation())changes |= DisableAllValidationMask;
-		if (_override != gp.getOverride())changes |= OverrideMask;
-		if (_saveAutomatically != gp.getSaveAutomatically())changes |= SaveAutomaticallyMask;
-		if (_stateTimeStamp != gp.getStateTimeStamp())changes |= StateTimeStampMask;
-		if (_version != gp.getVersion())changes |= VersionMask;
-		return changes;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/GlobalPreferencesValues.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/GlobalPreferencesValues.java
deleted file mode 100644
index cdf8345..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/GlobalPreferencesValues.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.wst.validation.internal.model;
-
-/**
- * A mutable object that is used to initialize a GlobalPreference.
- * @author karasiuk
- *
- */
-public class GlobalPreferencesValues {
-	public boolean disableAllValidation = GlobalPreferences.DefaultSuspend;
-	public boolean saveAutomatically = GlobalPreferences.DefaultAutoSave;
-	public boolean confirmDialog = GlobalPreferences.DefaultConfirm;
-	public boolean override = GlobalPreferences.DefaultOverride;
-	
-	/** The plug-in state time stamp. */
-	public long	stateTimeStamp;
-	
-	/** The incoming version of the framework. This is used to determine if a migration is needed.*/
-	public int		version;
-	
-	public GlobalPreferencesValues(){
-		
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/IValidatorVisitor.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/IValidatorVisitor.java
deleted file mode 100644
index 8c74736..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/IValidatorVisitor.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.model;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.validation.Validator;
-import org.eclipse.wst.validation.internal.ValOperation;
-import org.eclipse.wst.validation.internal.ValType;
-
-/**
- * This interface is implemented by objects that visit enabled validators.
- * <p> 
- * Usage:
- * <pre>
- * class Visitor implements IValidatorVisitor {
- *    public void visit(Validator validator, IProgressMonitor monitor) {
- *       // your code here
- *    }
- * }
- * ValidatorManager vm = ValidatorManager.getDefault();
- * vm.accept(new Visitor(), ...);
- * </pre>
- * </p> 
- * <p>
- * Clients may implement this interface.
- * </p>
- */
-public interface IValidatorVisitor {
-	
-	/**
-	 * Visits the given validator.
-	 * @param validator
-	 */
-	void visit(Validator validator, IProject project, ValType valType, 
-		ValOperation operation, IProgressMonitor monitor);
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/ProjectPreferences.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/ProjectPreferences.java
deleted file mode 100644
index dd26add..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/ProjectPreferences.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.model;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.validation.Validator;
-
-/**
- * Validation preferences for a particular project.
- * @author karasiuk
- *
- */
-public final class ProjectPreferences {
-	/*
-	 * Before this object can be considered immutable, the mutable validators need to be addressed.
-	 */
-	/** false - Default setting for the "should all the validation be suspended" setting. */ 
-	public static final boolean DefaultSuspend = false;
-	
-	/** false - Default setting for letting projects override the global settings. */
-	public static final boolean DefaultOverride = false;
-	
-	private final IProject	_project;
-
-	private final boolean 	_override;
-	private final boolean	_suspend;
-	
-	private final Validator[]	_validators;
-	
-	public ProjectPreferences(IProject project){
-		_project = project;
-		_override = DefaultOverride;
-		_suspend  = DefaultSuspend;
-		_validators = new Validator[0];
-	}
-	
-	public ProjectPreferences(IProject project, boolean override, boolean suspend, Validator[] validators){
-		_project = project;
-		_override = override;
-		_suspend = suspend;
-		_validators = validators;
-	}
-	
-	public boolean getOverride() {
-		return _override;
-	}
-	public boolean getSuspend() {
-		return _suspend;
-	}
-	
-	/**
-	 * Answer the validators that have been registered for this project.
-	 * @return an empty array if there are no validators.
-	 */
-	public Validator[] getValidators() {
-		return _validators;
-	}
-	
-	public IProject getProject() {
-		return _project;
-	}
-
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/ValidatorHelper.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/ValidatorHelper.java
deleted file mode 100644
index 288f226..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/model/ValidatorHelper.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.validation.internal.model;
-
-import org.eclipse.wst.validation.internal.ValidatorMutable;
-
-/**
- * Implement some common validator methods, that don't need to be part of the API.
- * 
- * @author karasiuk
- *
- */
-public final class ValidatorHelper {
-	
-	/**
-	 * Answer true if this validator already has an exclude filter.
-	 */
-	public static boolean hasExcludeGroup(ValidatorMutable v){
-		for (FilterGroup group : v.getGroups())if (group.isExclude())return true;
-		return false;		
-	}
-}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/package.html b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/package.html
deleted file mode 100644
index 4b88f6b..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/package.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<html>
-<body>
-<h1>Validation Framework</h1>
-<h3>Build Based Validation</h3>
-The main class for build based validation is the 
-<a href="ValBuilderJob.html">ValBuilderJob</a>. This gets triggered as part of the
-build mechanism. It reacts to resource change events, and from that determines what needs to be 
-validated.
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/package.html b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/package.html
deleted file mode 100644
index caa9b25..0000000
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/package.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<html>
-<head>
-<title>Validation Framework</title>
-</head>
-<body>
-<p>A framework for calling validators that are build based.</p>
-<p>
-There are two main types of validation, <b>build based</b> and 
-<b>as you type</b>. This framework supports build based
-validation. If auto build is turned on then the validators are called
-when the user saves their file. If auto build is not turned on then
-the validators are called when the user starts a build.</p>
-<p>This framework was added to WTP in version 3.0.</p>
-<h3>Dependency Support</h3>
-<p>Sometimes resources depend on other resources, to determine whether they are 
-valid or not. An example would be that an XML resource could depend on a DTD. If at some 
-point in the future the DTD changes, then the dependent XML resource should be 
-revalidated to ensure that it still meets the requirements of the changed DTD 
-file. In order to do this efficiently, there needs to be an association between 
-the DTD and all the resources that depend on it.<p>To be as efficient as possible, the validation framework allows 
-this dependency information to be returned as part of a
-<a href="AbstractValidator.html#validate(org.eclipse.core.resources.IResource, int, ValidationState, org.eclipse.core.runtime.IProgressMonitor)">
-validate operation</a>. Since the validator needed to figure this out anyways, 
-why not pass this information back to the framework, so that it can be saved. 
-This saves the cost of having to parse the file at some later point in time 
-(when the file is probably sitting cold on disk). The fewer times that we need 
-to open, read and/or parse the same file, will improve the performance of the 
-product.
-<p>In particular when the validate method returns, a
-<a href="ValidationResult.html">ValidationResult</a> must be returned, inside of 
-this result, all your dependencies need to be specified with the
-<a href="ValidationResult.html#setDependsOn(org.eclipse.core.resources.IResource[])">
-setDependsOn</a> method.<p>In addition to keeping the dependency information 
-up-to-date through the normal course of validation, direct access is also 
-provided to the dependency support through the
-<a href="ValidationFramework.html#getDependencyIndex()">getDependencyIndex</a> 
-method. The <a href="IDependencyIndex.html">IDependencyIndex</a> allows you to 
-directly manipulate the dependency information for a validator.
-<h3>Entry Points into the Validation Framework</h3>
-<p>Here are some of the points where the platform calls into the framework:</p>
-<ul>
-<li><b>Builder</b> - ValidationBuilder</li>
-<li><b>IFacetedProjectListener</b> - ValManager</li>
-<li><b>IJobChangeListener</b> - ValidationOperation, ValidationOperation.ValidationLauncherJob</li>
-<li><b>IProjectChangeListener</b> - ValManager</li>
-<li><b>IPropertyChangeListener</b> - ValidationConfiguration, DisabledResourceManager</li>
-<li><b>IResourceChangeListener</b> - EventManger</li>
-<li><b>IValChangedListener</b> - ValManager, DisabledValidatorManager</li>
-</ul>
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.validation/xsds/exclude.exsd b/plugins/org.eclipse.wst.validation/xsds/exclude.exsd
deleted file mode 100644
index 92d7647..0000000
--- a/plugins/org.eclipse.wst.validation/xsds/exclude.exsd
+++ /dev/null
@@ -1,281 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.validation" xmlns="http://www.w3.org/2001/XMLSchema">
-<annotation>
-      <appinfo>
-         <meta.schema plugin="org.eclipse.wst.validation" id="exclude" name="Validator Exclusion"/>
-      </appinfo>
-      <documentation>
-         A way to add additional exclusion filters to a V2 validator.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="validator" minOccurs="1" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  A short id that is unique within the plug-in, so that this set of extra exclusion filters can be identified.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  The short user friendly name for the exclusion.
-               </documentation>
-               <appinfo>
-                  <meta.attribute translatable="true"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="validator">
-      <annotation>
-         <documentation>
-            Identifies the validator that is being extended.
-         </documentation>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="exclude"/>
-         </sequence>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The fully qualifed validator id that is being extended.
-               </documentation>
-               <appinfo>
-                  <meta.attribute kind="identifier"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="exclude">
-      <annotation>
-         <documentation>
-            This contains a set of exclusion rules, used in filtering which resources get validated. If any of these rules are matched, then the validator is not called on this resource.
-         </documentation>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="rules"/>
-         </sequence>
-      </complexType>
-   </element>
-
-   <element name="fileext">
-      <annotation>
-         <documentation>
-            A file extension, for example html.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="ext" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The file extension, for example html.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="caseSensitive" type="boolean">
-            <annotation>
-               <documentation>
-                  If the file extension is case sensitive, then this needs to be set to true.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="projectNature">
-      <annotation>
-         <documentation>
-            Used to filter on project natures.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The fully qualified project nature id, for example &quot;org.eclipse.jdt.core.javanature&quot;.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="file">
-      <complexType>
-         <attribute name="name" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The file or folder name. The file name can be fully qualified, that is it starts with a leading slash (&quot;/&quot;), or it can be a relative name. Folder names are separated with the forward slash (&quot;/&quot;) character.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="caseSensitive" type="boolean">
-            <annotation>
-               <documentation>
-                  If the file name is not case senstitive, then this needs to be set to false.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="type" use="required">
-            <annotation>
-               <documentation>
-                  Type of name, there are three choices. &lt;ul&gt;&lt;li&gt;folder - specifies a project relative folder name.&lt;/li&gt;&lt;li&gt;file - a simple file name (i.e. no path information).&lt;/li&gt;&lt;li&gt;full - a fully qualified (project relative) file name.&lt;/li&gt;&lt;/ul&gt;
-               </documentation>
-            </annotation>
-            <simpleType>
-               <restriction base="string">
-                  <enumeration value="folder">
-                  </enumeration>
-                  <enumeration value="file">
-                  </enumeration>
-                  <enumeration value="full">
-                  </enumeration>
-               </restriction>
-            </simpleType>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="rules">
-      <annotation>
-         <documentation>
-            A set of rules for determining if a resource is passed to this validator or not. The rules are OR&apos;ed together.
-         </documentation>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="fileext" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="file" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="projectNature" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="facet" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="contentType" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="pattern" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-      </complexType>
-   </element>
-
-   <element name="facet">
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The facet id.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="contentType">
-      <annotation>
-         <documentation>
-            Used to filter based on content types.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The content type id.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="exactMatch" type="boolean">
-            <annotation>
-               <documentation>
-                  Set to true if the content type needs to match exactly. Set to false if sub types are considered matches as well.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-   <element name="pattern">
-      <annotation>
-         <documentation>
-            Holds a regualr expression, that matches the resource&apos;s project relative name.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="regex" type="string" use="required">
-            <annotation>
-               <documentation>
-                  Holds a Java regular expression. See the class java.util.regex.Pattern for more details. This regular expression is matched against a resource&apos;s project relative path, after that path has been converted into a portable path.
-&lt;p&gt;The path will always start with a forward slash (/) so that folder names can be more easily matched.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="caseSensitive" type="boolean">
-            <annotation>
-               <documentation>
-                  If the file name is not case senstitive, then this needs to be set to false.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="since"/>
-      </appinfo>
-      <documentation>
-         WebTools 3.0
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="examples"/>
-      </appinfo>
-      <documentation>
-         &lt;!-- A plug-in is turning off the T1A validator for projects that have the ModuleCoreNature --&gt;
- &lt;extension
-       id=&quot;exclude1&quot;
-       point=&quot;org.eclipse.wst.validation.exclude&quot;&gt;
-    &lt;validator
-          id=&quot;org.eclipse.wst.common.tests.validation.T1A&quot;&gt;
-       &lt;exclude&gt;
-          &lt;rules&gt;
-             &lt;projectNature
-                   id=&quot;org.eclipse.jst.j2ee.ModuleCoreNature&quot;&gt;
-             &lt;/projectNature&gt;
-          &lt;/rules&gt;
-       &lt;/exclude&gt;
-    &lt;/validator&gt;
- &lt;/extension&gt;
-
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="apiInfo"/>
-      </appinfo>
-      <documentation>
-         Provisional API.
-      </documentation>
-   </annotation>
-
-
-
-
-</schema>
diff --git a/plugins/org.eclipse.wst.validation/xsds/referencialFileExtSchema.exsd b/plugins/org.eclipse.wst.validation/xsds/referencialFileExtSchema.exsd
deleted file mode 100644
index fcfe873..0000000
--- a/plugins/org.eclipse.wst.validation/xsds/referencialFileExtSchema.exsd
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.validation">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.validation" id="referencialFileValidator" name="Referencial File Validator"/>
-      </appInfo>
-      <documentation>
-         This extension point is used for referential file validation. This extension point should be extended if you have files that reference other files and would like the validation on referenced files to run when the validation on the referencing file is run. The Post Validator operation that is used by this extension point expects a flat list of files to run validation on referenced files.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="referencialFileValidator"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="referencialFileValidator">
-      <complexType>
-         <sequence>
-            <element ref="run"/>
-         </sequence>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="run">
-      <complexType>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  This class must implement org.eclipse.wst.validation.internal.operations.ReferencialFileValidator. 
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which accompanies 
-this distribution, and is available at &lt;a
-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.validation/xsds/validationHelper.exsd b/plugins/org.eclipse.wst.validation/xsds/validationHelper.exsd
deleted file mode 100644
index fd854dc..0000000
--- a/plugins/org.eclipse.wst.validation/xsds/validationHelper.exsd
+++ /dev/null
@@ -1,113 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.validation">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.validation" id="validationHelper" name="Validation Helper"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="validationHelper"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="validationHelper">
-      <complexType>
-         <attribute name="helperClass" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The class must implement org.eclipse.wst.validation.internal.IProjectValidationHelper.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which accompanies 
-this distribution, and is available at &lt;a
-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.validation/xsds/validationSelectionHandler.exsd b/plugins/org.eclipse.wst.validation/xsds/validationSelectionHandler.exsd
deleted file mode 100644
index acffbfa..0000000
--- a/plugins/org.eclipse.wst.validation/xsds/validationSelectionHandler.exsd
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.validation">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.validation" id="validationSelectionHandler" name="Validation Selection Handler"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="validationSelectionHandler" minOccurs="1" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="validationSelectionHandler">
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="handlerClass" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The class must implement the IValidationSelectionHandler interface.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="selectionType" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which accompanies 
-this distribution, and is available at &lt;a
-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.validation/xsds/validator.exsd b/plugins/org.eclipse.wst.validation/xsds/validator.exsd
deleted file mode 100644
index fcb4818..0000000
--- a/plugins/org.eclipse.wst.validation/xsds/validator.exsd
+++ /dev/null
@@ -1,420 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.validation" xmlns="http://www.w3.org/2001/XMLSchema">
-<annotation>
-      <appinfo>
-         <meta.schema plugin="org.eclipse.wst.validation" id="validator-v2" name="Validator V2"/>
-      </appinfo>
-      <documentation>
-         This is used to register a validator to the validation framework (version 2). In addition to specifying the validator to invoke, it registers a set of default filter rules, to control which resources are passsed to the validator.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <annotation>
-         <appinfo>
-            <meta.element />
-         </appinfo>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="validator"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  A short id that is unique within the plug-in, so that this validator can be identified.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The short user friendly name of the validator.
-               </documentation>
-               <appinfo>
-                  <meta.attribute translatable="true"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="validator">
-      <annotation>
-         <documentation>
-            Defines a validator to the validation framework.
-         </documentation>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="include" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="exclude" minOccurs="0" maxOccurs="1"/>
-            <element ref="messageCategory" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="group" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The class that implements the validator.
-               </documentation>
-               <appinfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.validation.AbstractValidator"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-         <attribute name="build" type="boolean">
-            <annotation>
-               <documentation>
-                  Is this validator enabled by default for build based validations? The default is true.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="manual" type="boolean">
-            <annotation>
-               <documentation>
-                  Is this validator enabled by default for manual based validations? The default is true.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="version" type="string">
-            <annotation>
-               <documentation>
-                  The version of the definition. It is a simple integer. If not specified the version is assumed to be 1.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="sourceid" type="string">
-            <annotation>
-               <documentation>
-                  If this validator also serves as an as-you-type validator (also know as an ISourceValidator) then it&apos;s source id is specified here, so that the two validators can be associated with one another.
-By source id, we mean the id that is used in the org.eclipse.wst.sse.ui.sourceValidation extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="markerId" type="string">
-            <annotation>
-               <documentation>
-                  If your validator wishes to use it&apos;s own marker, it can do so by supplying that marker id here.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="include">
-      <annotation>
-         <documentation>
-            This contains a set of inclusion rules, which are used in filtering which resources get validated. At least one of these rules must be satisfied in order for the validator to be called on the particular resource.
-         </documentation>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="rules"/>
-         </sequence>
-      </complexType>
-   </element>
-
-   <element name="exclude">
-      <annotation>
-         <documentation>
-            This contains a set of exclusion rules, used in filtering which resources get validated. If any of these rules are matched, then the validator is not called on this resource.
-         </documentation>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="rules"/>
-         </sequence>
-      </complexType>
-   </element>
-
-   <element name="fileext">
-      <annotation>
-         <documentation>
-            A file extension, for example html.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="ext" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The file extension, for example html.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="caseSensitive" type="boolean">
-            <annotation>
-               <documentation>
-                  If the file extension is case sensitive, then this needs to be set to true.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="projectNature">
-      <annotation>
-         <documentation>
-            Used to filter on project natures.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The fully qualified project nature id, for example &quot;org.eclipse.jdt.core.javanature&quot;.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="file">
-      <complexType>
-         <attribute name="name" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The file or folder name. The file name can be fully qualified, that is it starts with a leading slash (&quot;/&quot;), or it can be a relative name. Folder names are separated with the forward slash (&quot;/&quot;) character.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="caseSensitive" type="boolean">
-            <annotation>
-               <documentation>
-                  If the file name is not case senstitive, then this needs to be set to false.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="type" use="required">
-            <annotation>
-               <documentation>
-                  Type of name, there are three choices. &lt;ul&gt;&lt;li&gt;folder - specifies a project relative folder name.&lt;/li&gt;&lt;li&gt;file - a simple file name (i.e. no path information).&lt;/li&gt;&lt;li&gt;full - a fully qualified (project relative) file name.&lt;/li&gt;&lt;/ul&gt;
-               </documentation>
-            </annotation>
-            <simpleType>
-               <restriction base="string">
-                  <enumeration value="folder">
-                  </enumeration>
-                  <enumeration value="file">
-                  </enumeration>
-                  <enumeration value="full">
-                  </enumeration>
-               </restriction>
-            </simpleType>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="rules">
-      <annotation>
-         <documentation>
-            A set of rules for determining if a resource is passed to this validator or not. The rules are OR&apos;ed together.
-         </documentation>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="fileext" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="file" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="projectNature" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="facet" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="contentType" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="pattern" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-      </complexType>
-   </element>
-
-   <element name="facet">
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The facet id.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="version" type="string">
-            <annotation>
-               <documentation>
-                  A version expression that can be used to futher qualify the match. If not specifed, then versions are not used as a criteria for selecting the facet. The syntax of this expression, is the same syntax that is used by the facet framework.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="group">
-      <annotation>
-         <documentation>
-            Declares that this validator belongs to this validation group.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The fully qualified ID of the validation group to which this validator belongs.
-               </documentation>
-               <appinfo>
-                  <meta.attribute kind="identifier"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="contentType">
-      <annotation>
-         <documentation>
-            Used to filter based on content types.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The content type id.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="exactMatch" type="boolean">
-            <annotation>
-               <documentation>
-                  Set to true if the content type needs to match exactly. Set to false if sub types are considered matches as well.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="messageCategory">
-      <annotation>
-         <documentation>
-            Used to group together a set of messages, where the user can change the message severity of all the messages in the group. This is similar to the support in the JDT, where for example a user can specify whether used methods should be errors, warnings or ignored.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  A simple id that is unique within the scope of this validator.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="label" type="string" use="required">
-            <annotation>
-               <documentation>
-                  A short, one line label that is displayed to the end user, that describes the message category.
-               </documentation>
-               <appinfo>
-                  <meta.attribute translatable="true"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-         <attribute name="severity">
-            <annotation>
-               <documentation>
-                  The default severity for this category.
-               </documentation>
-            </annotation>
-            <simpleType>
-               <restriction base="string">
-                  <enumeration value="error">
-                  </enumeration>
-                  <enumeration value="warning">
-                  </enumeration>
-                  <enumeration value="ignore">
-                  </enumeration>
-               </restriction>
-            </simpleType>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="pattern">
-      <annotation>
-         <documentation>
-            Holds a regualr expression, that matches the resource&apos;s project relative name.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="regex" type="string" use="required">
-            <annotation>
-               <documentation>
-                  Holds a Java regular expression. See the class java.util.regex.Pattern for more details. This regular expression is matched against a resource&apos;s project relative path, after that path has been converted into a portable path.
-&lt;p&gt;The path will always start with a forward slash (/) so that folder names can be more easily matched.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="caseSensitive" type="boolean">
-            <annotation>
-               <documentation>
-                  If the file name is not case senstitive, then this needs to be set to false.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="apiInfo"/>
-      </appinfo>
-      <documentation>
-         Provisional API.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="since"/>
-      </appinfo>
-      <documentation>
-         WebTools 3.0.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="examples"/>
-      </appinfo>
-      <documentation>
-         An example of a validator that will be called on resources that have html or htm file extensions.
-&lt;pre&gt;
-   &lt;extension
-         point=&quot;org.eclipse.wst.validation.validator&quot;
-         id=&quot;Test&quot; name=&quot;%Validator.Name&quot;&gt;
-      &lt;validator class=&quot;org.eclipse.wst.validation.test.TestValidator&quot;&gt;
-         &lt;include&gt;
-            &lt;rules&gt;
-               &lt;fileext ext=&quot;html&quot;/&gt;
-               &lt;fileext ext=&quot;htm&quot;/&gt;
-            &lt;/rules&gt;
-         &lt;/include&gt;
-      &lt;/validator&gt;
-   &lt;/extension&gt;
-&lt;/pre&gt;
-      </documentation>
-   </annotation>
-
-
-   <annotation>
-      <appinfo>
-         <meta.section type="copyright"/>
-      </appinfo>
-      <documentation>
-         Copyright (c) 2007,2008 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which accompanies 
-this distribution, and is available at &lt;a
-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.validation/xsds/validatorDelegates.exsd b/plugins/org.eclipse.wst.validation/xsds/validatorDelegates.exsd
deleted file mode 100644
index 4a5f850..0000000
--- a/plugins/org.eclipse.wst.validation/xsds/validatorDelegates.exsd
+++ /dev/null
@@ -1,134 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.validation">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.validation" id="validatorDelegates" name="Validator Delegates"/>
-      </appInfo>
-      <documentation>
-         This extension point allows validator providers to contribute alternate implementations for a delegating validator.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="delegate"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="delegate">
-      <annotation>
-         <documentation>
-            Defines a validator delegate. Delegating validators can have one or more delegates registered, only one of which can be active (selected) at once.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  Specifies the class name of the delegate validator. The class must implement IValidatorJob.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.validation.internal.provisional.core.IValidatorJob"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="target" type="string" use="required">
-            <annotation>
-               <documentation>
-                  Specifies the id of the validator extension for which this delegate is being registered.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         &lt;extension point=&quot;org.eclipse.wst.validation.validatorDelegates&quot;&gt;
-    &lt;delegate
-          class=&quot;com.acme.fast.SuperFastValidator&quot;
-          name=&quot;Super fast validator&quot;
-          target=&quot;org.acme.core.ACMEDelegatingValidator&quot;/&gt;
- &lt;/extension&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         A delegate validator will have to implement the IValidatorJob interface.
-The target validator, the one who will delegate its implementation to a delegate validator will have to extend org.eclipse.wst.validation.delegates.BaseDelegatingValidator.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2006 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which accompanies 
-this distribution, and is available at &lt;a
-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.validation/xsds/validatorExtSchema.exsd b/plugins/org.eclipse.wst.validation/xsds/validatorExtSchema.exsd
deleted file mode 100644
index 25d2602..0000000
--- a/plugins/org.eclipse.wst.validation/xsds/validatorExtSchema.exsd
+++ /dev/null
@@ -1,336 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.validation">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.validation" id="validator" name="Validator"/>

-      </appInfo>

-      <documentation>

-         This extension point give the ability to create a new validator that can validate resources in a Java Project. The validator needs to registered for a given nature of the project for it to run on that project. The user can specifiy file filters to filter out files that need to be validated. The new validator registered by the project nature on the project can be run manually or incrementally if  Auto Build is turned on, during incremental builds the changed delta of files are only validated if those files are part of the validation filters specified.

-      </documentation>

-   </annotation>

-

-   <include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="validator"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  A fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  An optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string" use="required">

-            <annotation>

-               <documentation>

-                  An optional name of the extension instance

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="validator">

-      <complexType>

-         <sequence>

-            <element ref="projectNature" minOccurs="0" maxOccurs="unbounded"/>

-            <element ref="filter" minOccurs="0" maxOccurs="unbounded"/>

-            <element ref="enablement" minOccurs="0" maxOccurs="unbounded"/>/>

-            <element ref="helper"/>

-            <element ref="dependentValidator" minOccurs="0" maxOccurs="1"/>

-            <element ref="run"/>

-            <element ref="markerId" minOccurs="0" maxOccurs="1"/>

-            <element ref="facet" minOccurs="0" maxOccurs="unbounded"/>

-            <element ref="contentTypeBinding" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="to" type="string">

-            <annotation>

-               <documentation>

-                  Optional migration tag

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="from" type="string">

-            <annotation>

-               <documentation>

-                  Optional migration tag

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="projectNature">

-      <complexType>

-         <sequence>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="include" type="boolean">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-   

-   

-   <element name="contentTypeBinding">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="contentTypeId"/>

-         </appInfo>

-         <documentation>

-                        Associates a particular content type with the current validator, and enables the validator to be run on resources of the specified content type.

-         </documentation>

-      </annotation>

-      <complexType>

-         <attribute name="contentTypeId" type="string" use="required">

-            <annotation>

-               <documentation>

-                  The content type identifier. This is an ID defined by the &apos;org.eclipse.core.runtime.contentTypes&apos; extension point.

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-   

-   

-   

-

-   <element name="filter">

-      <complexType>

-         <attribute name="objectClass" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="nameFilter" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="caseSensitive" type="boolean">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="action" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="helper">

-      <complexType>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="dependentValidator">

-      <complexType>

-         <attribute name="depValValue" type="boolean">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="run">

-      <complexType>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="incremental" type="boolean">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="enabled" type="boolean">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="fullBuild" type="boolean">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="async" type="boolean">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="markerId">

-      <annotation>

-         <documentation>

-            The markerId element is is used to get a custom problem marker for the custom validator implemented using this extension point

-

-This markerId element also needs a corresponding problemMarker extension to be defined bythis validator with the same Id as the makerIdValue for the validator to have its own marker type. Here is an example of the a problemMarker extension defined for a markerIdValue &quot;FooMarker&quot;

-

- &lt;extension

-         id=&quot;FooMarker&quot;

-         name=&quot;%EJB_VALIDATION_PROBLEMMARKER_NAME&quot;

-         point=&quot;org.eclipse.core.resources.markers&quot;&gt;

-      &lt;super

-            type=&quot;org.eclipse.wst.validation.problemmarker&quot;&gt;

-      &lt;/super&gt;

-      &lt;persistent

-            value=&quot;true&quot;&gt;

-      &lt;/persistent&gt;

-      &lt;attribute

-            name=&quot;owner&quot;&gt;

-      &lt;/attribute&gt;

-      &lt;attribute

-            name=&quot;validationSeverity&quot;&gt;

-      &lt;/attribute&gt;

-      &lt;attribute

-            name=&quot;targetObject&quot;&gt;

-      &lt;/attribute&gt;

-      &lt;attribute

-            name=&quot;groupName&quot;&gt;

-      &lt;/attribute&gt;

-      &lt;attribute

-            name=&quot;messageId&quot;&gt;

-      &lt;/attribute&gt;

-   &lt;/extension&gt;

-   

-   Without a problemMarker extension defined, the customer validator will use the base Validation Message problemMarker type.

-         </documentation>

-      </annotation>

-      <complexType>

-         <attribute name="markerIdValue" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="facet">

-      <annotation>

-         <appInfo>

-            <meta.element deprecated="true"/>

-         </appInfo>

-         <documentation>

-            This element is deprecated and enablement is the new recommended approach to filter validators based on facets.

-         </documentation>

-      </annotation>

-      <complexType>

-         <attribute name="facetId" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which accompanies 

-this distribution, and is available at &lt;a

-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.validation/xsds/validatorgroup.exsd b/plugins/org.eclipse.wst.validation/xsds/validatorgroup.exsd
deleted file mode 100644
index df05cb1..0000000
--- a/plugins/org.eclipse.wst.validation/xsds/validatorgroup.exsd
+++ /dev/null
@@ -1,161 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.validation" xmlns="http://www.w3.org/2001/XMLSchema">
-<annotation>
-      <appinfo>
-         <meta.schema plugin="org.eclipse.wst.validation" id="validatorGroup" name="Validator Group"/>
-      </appinfo>
-      <documentation>
-         Defines a grouping for validators with listeners notified of group members&apos; activites.  Useful for pre-caching common information used by multiple validators and disposing of that information when they&apos;re all done.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <annotation>
-         <appinfo>
-            <meta.element />
-         </appinfo>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="group" minOccurs="1" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="identifier">
-            <annotation>
-               <documentation>
-                  A unique identifier for this extension
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  A name for this extension
-               </documentation>
-               <appinfo>
-                  <meta.attribute translatable="true"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="listener">
-      <annotation>
-         <documentation>
-            A listener for activities in this group.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The listener&apos;s class.
-               </documentation>
-               <appinfo>
-                  <meta.attribute kind="java" basedOn=":org.eclipse.wst.validation.IValidatorGroupListener"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="group">
-      <annotation>
-         <documentation>
-            Declares a validator group.  A group may have multiple listeners.
-         </documentation>
-      </annotation>
-      <complexType>
-         <choice>
-            <element ref="listener" minOccurs="1" maxOccurs="unbounded"/>
-         </choice>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appinfo>
-                  <meta.attribute kind="identifier"/>
-               </appinfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="since"/>
-      </appinfo>
-      <documentation>
-         WebTools 3.0
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="examples"/>
-      </appinfo>
-      <documentation>
-         Define a listener that simply prints that it has been called.
-&lt;pre&gt;
-&lt;extension point=&quot;org.eclipse.wst.validation.validatorGroup&quot;&gt;
-   &lt;group id=&quot;validatorGroup&quot;&gt;
-     &lt;listener class=&quot;org.eclipse.wst.validation.example.ValidatorGroupListener&quot;/&gt;
-   &lt;/group&gt;
-&lt;/extension&gt;
-
-public class org.eclipse.wst.validation.example.ValidatorGroupListener implements IValidatorGroupListener {
-
-  public ValidatorGroupListener() {
-  }
-
-  public void validationFinishing(IResource resource, IProgressMonitor monitor, ValType valType, ValOperation operation) {
-   System.out.println(&quot;Finishing:&quot; + resource.getFullPath());
-  }
-
-  public void validationStarting(IResource resource, IProgressMonitor monitor, ValType valType, ValOperation operation) {
-   System.out.println(&quot;Starting:&quot; + resource.getFullPath());
-  }
-}
- 
-&lt;extension id=&quot;id&quot; name=&quot;name&quot; point=&quot;org.eclipse.wst.validation.validatorV2&quot;&gt;
-  &lt;validator class=&quot;org.eclipse.wst.validation.example.Validator&quot;&gt;
-    &lt;group id=&quot;org.eclipse.wst.validation.example.validatorGroup&quot;/&gt;
-  &lt;/validator&gt;
-&lt;/extension&gt;
-&lt;/pre&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appinfo>
-         <meta.section type="apiinfo"/>
-      </appinfo>
-      <documentation>
-         Provisional API.
-      </documentation>
-   </annotation>
-
-
-   <annotation>
-      <appinfo>
-         <meta.section type="copyright"/>
-      </appinfo>
-      <documentation>
-         Copyright (c) 2008 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which accompanies 
-this distribution, and is available at &lt;a
-href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>